arch/mips/include/asm/xtalk/xwidget.h
Source file repositories/reference/linux-study-clean/arch/mips/include/asm/xtalk/xwidget.h
File Facts
- System
- Linux kernel
- Corpus path
arch/mips/include/asm/xtalk/xwidget.h- Extension
.h- Size
- 7680 bytes
- Lines
- 280
- 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/types.hasm/xtalk/xtalk.h
Detected Declarations
struct widget_ident
Annotated Snippet
struct widget_ident {
u32 mfgr;
u32 part;
char *name;
char *revs[16];
};
/* Known Xtalk Widgets */
static const struct widget_ident __initconst widget_idents[] = {
{
WIDGET_XBOW_MFGR_NUM,
WIDGET_XBOW_PART_NUM,
"xbow",
{NULL, "1.0", "1.1", "1.2", "1.3", "2.0", NULL},
},
{
WIDGET_HEART_MFGR_NUM,
WIDGET_HEART_PART_NUM,
"heart",
{NULL, "A", "B", "C", "D", "E", "F", NULL},
},
{
WIDGET_BRIDG_MFGR_NUM,
WIDGET_BRIDG_PART_NUM,
"bridge",
{NULL, "A", "B", "C", "D", NULL},
},
{
WIDGET_IMPCT_MFGR_NUM,
WIDGET_IMPCT_PART_NUM,
"impact",
{NULL, "A", "B", NULL},
},
{
WIDGET_ODYS_MFGR_NUM,
WIDGET_ODYS_PART_NUM,
"odyssey",
{NULL, "A", "B", NULL},
},
{
WIDGET_HUB_MFGR_NUM,
WIDGET_HUB_PART_NUM,
"hub",
{NULL, "1.0", "2.0", "2.1", "2.2", "2.3", "2.4", NULL},
},
{
WIDGET_KONA_MFGR_NUM,
WIDGET_KONA_PART_NUM,
"kona",
{NULL},
},
{
WIDGET_BDRCK_MFGR_NUM,
WIDGET_BDRCK_PART_NUM,
"bedrock",
{NULL, "1.0", "1.1", NULL},
},
{
WIDGET_TPU_MFGR_NUM,
WIDGET_TPU_PART_NUM,
"tpu",
{"0", NULL},
},
{
WIDGET_XXBOW_MFGR_NUM,
WIDGET_XXBOW_PART_NUM,
"xxbow",
{NULL, "1.0", "2.0", NULL},
},
{
WIDGET_XBRDG_MFGR_NUM,
WIDGET_XBRDG_PART_NUM,
"xbridge",
{NULL, "A", "B", NULL},
},
{
WIDGET_NULL_MFGR_NUM,
WIDGET_NULL_PART_NUM,
NULL,
{NULL},
}
};
/*
* according to the crosstalk spec, only 32-bits access to the widget
* configuration registers is allowed. some widgets may allow 64-bits
* access but software should not depend on it. registers beyond the
* widget target flush register are widget dependent thus will not be
* defined here
*/
Annotation
- Immediate include surface: `linux/types.h`, `asm/xtalk/xtalk.h`.
- Detected declarations: `struct widget_ident`.
- 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.