QCA wlan driver load

Driver load:
====>qcacld:
hdd_driver_load()
wlan_hdd_register_driver()
pld_register_driver()
pld_pcie_register_driver()
=====>cnss2:
// ?????spin_lock_irqsave ??wlan_genoa_pcie.ko??data ?wlan_cnss_core_pcie.ko??
cnss_wlan_register_driver()
cnss_driver_event_post()   ====>  ?? queue_work(plat_priv->event_wq, &plat_priv->event_work); ??cnss_driver_event_work
cnss_driver_event_work()
cnss_bus_register_driver_hdlr()
cnss_pci_register_driver_hdlr()
cnss_pci_dev_powerup()
cnss_qca6290_powerup()
  cnss_pci_start_mhi()
  cnss_wlfw_fw_init_done_ind_cb() ---- CNSS_DRIVER_EVENT_FW_READY
cnss_bus_call_driver_probe()
cnss_pci_call_driver_probe()   ===> driver_state=23 ??CNSS_DRIVER_LOADING ,??cnss_wlan_driver???? 
                    pci_priv->driver_ops->probe ??????????struct cnss_wlan_driver pld_pcie_ops??
                    pld_pcie_probe????
=======>HDD:
pld_pcie_probe()
wlan_hdd_pld_probe()
hdd_soc_probe()
__hdd_soc_probe()
  hdd_context_create()   ===> 分配和初始化 HDD context . 主要结构体是 struct hdd_context -hdd shared driver and psoc/device context,供hdd_wlan_startup() - HDD init function初始化使用。
  hdd_wlan_startup()    ====> HDD init function,启动struct hdd_context hdd_ctx 结构体内容,包括ieee80211,mac_address,phy,等
hdd_wlan_start_modules()

======> HIF:
hdd_hif_open()   ====> ??HIF(Host Interface , Abstracts the hardware interface (PCI, USB, SDIO)???????)??
    hif_open()   ===>hif_bus_open() ??? pci?????  
    hif_enable()
      hif_enable_bus()  ===> hif_pci_enable_bus()
      hif_hal_attach() 
      hif_bus_configure()  ===> hif_pci_bus_configure()  configure the pcie bus
cds_open()  ===> Connectivity driver services. All the WLAN SW components should have been opened. This includes
                 SYS, MAC, SME, WMA and TL.
  wma_open()
  wmi_unified_attach()
cds_pre_enable()
  wma_wait_for_ready_event()  ===>  FW ready event received

=====> HDD:
hdd_wiphy_init()
  wlan_hdd_cfg80211_register()
  wiphy_register()
  register_netdevice()


========================================
FTM wlan log的控制在 hdd_context_create()函数中,hdd_set_wlan_logging(hdd_ctx);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值