博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
imx6 PCIE使能加载ath9k无线网卡
阅读量:6078 次
发布时间:2019-06-20

本文共 3973 字,大约阅读时间需要 13 分钟。

imx6q配置pcie无线网卡遇到如下问题:

imx6q-pcie 1ffc000.pcie: PCI host bridge to bus 0000:00

pci_bus 0000:00: root bus resource [io  0x1000-0x10000]

pci_bus 0000:00: root bus resource [mem 0x01000000-0x01efffff]

pci_bus 0000:00: root bus resource [bus 00-ff]

pci 0000:00:00.0: [16c3:abcd] type 01 class 0x060400

pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff]

pci 0000:00:00.0: reg 0x38: [mem 0x00000000-0x0000ffff pref]

pci 0000:00:00.0: supports D1

pci 0000:00:00.0: PME# supported from D0 D1 D3hot D3cold

PCI: bus0: Fast back to back transfers disabled

pci 0000:01:00.0: [168c:0030] type 00 class 0x028000

pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x0001ffff 64bit]

pci 0000:01:00.0: reg 0x30: [mem 0x00000000-0x0000ffff pref]

pci 0000:01:00.0: supports D1

pci 0000:01:00.0: PME# supported from D0 D1 D3hot

PCI: bus1: Fast back to back transfers disabled

pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01

pci 0000:00:00.0: BAR 0: assigned [mem 0x01000000-0x010fffff]

pci 0000:00:00.0: BAR 8: assigned [mem 0x01100000-0x011fffff]

pci 0000:00:00.0: BAR 9: assigned [mem 0x01200000-0x012fffff pref]

pci 0000:00:00.0: BAR 6: assigned [mem 0x01300000-0x0130ffff pref]

pci 0000:01:00.0: BAR 0: assigned [mem 0x01100000-0x0111ffff 64bit]

pci 0000:01:00.0: BAR 6: assigned [mem 0x01200000-0x0120ffff pref]

pci 0000:00:00.0: PCI bridge to [bus 01]

pci 0000:00:00.0:   bridge window [mem 0x01100000-0x011fffff]

pci 0000:00:00.0:   bridge window [mem 0x01200000-0x012fffff pref]

pcieport 0000:00:00.0: Signaling PME through PCIe PME interrupt

pci 0000:01:00.0: Signaling PME through PCIe PME interrupt

pcie_pme 0000:00:00.0:pcie01: service driver pcie_pme loaded

aer 0000:00:00.0:pcie02: service driver aer loaded

 

However, here is what happens when the kernel seems to try and load the driver :

 

PCI: enabling device 0000:01:00.0 (0140 -> 0142)

------------[ cut here ]------------

WARNING: CPU: 0 PID: 1 at kernel/irq/manage.c:1412 request_threaded_irq+0xfc/0x124()

Modules linked in:

CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.14.28-1.0.0_ga+g91cf351 #5

[<80015638>] (unwind_backtrace) from [<80011714>] (show_stack+0x10/0x14)

[<80011714>] (show_stack) from [<8073be5c>] (dump_stack+0x7c/0xbc)

[<8073be5c>] (dump_stack) from [<8002d718>] (warn_slowpath_common+0x70/0x8c)

[<8002d718>] (warn_slowpath_common) from [<8002d7d0>] (warn_slowpath_null+0x1c/0x24)

[<8002d7d0>] (warn_slowpath_null) from [<80069ce8>] (request_threaded_irq+0xfc/0x124)

[<80069ce8>] (request_threaded_irq) from [<80420764>] (ath_pci_probe+0x198/0x2e4)

[<80420764>] (ath_pci_probe) from [<802bfa9c>] (pci_device_probe+0x74/0xc8)

[<802bfa9c>] (pci_device_probe) from [<80352a2c>] (driver_probe_device+0x110/0x24c)

[<80352a2c>] (driver_probe_device) from [<80352c38>] (__driver_attach+0x8c/0x90)

[<80352c38>] (__driver_attach) from [<80350f84>] (bus_for_each_dev+0x6c/0xa0)

[<80350f84>] (bus_for_each_dev) from [<803521e4>] (bus_add_driver+0x148/0x1f0)

[<803521e4>] (bus_add_driver) from [<80353234>] (driver_register+0x78/0xf8)

[<80353234>] (driver_register) from [<80e016d0>] (ath9k_init+0x2c/0x68)

[<80e016d0>] (ath9k_init) from [<8000889c>] (do_one_initcall+0xf8/0x154)

[<8000889c>] (do_one_initcall) from [<80dd0c54>] (kernel_init_freeable+0x138/0x1d8)

[<80dd0c54>] (kernel_init_freeable) from [<80737548>] (kernel_init+0x8/0xe8)

[<80737548>] (kernel_init) from [<8000e538>] (ret_from_fork+0x14/0x3c)

---[ end trace 6a544c6d7fd3de66 ]---

ath9k 0000:01:00.0: request_irq failed

ath9k: probe of 0000:01:00.0 failed with error -22

 

 

 

修改方案:

 

diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi

index 732f2d2..e0cd2b1 100644

--- a/arch/arm/boot/dts/imx6qdl.dtsi

+++ b/arch/arm/boot/dts/imx6qdl.dtsi

@@ -48,8 +48,6 @@

        intc: interrupt-controller@00a01000 {

                compatible = "arm,cortex-a9-gic";

                #interrupt-cells = <3>;

-               #address-cells = <1>;

-               #size-cells = <1>;

                interrupt-controller;

                reg = <0x00a01000 0x1000>,

                      <0x00a00100 0x100>;

 删除红色部分即可

转载于:https://www.cnblogs.com/liangwode/p/5409124.html

你可能感兴趣的文章
PHP中”单例模式“实例讲解
查看>>
VS2008查看dll导出函数
查看>>
VM EBS R12迁移,启动APTier . AutoConfig错误
查看>>
atitit.细节决定成败的适合情形与缺点
查看>>
Mysql利用binlog恢复数据
查看>>
我的友情链接
查看>>
用yum安装mariadb
查看>>
一点IT"边缘化"的人的思考
查看>>
WPF 降低.net framework到4.0
查看>>
搭建一个通用的脚手架
查看>>
开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
查看>>
开源磁盘加密软件VeraCrypt教程
查看>>
本地vs云:大数据厮杀的最终幸存者会是谁?
查看>>
阿里云公共镜像、自定义镜像、共享镜像和镜像市场的区别 ...
查看>>
shadowtunnel v1.7 发布:新增上级负载均衡支持独立密码
查看>>
Java线程:什么是线程
查看>>
mysql5.7 创建一个超级管理员
查看>>
【框架整合】Maven-SpringMVC3.X+Spring3.X+MyBatis3-日志、JSON解析、表关联查询等均已配置好...
查看>>
要想成为高级Java程序员需要具备哪些知识呢?
查看>>
带着问题去学习--Nginx配置解析(一)
查看>>