06 二层、桥接、无线与 socket 族机制与实现详解
1. 链路层与以太辅助
| 目录 | 作用 |
|---|---|
| ethernet/ | eth.c:eth_type_trans、alloc_etherdev |
| 802/ | LLC/SNAP、STP 辅助 |
| 8021q/ | VLAN 子接口、vlan_dev |
| bridge/ | 网桥 FDB、转发、STP、与 netfilter 桥挂钩 |
| dsa/ | 交换机 CPU 口 + 标签协议 |
| switchdev/ | 硬件交换 offload 通知 API |
| hsr/ | 工业冗余协议 |
RK3588 板载 单口或双口 GMAC 常用 vlan;多口交换芯片可能 DSA。
2. 无线协议栈(框架在 net/)
| 目录 | 职责 |
|---|---|
| wireless/ | cfg80211、监管域、扫描、注册 wiphy |
| mac80211/ | 802.11 MAC:加密、聚合、mesh |
芯片驱动(BCM/AP6212 等)在 drivers/net/wireless/,实现 ieee80211_ops。
net/wireless/Kconfig 中 ROCKCHIP_THUNDER_BOOT 影响部分默认项(非核心逻辑)。
3. 其它 socket 地址族(节选)
| 目录 | AF | RK 相关性 |
|---|---|---|
| unix/ | AF_UNIX | 高(本地 IPC) |
| packet/ | AF_PACKET | 抓包、dhcp 客户端 |
| can/ | AF_CAN | 车载/工业 CAN |
| bluetooth/ | AF_BLUETOOTH | 板载 BT |
| tls/ | kTLS | HTTPS 卸载 |
| vmw_vsock/ | AF_VSOCK | 虚拟机 |
| qrtr/ | QRTR | 高通,RK 一般不用 |
4. 管理与观测
| 目录 | 作用 |
|---|---|
| netlink/ | AF_NETLINK、genetlink 基础设施 |
| ethtool/ | 链路参数、统计、环大小 |
| devlink/ | 端口拆分、固件(部分 NIC) |
| rfkill/ | 射频开关(含 RK 驱动) |
| psample/ | 采样到用户态 |
5. RK3588:rfkill
CONFIG_RFKILL_RK → rfkill-wlan.c / rfkill-bt.c:
rockchip_wifi_power()— WiFi 电源;rockchip_wifi_set_carddetect()— SDIO 检测;rockchip_wifi_mac_addr()— vendor storage MAC;- GRF/syscon 引脚控制。
导出符号供 bcmdhd、brcmfmac 等模块调用。
6. 小结
二层/无线 框架在 net/,芯片在 drivers/。RK 产品 WiFi/BT 必涉及 rfkill + cfg80211 + 厂商无线驱动 三角关系。
正在加载留言…