🗒️MTK平台(Android T)根据硬件区分射频参数
2023-9-5
| 2023-9-30
字数 1515阅读时长 4 分钟
type
status
date
slug
summary
tags
category
icon
password
URL

一、问题背景

收到硬件同事提的需求,需要根据不同的设备硬件区分不同的射频参数。区分gloabl/cn/india三套参数,由于MTK平台默认的只有一套参数,所以需要对MTK原始设计进行适配。

二、需求构思

明确三点:
  1. wlan driver需要获取硬件信息(india/cn/global)
  1. 三套射频参数的逻辑
  1. 半擦升级时保存wifi mac地址的策略也需要根据region来适配

三、方案实现

3.1 region传入driver

此region信息我们想的方案是将region通过lk设置kernel cmdline,driver去解析kernel cmdline来获取。

3.2 driver 解析 cmdline

3.3 区分三套射频参数

https://gerrit.odm.mioffice.cn/c/alps/vendor/mediatek/proprietary/custom/+/419760
https://gerrit.odm.mioffice.cn/c/alps/vendor/mediatek/proprietary/external/libnvram_ext/+/419649

3.4 wifi mac 半擦保护

https://gerrit.odm.mioffice.cn/c/alps/vendor/mediatek/proprietary/external/nvram/+/419648

四、总结

方案的原理很清晰明了,方案的整体设计是围绕stWifiCfgDefault_6631进行的,通过region的区分来区分不同的射频参数。代码中所有引用到stWifiCfgDefault_6631的地方都需要做一个区分。
在GKI项目中也尝试过使用全局链表saved_command_line,但是失败了。GKI项目应该无法使用这个了,如果遇到相同的问题,可以使用本篇介绍的方案获取cmdline
  • mtk
  • wifi
  • connectivity
  • cmdline
  • gki
  • [Code Snipaste] rtc定时器中断解决系统睡眠时的workqueue唤醒[从零开始学UEFI]第0话 UEFI的历史
    Loading...