arch/mips/include/asm/mach-au1x00/au1100_mmc.h
Source file repositories/reference/linux-study-clean/arch/mips/include/asm/mach-au1x00/au1100_mmc.h
File Facts
- System
- Linux kernel
- Corpus path
arch/mips/include/asm/mach-au1x00/au1100_mmc.h- Extension
.h- Size
- 5988 bytes
- Lines
- 211
- Domain
- Architecture Layer
- Bucket
- arch/mips
- Inferred role
- Architecture Layer: implementation source
- Status
- source implementation candidate
Why This File Exists
CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.
- CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/leds.h
Detected Declarations
struct au1xmmc_platform_data
Annotated Snippet
struct au1xmmc_platform_data {
int(*cd_setup)(void *mmc_host, int on);
int(*card_inserted)(void *mmc_host);
int(*card_readonly)(void *mmc_host);
void(*set_power)(void *mmc_host, int state);
struct led_classdev *led;
unsigned long mask_host_caps;
};
#define SD0_BASE 0xB0600000
#define SD1_BASE 0xB0680000
/*
* Register offsets.
*/
#define SD_TXPORT (0x0000)
#define SD_RXPORT (0x0004)
#define SD_CONFIG (0x0008)
#define SD_ENABLE (0x000C)
#define SD_CONFIG2 (0x0010)
#define SD_BLKSIZE (0x0014)
#define SD_STATUS (0x0018)
#define SD_DEBUG (0x001C)
#define SD_CMD (0x0020)
#define SD_CMDARG (0x0024)
#define SD_RESP3 (0x0028)
#define SD_RESP2 (0x002C)
#define SD_RESP1 (0x0030)
#define SD_RESP0 (0x0034)
#define SD_TIMEOUT (0x0038)
/*
* SD_TXPORT bit definitions.
*/
#define SD_TXPORT_TXD (0x000000ff)
/*
* SD_RXPORT bit definitions.
*/
#define SD_RXPORT_RXD (0x000000ff)
/*
* SD_CONFIG bit definitions.
*/
#define SD_CONFIG_DIV (0x000001ff)
#define SD_CONFIG_DE (0x00000200)
#define SD_CONFIG_NE (0x00000400)
#define SD_CONFIG_TU (0x00000800)
#define SD_CONFIG_TO (0x00001000)
#define SD_CONFIG_RU (0x00002000)
#define SD_CONFIG_RO (0x00004000)
#define SD_CONFIG_I (0x00008000)
#define SD_CONFIG_CR (0x00010000)
#define SD_CONFIG_RAT (0x00020000)
#define SD_CONFIG_DD (0x00040000)
#define SD_CONFIG_DT (0x00080000)
#define SD_CONFIG_SC (0x00100000)
#define SD_CONFIG_RC (0x00200000)
#define SD_CONFIG_WC (0x00400000)
#define SD_CONFIG_xxx (0x00800000)
#define SD_CONFIG_TH (0x01000000)
#define SD_CONFIG_TE (0x02000000)
#define SD_CONFIG_TA (0x04000000)
#define SD_CONFIG_RH (0x08000000)
#define SD_CONFIG_RA (0x10000000)
#define SD_CONFIG_RF (0x20000000)
#define SD_CONFIG_CD (0x40000000)
#define SD_CONFIG_SI (0x80000000)
/*
* SD_ENABLE bit definitions.
*/
#define SD_ENABLE_CE (0x00000001)
#define SD_ENABLE_R (0x00000002)
/*
* SD_CONFIG2 bit definitions.
*/
#define SD_CONFIG2_EN (0x00000001)
#define SD_CONFIG2_FF (0x00000002)
#define SD_CONFIG2_xx1 (0x00000004)
#define SD_CONFIG2_DF (0x00000008)
#define SD_CONFIG2_DC (0x00000010)
#define SD_CONFIG2_xx2 (0x000000e0)
Annotation
- Immediate include surface: `linux/leds.h`.
- Detected declarations: `struct au1xmmc_platform_data`.
- Atlas domain: Architecture Layer / arch/mips.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.