cregit-Linux how code gets into the kernel

Release 4.11 drivers/net/wireless/broadcom/b43/bus.h

#ifndef B43_BUS_H_

#define B43_BUS_H_


enum b43_bus_type {
#ifdef CONFIG_B43_BCMA
	
B43_BUS_BCMA,
#endif
#ifdef CONFIG_B43_SSB
	
B43_BUS_SSB,
#endif
};


struct b43_bus_dev {
	
enum b43_bus_type bus_type;
	union {
		
struct bcma_device *bdev;
		
struct ssb_device *sdev;
	};

	
int (*bus_may_powerdown)(struct b43_bus_dev *dev);
	
int (*bus_powerup)(struct b43_bus_dev *dev, bool dynamic_pctl);
	
int (*device_is_enabled)(struct b43_bus_dev *dev);
	
void (*device_enable)(struct b43_bus_dev *dev,
			      u32 core_specific_flags);
	
void (*device_disable)(struct b43_bus_dev *dev,
			       u32 core_specific_flags);

	
u16 (*read16)(struct b43_bus_dev *dev, u16 offset);
	
u32 (*read32)(struct b43_bus_dev *dev, u16 offset);
	
void (*write16)(struct b43_bus_dev *dev, u16 offset, u16 value);
	
void (*write32)(struct b43_bus_dev *dev, u16 offset, u32 value);
	
void (*block_read)(struct b43_bus_dev *dev, void *buffer,
			   size_t count, u16 offset, u8 reg_width);
	
void (*block_write)(struct b43_bus_dev *dev, const void *buffer,
			    size_t count, u16 offset, u8 reg_width);
	
bool flush_writes;

	
struct device *dev;
	
struct device *dma_dev;
	
unsigned int irq;

	
u16 board_vendor;
	
u16 board_type;
	
u16 board_rev;

	
u16 chip_id;
	
u8 chip_rev;
	
u8 chip_pkg;

	
struct ssb_sprom *bus_sprom;

	
u16 core_id;
	
u8 core_rev;
};


static inline bool b43_bus_host_is_pcmcia(struct b43_bus_dev *dev) { #ifdef CONFIG_B43_SSB return (dev->bus_type == B43_BUS_SSB && dev->sdev->bus->bustype == SSB_BUSTYPE_PCMCIA); #else return false; #endif }

Contributors

PersonTokensPropCommitsCommitProp
Rafał Miłecki41100.00%2100.00%
Total41100.00%2100.00%

;
static inline bool b43_bus_host_is_pci(struct b43_bus_dev *dev) { #ifdef CONFIG_B43_BCMA if (dev->bus_type == B43_BUS_BCMA) return (dev->bdev->bus->hosttype == BCMA_HOSTTYPE_PCI); #endif #ifdef CONFIG_B43_SSB if (dev->bus_type == B43_BUS_SSB) return (dev->sdev->bus->bustype == SSB_BUSTYPE_PCI); #endif return false; }

Contributors

PersonTokensPropCommitsCommitProp
Rafał Miłecki67100.00%1100.00%
Total67100.00%1100.00%


static inline bool b43_bus_host_is_sdio(struct b43_bus_dev *dev) { #ifdef CONFIG_B43_SSB return (dev->bus_type == B43_BUS_SSB && dev->sdev->bus->bustype == SSB_BUSTYPE_SDIO); #else return false; #endif }

Contributors

PersonTokensPropCommitsCommitProp
Rafał Miłecki41100.00%2100.00%
Total41100.00%2100.00%

struct b43_bus_dev *b43_bus_dev_bcma_init(struct bcma_device *core); struct b43_bus_dev *b43_bus_dev_ssb_init(struct ssb_device *sdev); void *b43_bus_get_wldev(struct b43_bus_dev *dev); void b43_bus_set_wldev(struct b43_bus_dev *dev, void *data); #endif /* B43_BUS_H_ */

Overall Contributors

PersonTokensPropCommitsCommitProp
Rafał Miłecki478100.00%15100.00%
Total478100.00%15100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.