drivers/net/wireless/ath/carl9170/hw.h

Source file repositories/reference/linux-study-clean/drivers/net/wireless/ath/carl9170/hw.h

File Facts

System
Linux kernel
Corpus path
drivers/net/wireless/ath/carl9170/hw.h
Extension
.h
Size
38781 bytes
Lines
885
Domain
Driver Families
Bucket
drivers/net
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct ar9170_stream {
	__le16 length;
	__le16 tag;

	u8 payload[];
} __packed __aligned(4);
#define AR9170_STREAM_LEN				4

#define AR9170_MAX_ACKTABLE_ENTRIES			8
#define AR9170_MAX_VIRTUAL_MAC				7

#define	AR9170_USB_EP_CTRL_MAX				64
#define	AR9170_USB_EP_TX_MAX				512
#define	AR9170_USB_EP_RX_MAX				512
#define	AR9170_USB_EP_IRQ_MAX				64
#define	AR9170_USB_EP_CMD_MAX				64

/* Trigger PRETBTT interrupt 6 Kus earlier */
#define CARL9170_PRETBTT_KUS				6

#define	AR5416_MAX_RATE_POWER				63

#define SET_VAL(reg, value, newvalue)					\
	(value = ((value) & ~reg) | (((newvalue) << reg##_S) & reg))

#define SET_CONSTVAL(reg, newvalue)					\
	(((newvalue) << reg##_S) & reg)

#define MOD_VAL(reg, value, newvalue)					\
	(((value) & ~reg) | (((newvalue) << reg##_S) & reg))

#define GET_VAL(reg, value)						\
	(((value) & reg) >> reg##_S)

#endif	/* __CARL9170_SHARED_HW_H */

Annotation

Implementation Notes