Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
tegra30_ahub.c File Reference
#include <linux/clk.h>
#include <linux/device.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/of_platform.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/regmap.h>
#include <linux/slab.h>
#include <mach/clk.h>
#include <mach/dma.h>
#include <sound/soc.h>
#include "tegra30_ahub.h"

Go to the source code of this file.

Macros

#define DRV_NAME   "tegra30-ahub"
 
#define LAST_REG(name)
 
#define REG_IN_ARRAY(reg, name)
 

Functions

int tegra30_ahub_allocate_rx_fifo (enum tegra30_ahub_rxcif *rxcif, unsigned long *fiforeg, unsigned long *reqsel)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_allocate_rx_fifo)
 
int tegra30_ahub_enable_rx_fifo (enum tegra30_ahub_rxcif rxcif)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_enable_rx_fifo)
 
int tegra30_ahub_disable_rx_fifo (enum tegra30_ahub_rxcif rxcif)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_disable_rx_fifo)
 
int tegra30_ahub_free_rx_fifo (enum tegra30_ahub_rxcif rxcif)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_free_rx_fifo)
 
int tegra30_ahub_allocate_tx_fifo (enum tegra30_ahub_txcif *txcif, unsigned long *fiforeg, unsigned long *reqsel)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_allocate_tx_fifo)
 
int tegra30_ahub_enable_tx_fifo (enum tegra30_ahub_txcif txcif)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_enable_tx_fifo)
 
int tegra30_ahub_disable_tx_fifo (enum tegra30_ahub_txcif txcif)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_disable_tx_fifo)
 
int tegra30_ahub_free_tx_fifo (enum tegra30_ahub_txcif txcif)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_free_tx_fifo)
 
int tegra30_ahub_set_rx_cif_source (enum tegra30_ahub_rxcif rxcif, enum tegra30_ahub_txcif txcif)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_set_rx_cif_source)
 
int tegra30_ahub_unset_rx_cif_source (enum tegra30_ahub_rxcif rxcif)
 
 EXPORT_SYMBOL_GPL (tegra30_ahub_unset_rx_cif_source)
 
 module_platform_driver (tegra30_ahub_driver)
 
 MODULE_AUTHOR ("Stephen Warren <[email protected]>")
 
 MODULE_DESCRIPTION ("Tegra30 AHUB driver")
 
 MODULE_LICENSE ("GPL v2")
 
 MODULE_ALIAS ("platform:"DRV_NAME)
 
 MODULE_DEVICE_TABLE (of, tegra30_ahub_of_match)
 

Variables

struct of_dev_auxdata
ahub_auxdata[] 
__devinitdata
 

Macro Definition Documentation

#define DRV_NAME   "tegra30-ahub"

Definition at line 33 of file tegra30_ahub.c.

#define LAST_REG (   name)
Value:
(TEGRA30_AHUB_##name + \
(TEGRA30_AHUB_##name##_STRIDE * TEGRA30_AHUB_##name##_COUNT) - 4)

Definition at line 312 of file tegra30_ahub.c.

#define REG_IN_ARRAY (   reg,
  name 
)
Value:
((reg >= TEGRA30_AHUB_##name) && \
(reg <= LAST_REG(name) && \
(!((reg - TEGRA30_AHUB_##name) % TEGRA30_AHUB_##name##_STRIDE))))

Definition at line 316 of file tegra30_ahub.c.

Function Documentation

EXPORT_SYMBOL_GPL ( tegra30_ahub_allocate_rx_fifo  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_enable_rx_fifo  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_disable_rx_fifo  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_free_rx_fifo  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_allocate_tx_fifo  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_enable_tx_fifo  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_disable_tx_fifo  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_free_tx_fifo  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_set_rx_cif_source  )
EXPORT_SYMBOL_GPL ( tegra30_ahub_unset_rx_cif_source  )
MODULE_ALIAS ( "platform:"  DRV_NAME)
MODULE_AUTHOR ( "Stephen Warren <[email protected]>"  )
MODULE_DESCRIPTION ( "Tegra30 AHUB driver )
MODULE_DEVICE_TABLE ( of  ,
tegra30_ahub_of_match   
)
MODULE_LICENSE ( "GPL v2 )
module_platform_driver ( tegra30_ahub_driver  )
int tegra30_ahub_allocate_rx_fifo ( enum tegra30_ahub_rxcif rxcif,
unsigned long fiforeg,
unsigned long reqsel 
)

Definition at line 98 of file tegra30_ahub.c.

int tegra30_ahub_allocate_tx_fifo ( enum tegra30_ahub_txcif txcif,
unsigned long fiforeg,
unsigned long reqsel 
)

Definition at line 181 of file tegra30_ahub.c.

int tegra30_ahub_disable_rx_fifo ( enum tegra30_ahub_rxcif  rxcif)

Definition at line 156 of file tegra30_ahub.c.

int tegra30_ahub_disable_tx_fifo ( enum tegra30_ahub_txcif  txcif)

Definition at line 239 of file tegra30_ahub.c.

int tegra30_ahub_enable_rx_fifo ( enum tegra30_ahub_rxcif  rxcif)

Definition at line 141 of file tegra30_ahub.c.

int tegra30_ahub_enable_tx_fifo ( enum tegra30_ahub_txcif  txcif)

Definition at line 224 of file tegra30_ahub.c.

int tegra30_ahub_free_rx_fifo ( enum tegra30_ahub_rxcif  rxcif)

Definition at line 171 of file tegra30_ahub.c.

int tegra30_ahub_free_tx_fifo ( enum tegra30_ahub_txcif  txcif)

Definition at line 254 of file tegra30_ahub.c.

int tegra30_ahub_set_rx_cif_source ( enum tegra30_ahub_rxcif  rxcif,
enum tegra30_ahub_txcif  txcif 
)

Definition at line 264 of file tegra30_ahub.c.

int tegra30_ahub_unset_rx_cif_source ( enum tegra30_ahub_rxcif  rxcif)

Definition at line 278 of file tegra30_ahub.c.

Variable Documentation

struct of_dev_auxdata ahub_auxdata [] __devinitdata
Initial value:
= {
OF_DEV_AUXDATA("nvidia,tegra30-i2s", 0x70080300, "tegra30-i2s.0", NULL),
OF_DEV_AUXDATA("nvidia,tegra30-i2s", 0x70080400, "tegra30-i2s.1", NULL),
OF_DEV_AUXDATA("nvidia,tegra30-i2s", 0x70080500, "tegra30-i2s.2", NULL),
OF_DEV_AUXDATA("nvidia,tegra30-i2s", 0x70080600, "tegra30-i2s.3", NULL),
OF_DEV_AUXDATA("nvidia,tegra30-i2s", 0x70080700, "tegra30-i2s.4", NULL),
{}
}

Definition at line 303 of file tegra30_ahub.c.