Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
d40_base Struct Reference

Data Fields

spinlock_t interrupt_lock
 
spinlock_t execmd_lock
 
struct devicedev
 
void __iomemvirtbase
 
u8 rev:4
 
struct clkclk
 
phys_addr_t phy_start
 
resource_size_t phy_size
 
int irq
 
int num_phy_chans
 
int num_log_chans
 
struct dma_device dma_both
 
struct dma_device dma_slave
 
struct dma_device dma_memcpy
 
struct d40_chanphy_chans
 
struct d40_chanlog_chans
 
struct d40_chan ** lookup_log_chans
 
struct d40_chan ** lookup_phy_chans
 
struct stedma40_platform_dataplat_data
 
struct regulatorlcpa_regulator
 
struct d40_phy_resphy_res
 
struct d40_lcla_pool lcla_pool
 
voidlcpa_base
 
dma_addr_t phy_lcpa
 
resource_size_t lcpa_size
 
struct kmem_cachedesc_slab
 
u32 reg_val_backup [BACKUP_REGS_SZ]
 
u32 reg_val_backup_v3 [BACKUP_REGS_SZ_V3]
 
u32reg_val_backup_chan
 
u16 gcc_pwr_off_mask
 
bool initialized
 

Detailed Description

struct d40_base - The big global struct, one for each probe'd instance.

: Lock used to make sure one interrupt is handle a time. : Lock for execute command usage since several channels share the same physical register. : The device structure. : The virtual base address of the DMA's register. : silicon revision detected. : Pointer to the DMA clock structure. : Physical memory start of the DMA registers. : Size of the DMA register map. : The IRQ number. : The number of physical channels. Read from HW. This is the number of available channels for this driver, not counting "Secure mode" allocated physical channels. : The number of logical channels. Calculated from num_phy_chans. : dma_device channels that can do both memcpy and slave transfers. : dma_device channels that can do only do slave transfers. : dma_device channels that can do only do memcpy transfers. : Room for all possible physical channels in system. : Room for all possible logical channels in system. : Used to map interrupt number to logical channel. Points to log_chans entries. : Used to map interrupt number to physical channel. Points to phy_chans entries. : Pointer to provided platform_data which is the driver configuration. : Pointer to hold the regulator for the esram bank for lcla. : Vector containing all physical channels. : lcla pool settings and data. : The virtual mapped address of LCPA. : The physical address of the LCPA. : The size of the LCPA area. : cache for descriptors. : Here the values of some hardware registers are stored before the DMA is powered off. They are restored when the power is back on. : Backup of registers that only exits on dma40 v3 and later. : Backup data for standard channel parameter registers. : Mask to maintain the channels that can be turned off. : true if the dma has been initialized

Definition at line 336 of file ste_dma40.c.

Field Documentation

Definition at line 342 of file ste_dma40.c.

struct kmem_cache* desc_slab

Definition at line 363 of file ste_dma40.c.

struct device* dev

Definition at line 339 of file ste_dma40.c.

struct dma_device dma_both

Definition at line 348 of file ste_dma40.c.

struct dma_device dma_memcpy

Definition at line 350 of file ste_dma40.c.

struct dma_device dma_slave

Definition at line 349 of file ste_dma40.c.

spinlock_t execmd_lock

Definition at line 338 of file ste_dma40.c.

u16 gcc_pwr_off_mask

Definition at line 367 of file ste_dma40.c.

bool initialized

Definition at line 368 of file ste_dma40.c.

spinlock_t interrupt_lock

Definition at line 337 of file ste_dma40.c.

int irq

Definition at line 345 of file ste_dma40.c.

struct d40_lcla_pool lcla_pool

Definition at line 359 of file ste_dma40.c.

void* lcpa_base

Definition at line 360 of file ste_dma40.c.

struct regulator* lcpa_regulator

Definition at line 356 of file ste_dma40.c.

resource_size_t lcpa_size

Definition at line 362 of file ste_dma40.c.

struct d40_chan* log_chans

Definition at line 352 of file ste_dma40.c.

struct d40_chan** lookup_log_chans

Definition at line 353 of file ste_dma40.c.

struct d40_chan** lookup_phy_chans

Definition at line 354 of file ste_dma40.c.

int num_log_chans

Definition at line 347 of file ste_dma40.c.

int num_phy_chans

Definition at line 346 of file ste_dma40.c.

struct d40_chan* phy_chans

Definition at line 351 of file ste_dma40.c.

dma_addr_t phy_lcpa

Definition at line 361 of file ste_dma40.c.

struct d40_phy_res* phy_res

Definition at line 358 of file ste_dma40.c.

resource_size_t phy_size

Definition at line 344 of file ste_dma40.c.

phys_addr_t phy_start

Definition at line 343 of file ste_dma40.c.

Definition at line 355 of file ste_dma40.c.

u32 reg_val_backup[BACKUP_REGS_SZ]

Definition at line 364 of file ste_dma40.c.

u32* reg_val_backup_chan

Definition at line 366 of file ste_dma40.c.

u32 reg_val_backup_v3[BACKUP_REGS_SZ_V3]

Definition at line 365 of file ste_dma40.c.

u8 rev

Definition at line 341 of file ste_dma40.c.

void __iomem* virtbase

Definition at line 340 of file ste_dma40.c.


The documentation for this struct was generated from the following file: