drivers/net/wireless/realtek/rtw89/rtw8852a_rfk_table.c
Source file repositories/reference/linux-study-clean/drivers/net/wireless/realtek/rtw89/rtw8852a_rfk_table.c
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/wireless/realtek/rtw89/rtw8852a_rfk_table.c- Extension
.c- Size
- 71240 bytes
- Lines
- 1608
- 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.
- 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
rtw8852a_rfk_table.h
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
/* Copyright(c) 2019-2020 Realtek Corporation
*/
#include "rtw8852a_rfk_table.h"
static const struct rtw89_reg5_def rtw8852a_tssi_sys_defs[] = {
RTW89_DECL_RFK_WM(0x12a8, 0x00000001, 0x00000001),
RTW89_DECL_RFK_WM(0x12a8, 0x0000000e, 0x00000002),
RTW89_DECL_RFK_WM(0x32a8, 0x00000001, 0x00000001),
RTW89_DECL_RFK_WM(0x32a8, 0x0000000e, 0x00000002),
RTW89_DECL_RFK_WM(0x12bc, 0x000000f0, 0x00000005),
RTW89_DECL_RFK_WM(0x12bc, 0x00000f00, 0x00000005),
RTW89_DECL_RFK_WM(0x12bc, 0x000f0000, 0x00000005),
RTW89_DECL_RFK_WM(0x12bc, 0x0000f000, 0x00000005),
RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x00000033),
RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x00000033),
RTW89_DECL_RFK_WM(0x32bc, 0x000000f0, 0x00000005),
RTW89_DECL_RFK_WM(0x32bc, 0x00000f00, 0x00000005),
RTW89_DECL_RFK_WM(0x32bc, 0x000f0000, 0x00000005),
RTW89_DECL_RFK_WM(0x32bc, 0x0000f000, 0x00000005),
RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x00000033),
RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x00000033),
RTW89_DECL_RFK_WM(0x0300, 0xff000000, 0x00000019),
RTW89_DECL_RFK_WM(0x0304, 0x000000ff, 0x00000019),
RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x0000001d),
RTW89_DECL_RFK_WM(0x0314, 0xffff0000, 0x00002044),
RTW89_DECL_RFK_WM(0x0318, 0x0000ffff, 0x00002042),
RTW89_DECL_RFK_WM(0x0318, 0xffff0000, 0x00002002),
RTW89_DECL_RFK_WM(0x0020, 0x00006000, 0x00000003),
RTW89_DECL_RFK_WM(0x0024, 0x00006000, 0x00000003),
RTW89_DECL_RFK_WM(0x0704, 0xffff0000, 0x0000601e),
RTW89_DECL_RFK_WM(0x2704, 0xffff0000, 0x0000601e),
RTW89_DECL_RFK_WM(0x0700, 0xf0000000, 0x00000004),
RTW89_DECL_RFK_WM(0x2700, 0xf0000000, 0x00000004),
RTW89_DECL_RFK_WM(0x0650, 0x3c000000, 0x00000000),
RTW89_DECL_RFK_WM(0x2650, 0x3c000000, 0x00000000),
};
RTW89_DECLARE_RFK_TBL(rtw8852a_tssi_sys_defs);
static const struct rtw89_reg5_def rtw8852a_tssi_sys_defs_2g[] = {
RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x00000033),
RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x00000033),
RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x00000033),
RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x00000033),
};
RTW89_DECLARE_RFK_TBL(rtw8852a_tssi_sys_defs_2g);
static const struct rtw89_reg5_def rtw8852a_tssi_sys_defs_5g[] = {
RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x00000044),
RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x00000044),
RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x00000044),
RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x00000044),
};
RTW89_DECLARE_RFK_TBL(rtw8852a_tssi_sys_defs_5g);
static const struct rtw89_reg5_def rtw8852a_tssi_txpwr_ctrl_bb_defs_a[] = {
RTW89_DECL_RFK_WM(0x5800, 0x000000ff, 0x0000007f),
RTW89_DECL_RFK_WM(0x5800, 0x0000ff00, 0x00000080),
RTW89_DECL_RFK_WM(0x5800, 0x003f0000, 0x0000003f),
RTW89_DECL_RFK_WM(0x5800, 0x10000000, 0x00000000),
RTW89_DECL_RFK_WM(0x5800, 0x20000000, 0x00000000),
RTW89_DECL_RFK_WM(0x5800, 0xc0000000, 0x00000000),
RTW89_DECL_RFK_WM(0x5804, 0xf8000000, 0x00000000),
RTW89_DECL_RFK_WM(0x580c, 0x0000007f, 0x00000040),
RTW89_DECL_RFK_WM(0x580c, 0x00007f00, 0x00000040),
RTW89_DECL_RFK_WM(0x580c, 0x00008000, 0x00000000),
RTW89_DECL_RFK_WM(0x580c, 0x0fff0000, 0x00000000),
RTW89_DECL_RFK_WM(0x5810, 0x000001ff, 0x00000000),
RTW89_DECL_RFK_WM(0x5810, 0x00000200, 0x00000000),
RTW89_DECL_RFK_WM(0x5810, 0x0000fc00, 0x00000000),
RTW89_DECL_RFK_WM(0x5810, 0x00010000, 0x00000001),
RTW89_DECL_RFK_WM(0x5810, 0x00fe0000, 0x00000000),
RTW89_DECL_RFK_WM(0x5810, 0x01000000, 0x00000001),
RTW89_DECL_RFK_WM(0x5810, 0x06000000, 0x00000000),
RTW89_DECL_RFK_WM(0x5810, 0x38000000, 0x00000003),
RTW89_DECL_RFK_WM(0x5810, 0x40000000, 0x00000001),
RTW89_DECL_RFK_WM(0x5810, 0x80000000, 0x00000000),
RTW89_DECL_RFK_WM(0x5814, 0x000003ff, 0x00000000),
RTW89_DECL_RFK_WM(0x5814, 0x00000c00, 0x00000000),
RTW89_DECL_RFK_WM(0x5814, 0x00001000, 0x00000001),
RTW89_DECL_RFK_WM(0x5814, 0x00002000, 0x00000000),
RTW89_DECL_RFK_WM(0x5814, 0x00004000, 0x00000001),
RTW89_DECL_RFK_WM(0x5814, 0x00038000, 0x00000005),
RTW89_DECL_RFK_WM(0x5814, 0x003c0000, 0x00000000),
RTW89_DECL_RFK_WM(0x5814, 0x01c00000, 0x00000000),
RTW89_DECL_RFK_WM(0x5814, 0x18000000, 0x00000000),
Annotation
- Immediate include surface: `rtw8852a_rfk_table.h`.
- Atlas domain: Driver Families / drivers/net.
- 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.