OpenWrt Forum Archive

Topic: Lantiq XWAY WAVE300

The content of this topic has been archived between 30 Mar 2018 and 30 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

demlak wrote:

hi.. any news on this? and maybe port to LEDE?
(speedport w921v in here)

Nope, nothing for now.

Hi,
Sorry I wasn't checking the thread for a while.

  • I'm suspicious about the origin of the most recent sources available wave300-3.2.1.1.48.
    Within the tarball there's no license and into the code, Lantiq is clearly proprietary.

  • On the other hand, into tarball for source lq-wave-300-03.01.00.12.31.09.58ada131737d, one can find in the root folder a LICENSE text file that starts with:
    "This source code is distributed under a dual license of GPL and BSD (2-clause).
    Please choose the appropriate license for your intended usage.

    1. BSD license (2-clause BSD license)

    Copyright (c) 2009, Lantiq Deutschland GmbH
    All rights reserved.
    ...
    "

  • So above sources could be published and modified as far as licence is kept. However, these sources do not have most advanced wifi features so I've not spent any minute analysing that code

  • This mess could be easily solved if I/we could reach Lantiq and ask for the applicable license. However, Lantiq was integrated into Intel years ago and I cannot find an easy way to reach someone there. Any help would be appreciated

  • Talking about real business, I still can't make the driver to work with PCIe. I'm pretty lost if there's either a bootup resource assignment bug with the BAR's or something else

Mandrake wrote:

Hi,
Sorry I wasn't checking the thread for a while.

  • I'm suspicious about the origin of the most recent sources available wave300-3.2.1.1.48.
    Within the tarball there's no license and into the code, Lantiq is clearly proprietary.

  • On the other hand, into tarball for source lq-wave-300-03.01.00.12.31.09.58ada131737d, one can find in the root folder a LICENSE text file that starts with:
    "This source code is distributed under a dual license of GPL and BSD (2-clause).
    Please choose the appropriate license for your intended usage.

    1. BSD license (2-clause BSD license)

    Copyright (c) 2009, Lantiq Deutschland GmbH
    All rights reserved.
    ...
    "

  • So above sources could be published and modified as far as licence is kept. However, these sources do not have most advanced wifi features so I've not spent any minute analysing that code

  • This mess could be easily solved if I/we could reach Lantiq and ask for the applicable license. However, Lantiq was integrated into Intel years ago and I cannot find an easy way to reach someone there. Any help would be appreciated

  • Talking about real business, I still can't make the driver to work with PCIe. I'm pretty lost if there's either a bootup resource assignment bug with the BAR's or something else

I have found that linkedin has a profile of lantiq and appear employees. Maybe you can contact through linkedin

Search in google "linkedin lantiq" (did not allow me to put links)

(Last edited by kikox1 on 20 Apr 2017, 20:40)

Mandrake wrote:
  • I'm suspicious about the origin of the most recent sources available wave300-3.2.1.1.48.
    Within the tarball there's no license and into the code, Lantiq is clearly proprietary.

  • On the other hand, into tarball for source lq-wave-300-03.01.00.12.31.09.58ada131737d, one can find in the root folder a LICENSE text file that starts with:
    "This source code is distributed under a dual license of GPL and BSD (2-clause).
    Please choose the appropriate license for your intended usage.

    1. BSD license (2-clause BSD license)

    Copyright (c) 2009, Lantiq Deutschland GmbH
    All rights reserved.
    ...
    "

  • So above sources could be published and modified as far as licence is kept. However, these sources do not have most advanced wifi features so I've not spent any minute analysing that code

  • This mess could be easily solved if I/we could reach Lantiq and ask for the applicable license. However, Lantiq was integrated into Intel years ago and I cannot find an easy way to reach someone there. Any help would be appreciated

-> in 3.1, ./wireless/driver/linux/hw_pci.c is proprietary yet refers to GPL in the source code
-> in 3.2 ./driver/wireless/driver/linux/mtlk_pci_drv.c is proprietary but doesn't refer to GPL.
-> they are practically same file so mtlk_pci_drv.c from 3.2 should also be subject to GPL.

It seems like a GPL violation to me. Even though it was originally released as dual BSD/GPL, the GPL "activated" once Lantiq distributed the GPL code.

(Not a lawyer, this is not legal advice, please don't sue me)

Mandrake wrote:

Talking about real business, I still can't make the driver to work with PCIe. I'm pretty lost if there's either a bootup resource assignment bug with the BAR's or something else

I hope this helps:
If you view lpm11's posts, it seems like he managed to have the PCIe be properly initialized at one point for the 3.1 driver.

Towards the end of page 2 of the OpenWRT thread for the TP-Link TD-W8980, lpm11 added the following PCIe info from some OEM firmware which describes how to initialize the 2nd PCIe bus in ifxmips_pcie_reg.h
pastebin.com/Xp44px1f

Also, on the OpenWRT mailing lists related to Lantiq, there was some patches related to breakages caused by modifying GPIO that was for resetting PCIe bus at boot.

Other than this, I have a TP-Link VR200, and would be happy to help if you could further describe what errors you run into.

(Last edited by vittorio88 on 26 Apr 2017, 21:06)

vittorio88 wrote:
Mandrake wrote:
  • I'm suspicious about the origin of the most recent sources available wave300-3.2.1.1.48.
    Within the tarball there's no license and into the code, Lantiq is clearly proprietary.

  • On the other hand, into tarball for source lq-wave-300-03.01.00.12.31.09.58ada131737d, one can find in the root folder a LICENSE text file that starts with:
    "This source code is distributed under a dual license of GPL and BSD (2-clause).
    Please choose the appropriate license for your intended usage.

    1. BSD license (2-clause BSD license)

    Copyright (c) 2009, Lantiq Deutschland GmbH
    All rights reserved.
    ...
    "

  • So above sources could be published and modified as far as licence is kept. However, these sources do not have most advanced wifi features so I've not spent any minute analysing that code

  • This mess could be easily solved if I/we could reach Lantiq and ask for the applicable license. However, Lantiq was integrated into Intel years ago and I cannot find an easy way to reach someone there. Any help would be appreciated

-> in 3.1, ./wireless/driver/linux/hw_pci.c is proprietary yet refers to GPL in the source code
-> in 3.2 ./driver/wireless/driver/linux/mtlk_pci_drv.c is proprietary but doesn't refer to GPL.
-> they are practically same file so mtlk_pci_drv.c from 3.2 should also be subject to GPL.

It seems like a GPL violation to me. Even though it was originally released as dual BSD/GPL, the GPL "activated" once Lantiq distributed the GPL code.

(Not a lawyer, this is not legal advice, please don't sue me)

This sounds logical to me. You've got a point.

However, I believe we must first address the PCIe communications with the hardware. After that we can consider which way to go.

vittorio88 wrote:
Mandrake wrote:

Talking about real business, I still can't make the driver to work with PCIe. I'm pretty lost if there's either a bootup resource assignment bug with the BAR's or something else

I hope this helps:
If you view lpm11's posts, it seems like he managed to have the PCIe be properly initialized at one point for the 3.1 driver.

Towards the end of page 2 of the OpenWRT thread for the TP-Link TD-W8980, lpm11 added the following PCIe info from some OEM firmware which describes how to initialize the 2nd PCIe bus in ifxmips_pcie_reg.h
pastebin.com/Xp44px1f

Also, on the OpenWRT mailing lists related to Lantiq, there was some patches related to breakages caused by modifying GPIO that was for resetting PCIe bus at boot.

Other than this, I have a TP-Link VR200, and would be happy to help if you could further describe what errors you run into.

Thanks vittorio88. Your help is really appreciated.

The sources you have provided are interesting. I have browsed inside them and yet there's no trace for the wave300 driver. It seems Lantiq has been very jealous about their code. smile

Coming to your post:

- I believe that many or all of the changes suggested by lpm11 have been added into the develoment trunk
- What is mising into the dts files of LEDE in order to activate the PCIe is:

pcie@d900000{
status = "okay"
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
}

- I have added those lines into ARV7519RW22.dts, which is the dts file for my router and once you have those changes done, the PCI boot looks ok. Here's a bootlog filtered:

root@OpenWrt:/# dmesg | grep pci
[    0.344205] PCI host bridge /fpi@10000000/pcie@d900000 ranges:
[    0.384762] pci_bus 0000:00: root bus resource [mem 0x1c000000-0x1cffffff]
[    0.391671] pci_bus 0000:00: root bus resource [io  0x1d800000-0x1d8fffff]
[    0.398615] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0]
[    0.405472] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[    0.413500] pci 0000:00:00.0: [15d1:0011] type 01 class 0x060000
[    0.413534] ifx_pcie_rc_class_early_fixup: fixed pcie host bridge to pci-pci bridge
[    0.431183] ifx_pcie_fixup_resource: fixup host controller 0000:00:00.0 (15d1:0011)
[    0.438776] pci 0000:00:00.0: PME# supported from D0 D3hot
[    0.439312] pci 0000:01:00.0: [1a30:0710] type 00 class 0x0d8000
[    0.439422] pci 0000:01:00.0: reg 0x10: [mem 0xffff0000-0xffff0fff pref]
[    0.439461] pci 0000:01:00.0: reg 0x14: [mem 0xff000000-0xff7fffff pref]
[    0.439692] pci 0000:01:00.0: supports D1
[    0.439712] pci 0000:01:00.0: PME# supported from D0 D1 D3hot
[    0.440001] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    0.440037] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 01
[    0.440092] pci 0000:00:00.0: BAR 9: assigned [mem 0x1c000000-0x1cbfffff pref]
[    0.447222] pci 0000:01:00.0: BAR 1: assigned [mem 0x1c000000-0x1c7fffff pref]
[    0.454493] pci 0000:01:00.0: BAR 0: assigned [mem 0x1c800000-0x1c800fff pref]
[    0.461777] pci 0000:00:00.0: PCI bridge to [bus 01]
[    0.466804] pci 0000:00:00.0:   bridge window [mem 0x1c000000-0x1cbfffff pref]
[    0.474107] ifx_pcie_bios_map_irq port 0 dev 0000:00:00.0 slot 0 pin 1
[    0.480766] ifx_pcie_bios_map_irq dev 0000:00:00.0 irq 144 assigned
[    0.487118] ifx_pcie_bios_map_irq port 0 dev 0000:01:00.0 slot 0 pin 1
[    0.493782] ifx_pcie_bios_map_irq dev 0000:01:00.0 irq 144 assigned

- Here's the output for lspci:

root@OpenWrt:/# lspci -v
00:00.0 PCI bridge: Infineon Technologies AG Device 0011 (rev 01) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0, IRQ 144
        Memory at <unassigned> (32-bit, non-prefetchable) [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [size=2]
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
        Prefetchable memory behind bridge: 1c000000-1cbfffff
        Expansion ROM at <unassigned> [disabled] [size=2]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
        Capabilities: [70] Express Root Port (Slot-), MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Virtual Channel
        Capabilities: [160] Power Budgeting <?>
lspci: Unable to load libkmod resources: error -12

01:00.0 Wireless controller: Lantiq Wave300 PSB8231 [Hyperion III] (rev 01)
        Subsystem: Lantiq Device 0711
        Flags: fast devsel, IRQ 144
        Memory at 1c800000 (32-bit, prefetchable) [disabled] [size=4097]
        Memory at 1c000000 (32-bit, prefetchable) [disabled] [size=8388609]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Expansion ROM at <unassigned> [disabled] [size=2]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [70] Express Endpoint, MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Virtual Channel

- And the output for iomem

root@OpenWrt:/# cat /proc/iomem
10000000-11ffffff : 10000000.nor-boot
1c000000-1cffffff : PCIe0 Memory space
  1c000000-1cbfffff : PCI Bus 0000:01
    1c000000-1c7fffff : 0000:01:00.0
    1c800000-1c800fff : 0000:01:00.0
1e100b10-1e100baf : /fpi@10000000/pinmux@E100B10
1e100c00-1e100fff : 1e100c00.serial
1e101000-1e101fff : /fpi@10000000/ifxhcd@E101000
1e104100-1e1048ff : /fpi@10000000/dma@E104100
1e105300-1e1053ff : /fpi@10000000/ebu@E105300
1e106000-1e106fff : /fpi@10000000/ifxhcd@E106000
1e108000-1e10afff : /fpi@10000000/eth@E108000
1e10b100-1e10b16f : /fpi@10000000/eth@E108000
1e10b1d8-1e10b207 : /fpi@10000000/eth@E108000
1e10b308-1e10b337 : /fpi@10000000/eth@E108000
1e116000-1e11609f : mei_cpe
1f101000-1f101fff : /sram@1F000000/eiu@101000
1f102000-1f102fff : /sram@1F000000/pmu@102000
1f103000-1f103fff : /sram@1F000000/cgu@103000
1f106a00-1f106bff : /sram@1F000000/dcdc@106a00
1f203000-1f203fff : /sram@1F000000/rcu@203000
1f880200-1f880227 : /biu@1F800000/icu@80200
1f880228-1f88024f : /biu@1F800000/icu@80200
1f880250-1f880277 : /biu@1F800000/icu@80200
1f880278-1f88029f : /biu@1F800000/icu@80200
1f8802a0-1f8802c7 : /biu@1F800000/icu@80200
1f8803f0-1f8803ff : /biu@1F800000/watchdog@803F0

- Even though eveything looks ok, when the ported driver tries to request the memory regions for BAR0 & BAR1, it's simply ignored.
- After countless hours, I believe there's a bug in the PCIe driver. I believe it is not allocating resources for the child PCI devices, like the wave300

If you have access to the console of your router with original firmware:

  • It would be very usefull if you can install pciutils in your VR200 and run "lspci -v". The package can be downloaded from Openwrt

  • Also, a simple "cat /proc/iomem" can help

  • Whatever information you can collect about the PCI bus and devices

Hello,

Sorry for the late response. I missed the latest post for some reason unknown to me.

I have gathered the requested information.
FYI I am running:

LEDE Reboot 17.01.1 r3316-7eb58cf109 / LuCI lede-17.01 branch (git-17.100.70571-29fabe2)

root@vitto-rtr1:~# lspci -v
00:00.0 PCI bridge: Lantiq MIPS SoC PCI Express Port (rev 01) (prog-if 00 [Normal decode])
    Flags: fast devsel, IRQ 144
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
    Memory behind bridge: 1c000000-1c1fffff
    Expansion ROM at <unassigned> [disabled] [size=2]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
    Capabilities: [70] Express Root Port (Slot-), MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Virtual Channel
    Capabilities: [160] Power Budgeting <?>
lspci: Unable to load libkmod resources: error -12

01:00.0 Network controller: MEDIATEK Corp. Device 7650
    Subsystem: MEDIATEK Corp. Device 7650
    Flags: fast devsel, IRQ 144
    Memory at 1c000000 (32-bit, non-prefetchable) [disabled] [size=1048577]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Expansion ROM at <unassigned> [disabled] [size=2]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
    Capabilities: [70] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Device Serial Number 00-00-ff-ff-ff-ff-ff-ff
    Capabilities: [150] Latency Tolerance Reporting

01:00.1 Bluetooth: MEDIATEK Corp. Device 8650
    Subsystem: MEDIATEK Corp. Device 8650
    Flags: fast devsel, IRQ 144
    Memory at 1c100000 (32-bit, non-prefetchable) [disabled] [size=1048577]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Expansion ROM at <unassigned> [disabled] [size=2]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
    Capabilities: [70] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Device Serial Number 00-00-ff-ff-ff-ff-ff-ff
    Capabilities: [150] Latency Tolerance Reporting

root@vitto-rtr1:~# cat /proc/iomem
1c000000-1cffffff : PCIe0 Memory space
  1c000000-1c1fffff : PCI Bus 0000:01
    1c000000-1c0fffff : 0000:01:00.0
    1c100000-1c1fffff : 0000:01:00.1
1e100800-1e1008ff : /fpi@10000000/spi@E100800
1e100b10-1e100baf : /fpi@10000000/pinmux@E100B10
1e100c00-1e100fff : 1e100c00.serial
1e101000-1e101fff : /fpi@10000000/ifxhcd@E101000
1e104100-1e1048ff : /fpi@10000000/dma@E104100
1e105300-1e1053ff : /fpi@10000000/ebu@E105300
1e106000-1e106fff : /fpi@10000000/ifxhcd@E106000
1e108000-1e10afff : /fpi@10000000/eth@E108000
1e10b100-1e10b16f : /fpi@10000000/eth@E108000
1e10b1d8-1e10b207 : /fpi@10000000/eth@E108000
1e10b308-1e10b337 : /fpi@10000000/eth@E108000
1e116000-1e11609f : mei_cpe
1f101000-1f101fff : /sram@1F000000/eiu@101000
1f102000-1f102fff : /sram@1F000000/pmu@102000
1f103000-1f103fff : /sram@1F000000/cgu@103000
1f106a00-1f106bff : /sram@1F000000/dcdc@106a00
1f203000-1f203fff : /sram@1F000000/rcu@203000
1f400000-1f400fff : /sram@1F000000/xbar@400000
1f880200-1f880227 : /biu@1F800000/icu@80200
1f880228-1f88024f : /biu@1F800000/icu@80200
1f880250-1f880277 : /biu@1F800000/icu@80200
1f880278-1f88029f : /biu@1F800000/icu@80200
1f8802a0-1f8802c7 : /biu@1F800000/icu@80200
1f8803f0-1f8803ff : /biu@1F800000/watchdog@803F0

Question:
If I were to add:

pcie@d900000{
status = "okay"
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
}

To my dts file, do you believe I would see the missing PCIe devices? If so, can you tell me specifically which file to add it to?

Thanks,
Vittorio

vittorio88 wrote:

Hello,

Sorry for the late response. I missed the latest post for some reason unknown to me.

I have gathered the requested information.
FYI I am running:

LEDE Reboot 17.01.1 r3316-7eb58cf109 / LuCI lede-17.01 branch (git-17.100.70571-29fabe2)

root@vitto-rtr1:~# lspci -v
00:00.0 PCI bridge: Lantiq MIPS SoC PCI Express Port (rev 01) (prog-if 00 [Normal decode])
    Flags: fast devsel, IRQ 144
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
    Memory behind bridge: 1c000000-1c1fffff
    Expansion ROM at <unassigned> [disabled] [size=2]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
    Capabilities: [70] Express Root Port (Slot-), MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Virtual Channel
    Capabilities: [160] Power Budgeting <?>
lspci: Unable to load libkmod resources: error -12

01:00.0 Network controller: MEDIATEK Corp. Device 7650
    Subsystem: MEDIATEK Corp. Device 7650
    Flags: fast devsel, IRQ 144
    Memory at 1c000000 (32-bit, non-prefetchable) [disabled] [size=1048577]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Expansion ROM at <unassigned> [disabled] [size=2]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
    Capabilities: [70] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Device Serial Number 00-00-ff-ff-ff-ff-ff-ff
    Capabilities: [150] Latency Tolerance Reporting

01:00.1 Bluetooth: MEDIATEK Corp. Device 8650
    Subsystem: MEDIATEK Corp. Device 8650
    Flags: fast devsel, IRQ 144
    Memory at 1c100000 (32-bit, non-prefetchable) [disabled] [size=1048577]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
    Expansion ROM at <unassigned> [disabled] [size=2]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
    Capabilities: [70] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Device Serial Number 00-00-ff-ff-ff-ff-ff-ff
    Capabilities: [150] Latency Tolerance Reporting

root@vitto-rtr1:~# cat /proc/iomem
1c000000-1cffffff : PCIe0 Memory space
  1c000000-1c1fffff : PCI Bus 0000:01
    1c000000-1c0fffff : 0000:01:00.0
    1c100000-1c1fffff : 0000:01:00.1
1e100800-1e1008ff : /fpi@10000000/spi@E100800
1e100b10-1e100baf : /fpi@10000000/pinmux@E100B10
1e100c00-1e100fff : 1e100c00.serial
1e101000-1e101fff : /fpi@10000000/ifxhcd@E101000
1e104100-1e1048ff : /fpi@10000000/dma@E104100
1e105300-1e1053ff : /fpi@10000000/ebu@E105300
1e106000-1e106fff : /fpi@10000000/ifxhcd@E106000
1e108000-1e10afff : /fpi@10000000/eth@E108000
1e10b100-1e10b16f : /fpi@10000000/eth@E108000
1e10b1d8-1e10b207 : /fpi@10000000/eth@E108000
1e10b308-1e10b337 : /fpi@10000000/eth@E108000
1e116000-1e11609f : mei_cpe
1f101000-1f101fff : /sram@1F000000/eiu@101000
1f102000-1f102fff : /sram@1F000000/pmu@102000
1f103000-1f103fff : /sram@1F000000/cgu@103000
1f106a00-1f106bff : /sram@1F000000/dcdc@106a00
1f203000-1f203fff : /sram@1F000000/rcu@203000
1f400000-1f400fff : /sram@1F000000/xbar@400000
1f880200-1f880227 : /biu@1F800000/icu@80200
1f880228-1f88024f : /biu@1F800000/icu@80200
1f880250-1f880277 : /biu@1F800000/icu@80200
1f880278-1f88029f : /biu@1F800000/icu@80200
1f8802a0-1f8802c7 : /biu@1F800000/icu@80200
1f8803f0-1f8803ff : /biu@1F800000/watchdog@803F0

Question:
If I were to add:

pcie@d900000{
status = "okay"
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
}

To my dts file, do you believe I would see the missing PCIe devices? If so, can you tell me specifically which file to add it to?

Thanks,
Vittorio

Thanks.

It's interesting to see that you seem to have PCI bus activated by default.

In order to see PCIe I believe you need to change some values in the suitable .dts file.

First of all I need to know the Target System&Subtarget&Target Profile for your router. This is the info that you need in order to build an image with LEDE.

In my case, which is Livebox 2.1, this is:

  • Target System = Lantiq

  • Subtarget = XRX200

  • Target Profile = Livebox Astoria ARV7519RW22

And therefore, the file that I would change in my case is ARV7519RW22.dts

Hello,

Thanks for the explanation.

In my case, I have a TP-Link VR200, so I am using:

  • Target System = Lantiq

  • Subtarget = XRX200

  • Target Profile = VR200v


From the PCIe output I previously attached, I don't see the WAV300 device.
Can you help understand if I don't see it because:
a) It is on a separate PCIe bus that must be reset by GPIO by modifying the DTS file
b) I am missing a PCIe driver
c) Something else I am not seeing?

Furthermore, do you have any idea if I should just paste the following in my DTS without modifying?:

pcie@d900000{
status = "okay"
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
}

I am worried that the PCIe might be at a different memory range or the reset GPIO might be a different number on my target.

Thanks,
Vittorio

vittorio88 wrote:

Hello,

Thanks for the explanation.

In my case, I have a TP-Link VR200, so I am using:

  • Target System = Lantiq

  • Subtarget = XRX200

  • Target Profile = VR200v


From the PCIe output I previously attached, I don't see the WAV300 device.
Can you help understand if I don't see it because:
a) It is on a separate PCIe bus that must be reset by GPIO by modifying the DTS file
b) I am missing a PCIe driver
c) Something else I am not seeing?

Furthermore, do you have any idea if I should just paste the following in my DTS without modifying?:

pcie@d900000{
status = "okay"
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
}

I am worried that the PCIe might be at a different memory range or the reset GPIO might be a different number on my target.

Thanks,
Vittorio

Hello,
Regarding your questions:
a)PCI and PCIe are defined in base dts file "vr9.dtsi". The board dts files e.g VR200v.dts are modifications of this default configurations. In this root file "vr9.dtsi", PCI is "disabled" whereas PCIe has no status.
My suggestion here is to add the following lines to your "VR200v.dts":

        pcie@d900000 {
            status = "okay";
        };
        pci@E105400 {
            status = "okay";
        };

b) I believe the PCIe driver is there but not called. You can easily see it if you check output of "dmesg | grep pci".
If you can see lines like below then PCIe driver is actually loaded:

[    0.413534] ifx_pcie_rc_class_early_fixup: fixed pcie host bridge to pci-pci bridge
[    0.431183] ifx_pcie_fixup_resource: fixup host controller 0000:00:00.0 (15d1:0011)

c) Please post your current output of "dmesg | grep pci".
You can also browse /sys/bus/pci/devices to check what's been detected during your boot although I don't expect any difference from "lspci -v"

d)I haven't deep dived into your code but most probably PCIe ranges are fully compatible. You could double check via the original bootlog. Many times you find very useful information.

On the other side, the change for GPIO reset is very board dependant. I don't think this is your case so it's better to try it as last option.

At last but not least, are going to build a initramfs image and boot it via u-boot, right? Don't build an image and flash it directly to the rom, do your changes in LEDE code and do your trials with ramfs. This is much safer.

Good luck,
Mandrake

Mandrake wrote:

c) Please post your current output of "dmesg | grep pci".
You can also browse /sys/bus/pci/devices to check what's been detected during your boot although I don't expect any difference from "lspci -v"

Here is the output of "dmesg | grep pci"

root@vitto-rtr1:~# dmesg | grep pci
[    0.343085] PCI host bridge /fpi@10000000/pcie@d900000 ranges:
[    0.383048] pci_bus 0000:00: root bus resource [mem 0x1c000000-0x1cffffff]
[    0.389957] pci_bus 0000:00: root bus resource [io  0x1d800000-0x1d8fffff]
[    0.396900] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0]
[    0.403755] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[    0.411786] pci 0000:00:00.0: [1bef:0011] type 01 class 0x060000
[    0.411822] ifx_pcie_rc_class_early_fixup: fixed pcie host bridge to pci-pci bridge
[    0.429556] pci 0000:00:00.0: PME# supported from D0 D3hot
[    0.430072] pci 0000:01:00.0: [14c3:7650] type 00 class 0x028000
[    0.430153] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x000fffff]
[    0.430311] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
[    0.430623] pci 0000:01:00.1: [14c3:8650] type 00 class 0x0d1100
[    0.430702] pci 0000:01:00.1: reg 0x10: [mem 0x00000000-0x000fffff]
[    0.430855] pci 0000:01:00.1: supports D1
[    0.430875] pci 0000:01:00.1: PME# supported from D0 D1 D3hot D3cold
[    0.431158] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    0.431194] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 01
[    0.431249] pci 0000:00:00.0: BAR 8: assigned [mem 0x1c000000-0x1c1fffff]
[    0.437934] pci 0000:01:00.0: BAR 0: assigned [mem 0x1c000000-0x1c0fffff]
[    0.444769] pci 0000:01:00.1: BAR 0: assigned [mem 0x1c100000-0x1c1fffff]
[    0.451622] pci 0000:00:00.0: PCI bridge to [bus 01]
[    0.456648] pci 0000:00:00.0:   bridge window [mem 0x1c000000-0x1c1fffff]
[    0.463521] ifx_pcie_bios_map_irq port 0 dev 0000:00:00.0 slot 0 pin 1
[    0.470175] ifx_pcie_bios_map_irq dev 0000:00:00.0 irq 144 assigned
[    0.476527] ifx_pcie_bios_map_irq port 0 dev 0000:01:00.0 slot 0 pin 1
[    0.483193] ifx_pcie_bios_map_irq dev 0000:01:00.0 irq 144 assigned
[    0.489548] ifx_pcie_bios_map_irq port 0 dev 0000:01:00.1 slot 0 pin 1
[    0.496213] ifx_pcie_bios_map_irq dev 0000:01:00.1 irq 144 assigned

Here the OEM bootlog I copied from the OpenWRT ToH page for the TP-link VR200v:

ROM VER: 1.1.4
CFG 05

ROM VER: 1.1.4
CFG 05

DDR autotuning Rev 1.0
DDR size from 0xa0000000 - 0xa7ffffff
DDR check ok... start booting...



U-Boot 2010.06-svn11795-LANTIQ-v-2.2.67 (Jun 17 2015 - 10:15:17)

CLOCK CPU 500M RAM 250M
DRAM:  128 MiB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   Internal phy(GE) firmware version: 0x8434
vr9 Switch16384 KiB S25FL128P_UNI_64K at 0:3 is now current device
MAC: c4-e9-84-xx-xx-xx  


Type "run flash_nfs" to mount root filesystem over NFS

Hit any key to stop autoboot:  1  0 
16384 KiB S25FL128P_UNI_64K at 0:3 is now current device
16384 KiB S25FL128P_UNI_64K at 0:3 is now current device
    Uncompressing ... 
Starting kernel ...

Lantiq xDSL CPE VR9
mips_hpt_frequency = 250000000, counter_resolution = 2
Linux version 2.6.32.42 (swd@localhost.localdomain) (gcc version 4.3.3 (GCC) ) #7 Fri Jun 12 16:07:17 HKT 2015
phym = 08000000, mem = 07f00000, max_pfn = 00007f00
Reserving memory for CP1 @0xa7f00000, size 0x00100000
CPU revision is: 00019556 (MIPS 34Kc)
Determined physical RAM map:
User-defined physical RAM map:
 memory: 07f00000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
  Normal   0x00000000 -> 0x00007f00
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00007f00
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32258
Kernel command line: root=/dev/mtdblock2 rw rootfstype=squashfs ip=192.168.1.1:192.168.1.100::::eth0:on console=ttyS0,115200     ethaddr=AC:9A:96:xx:xx:xx phym=128M mem=127M panic=1     mtdparts=ifx_sflash:128k(boot),1280k(kernel),14656k(rootfs),64k(radioDECT),64k(config),64k(romfile),64k(rom),64k(radio)     -(res) vpe1_load_addr=0x87f00000 vpe1_men=1M     init=/sbin/init ethwan=
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
Writing ErrCtl register=00000000
Readback ErrCtl register=00000000
Memory: 124400k/130048k available (2919k kernel code, 5484k reserved, 716k data, 188k init, 0k highmem)
Hierarchical RCU implementation.
NR_IRQS:185
Lantiq ICU driver, version 3.0.1, (c) 2001-2011 Lantiq Deutschland GmbH
console [ttyS0] enabled
Calibrating delay loop... 332.59 BogoMIPS (lpj=1662976)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
Lantiq PCI host controller driver, version 1.2.0, (c) 2001-2011 Lantiq Deutschland GmbH
Lantiq PCIe Root Complex driver, version 1.9.1, (c) 2001-2011 Lantiq Deutschland GmbH
bio: create slab <bio-0> at 0
pci 0000:00:00.0: PME# supported from D1 D2
pci 0000:00:00.0: PME# disabled
ifx_pcie_rc_class_early_fixup port 0: fixed pcie host bridge to pci-pci bridge
pci 0000:01:00.0: PME# supported from D0 D3hot
pci 0000:01:00.0: PME# disabled
pci 0000:02:00.0: PME# supported from D0 D3hot D3cold
pci 0000:02:00.0: PME# disabled
pci 0000:02:00.1: PME# supported from D0 D1 D3hot D3cold
pci 0000:02:00.1: PME# disabled
pci 0000:01:00.0: PCI bridge, secondary bus 0000:02
pci 0000:01:00.0:   IO window: disabled
pci 0000:01:00.0:   MEM window: 0x1c000000-0x1c1fffff
pci 0000:01:00.0:   PREFETCH window: disabled
NET: Registered protocol family 8
NET: Registered protocol family 20
Switching to clocksource MIPS
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
gptu: totally 6 16-bit timers/counters
gptu: misc_register on minor 63
gptu: succeeded to request irq 118
gptu: succeeded to request irq 119
gptu: succeeded to request irq 120
gptu: succeeded to request irq 121
gptu: succeeded to request irq 122
gptu: succeeded to request irq 123
IFX DMA driver, version ifxmips_dma_core.c:v1.1.5 
,(c)2009 Infineon Technologies AG
Lantiq CGU driver, version 1.1.38, (c) 2001-2011 Lantiq Deutschland GmbH
vpe1_mem = 0
Wired TLB entries for Linux read_c0_wired() = 0
squashfs: version 4.0 (2009/01/31) Phillip Lougher
Registering mini_fo version $Id$
fuse init (API version 7.13)
msgmni has been set to 243
DMA Referenced PAGE_SIZE = 4096
Infineon Technologies DEU driver version 2.0.0 
Lantiq Technologies DEU Driver version 2.0.0
IFX DEU DES initialized (multiblock) (DMA).
Lantiq Technologies DEU Driver version 2.0.0
IFX DEU AES initialized (multiblock) (DMA).
Infineon Technologies DEU driver version 2.0.0 
IFX DEU ARC4 initialized (multiblock) (DMA).
Infineon Technologies DEU driver version 2.0.0 
IFX DEU SHA1 initialized (DMA).
Infineon Technologies DEU driver version 2.0.0 
IFX DEU MD5 initialized (DMA).
Infineon Technologies DEU driver version 2.0.0 
IFX DEU SHA1_HMAC initialized (DMA).
Infineon Technologies DEU driver version 2.0.0 
IFX DEU MD5_HMAC initialized (DMA).
DEU driver initialization complete!
io scheduler noop registered (default)
ifx_pmu_init: Major 252
Lantiq PMU driver, version 1.2.6, (c) 2001-2011 Lantiq Deutschland GmbH
Lantiq GPIO driver, version 1.3.2, (c) 2001-2011 Lantiq Deutschland GmbH
GPIO: unable to get irq 32
Infineon Technologies RCU driver version 1.1.1 
Lantiq LED Controller driver, version 1.1.3, (c) 2001-2011 Lantiq Deutschland GmbH
Lantiq (VRX) DSL CPE MEI driver, version 1.4.4, (c) 2013 Lantiq Deutschland GmbH
ttyS0 at MMIO 0xbe100c00 (irq = 105) is a IFX_ASC
Register ASC (UART) to PMCU.
Lantiq ASC (UART) driver, version 1.0.14, (c) 2001-2011 Lantiq Deutschland GmbH
brd: module loaded
loop: module loaded
Lantiq SSC driver, version 2.4.2, (c) 2001-2011 Lantiq Deutschland GmbH
Register flash device:flash0
8 cmdlinepart partitions found on MTD device ifx_sflash
Creating 8 MTD partitions on "ifx_sflash":
0x000000000000-0x000000020000 : "boot"
0x000000020000-0x000000160000 : "kernel"
0x000000160000-0x000000fb0000 : "rootfs"
mtd: partition "rootfs" set to be root filesystem
0x000000fb0000-0x000000fc0000 : "radioDECT"
0x000000fc0000-0x000000fd0000 : "config"
0x000000fd0000-0x000000fe0000 : "romfile"
0x000000fe0000-0x000000ff0000 : "rom"
0x000000ff0000-0x000001000000 : "radio"
Lantiq SPI flash driver, version 1.2.4, (c) 2001-2011 Lantiq Deutschland GmbH
ifxmips_gpio: Pin ID 10 (port 0, pin 10) has been reserved by module SFLASH from kernel module!
ifx_dataflash_init status error 255
Lantiq USIF-SPI driver, version 1.3.2, (c) 2001-2011 Lantiq Deutschland GmbH
PPP generic driver version 2.4.2
NET: Registered protocol family 24
IFX SWITCH API, Version 1.2.5
SWAPI: Registered character device [switch_api] with major no [81]
Switch API: PCE MicroCode loaded !!
Init IFX_ETHSW_Switch_API_procModule successfully.
Init GPHY Driver for A12 !!
res = 878f2380
Registered led device: broadband_led
Registered led device: internet_led
Registered led device: usb1_link_led
Registered led device: usb2_link_led
Lantiq LED driver, version 1.1.4, (c) 2001-2011 Lantiq Deutschland GmbH
Mirror/redirect action on
u32 classifier
    Actions configured 
Netfilter messages via NETLINK v0.30.
nf_conntrack version 0.5.0 (1946 buckets, 10000 max)
CONFIG_NF_CT_ACCT is deprecated and will be removed soon. Please use
nf_conntrack.acct=1 kernel parameter, acct=1 nf_conntrack module option or
sysctl net.netfilter.nf_conntrack_acct=1 to enable it.
GRE over IPv4 tunneling driver
ip_tables: (C) 2000-2006 Netfilter Core Team
TCP cubic registered
NET: Registered protocol family 10
ip6_tables: (C) 2000-2006 Netfilter Core Team
IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
NET: Registered protocol family 15
Ebtables v2.0 registered
NET: Registered protocol family 8
atmpvc_init() failed with -17
KOAM is loaded successfully.
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
VFS: Mounted root (squashfs filesystem) readonly on device 31:2.
Freeing unused kernel memory: 188k freed

starting pid 195, tty '': '/etc/init.d/rcS'
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
IFXUSB: ifxusb_hcd: version 3.2 B130116
Chip Version :0002 BurstSize=4
IFXUSB: USB core #0 soft-reset
IFXUSB: USB core #0 soft-reset
ifxusb_hcd ifxusb_hcd: IFX USB Controller
ifxusb_hcd ifxusb_hcd: new USB bus registered, assigned bus number 1
ifxusb_hcd ifxusb_hcd: irq 54, io mem 0xbe101000
IFXUSB: Init: Power Port (0)
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
IFXUSB: USB core #1 soft-reset
IFXUSB: USB core #1 soft-reset
ifxusb_hcd ifxusb_hcd: IFX USB Controller
ifxusb_hcd ifxusb_hcd: new USB bus registered, assigned bus number 2
ifxusb_hcd ifxusb_hcd: irq 83, io mem 0xbe106000
IFXUSB: Init: Power Port (0)
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
dns_init
domain_name:tplinkmodem.net
GPHY FIRMWARE LOAD SUCCESSFULLY AT ADDR (GE MODE) : 803f0000
IFX GPHY driver GE Mode, version ifxmips_xrx_gphy: V1.1.1 - Firmware: 8434

Please press Enter to activate this console. [ dm_readFile ] 2042:  can not open xml file /var/tmp/pc/reduced_data_model.xml!, about to open file /etc/reduced_data_model.xml
[ dm_loadCfg ] 2254:  software version is not match, in config, version = 0
[ dm_readFile ] 2042:  can not open xml file /var/tmp/pc/default_config.xml!, about to open file /etc/default_config.xml
[ parseConfigNode ] 522:  Meet unrecognized object node "PhDDNSCfg", skip the node
[ parseConfigNode ] 527:  Meet unrecognized parameter node "PhDDNSCfg", skip the node
[ parseConfigNode ] 522:  Meet unrecognized object node "X_TP_L2TP_Connection", skip the node
[ parseConfigNode ] 522:  Meet unrecognized object node "X_TP_PPTP_Connection", skip the node
[ parseConfigNode ] 522:  Meet unrecognized object node "QueueManagement", skip the node
[ parseConfigNode ] 522:  Meet unrecognized object node "X_TP_IPTV", skip the node
[ freshLineState ] 627:  Can not open /dev/dsl_cpe_api for reading!
[ freshLineState ] 627:  Can not open /dev/dsl_cpe_api for reading!
Loading E5 (MII0/1) driver ...... MAC-0: c4-e9-84-xx-xx-xx
MAC-1: c4-e9-84-xx-xx-xy
Succeeded!
PPE datapath driver info:
  Version ID: 64.3.3.1.0.1.1
  Family    : VR9
  DR Type   : Normal Data Path | Indirect-Fast Path
  Interface : MII0 | MII1
  Mode      : Routing
  Release   : 0.1.1
PPE 0 firmware info:
  Version ID: 7.3.2.11.1
  Family    : VR9
  FW Package: E1
  Release   : 2.11.1
PPE 1 firmware info:
  Version ID: 7.5.2.11.1
  Family    : VR9
  FW Package: D5
  Release   : 2.11.1
PPE firmware feature:
  ATM/PTM TC-Layer Bonding        Support
  L2 Trunking                     Support
  Packet Acceleration             Support
  IPv4                            Support
  IPv6                            Support
  6RD                             Support
  DS-Lite                        [ freshLineState ] 627:  Can not open /dev/dsl_cpe_api for reading!
[ freshLineState ] 627:  Can not open /dev/dsl_cpe_api for reading!
[ updateDslL3Forwarding ] 619:  ###ipv4 default route intf is NO_INTERFACE, ipv6 is NO_INTERFACE.

IFXOS, Version 1.5.17 (c) Copyright 2009, Lantiq Deutschland GmbH


Lantiq CPE API Driver version: DSL CPE API V4.16.6-pd1

Predefined debug level: 3
PPA API --- init successfully
ifx_ppa_init - init succeeded
wlan0     no private ioctls.

wlan0.0   no private ioctls.

wlan0.0   no private ioctls.

ra0       no private ioctls.

ra1       no private ioctls.

sendto: No such file or directory
pid 264 send 2001 error
ddns_ud> start enable = 0, server: , auth: , request 
ioctl: No such device
device eth0 entered promiscuous mode
wlan0     no private ioctls.

wlan0.0   no private ioctls.

ra0       no private ioctls.

ra1       no private ioctls.

device eth0 left promiscuous mode
device eth0.2 entered promiscuous mode
device eth0 entered promiscuous mode
device eth0.3 entered promiscuous mode
device eth0.4 entered promiscuous mode
device eth0.5 entered promiscuous mode
[4294682866] mtlk0(mtlk_cdev_init:355): Max nodex set to 1048575
[4294684526] mtlk0(__mtlk_print_endianess:4789): The system is Big endian (0xbeadfeed, 0xedfeadbe)
[4294684526] mtlk0(mtlk_fast_mem_print_info:114): Using normal memory for hot context
[4294684536] mtlk0(_mtlk_df_user_alloc_devname:8501): NDEV Name pattern: wlan%d
Register WLAN SWITCH function
Register wlan 2.4G WPS function
[4294684546] mtlk0(mtlk_core_pdb_fast_handles_open:42): Open Hot-path parameters
[4294684556] mtlk<4>(_mtlk_mmb_cleanup_reset_mac:3125): FW CPU reset is done
mtlk 0000:00:0e.0: firmware: requesting cal_wlan0.bin
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=196
FIRMWARE=cal_wlan0.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
[4294684886] mtlk<3>(_mtlk_df_fw_request_firmware:63): Firmware (cal_wlan0.bin) is missing
mtlk 0000:00:0e.0: firmware: requesting ap_upper_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=197
FIRMWARE=cal_wlan0.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=198
FIRMWARE=ap_upper_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting contr_lm.bin
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=199
FIRMWARE=ap_upper_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=200
FIRMWARE=contr_lm.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=201
FIRMWARE=contr_lm.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
[4294685976] mtlk0(_mtlk_core_start:3455): CID-0000: ap_upper_wave300.bin: @@@ VERSION INFO @@@ version number: 3.4.2.40.05_NoPsTxCancel_r4005 MIPS:  Upper CPU(TMC AGG AP) interface: PCI  phy type: real phy on Jul  2 2014 at 16:00:39@@@ END @@@
contr_lm.bin: @@@ VERSION INFO @@@ version number: 3.4.2.40.05_NoPsTxCancel_r4005 MIPS:  Lower MAC  interface: --  phy type: real phy on Jul  2 2014 at 15:59:50@@@ END @@@

[4294686026] mtlk0(mtlk_eeprom_check_ee_data:1353): Options mask is 0x00
[4294686036] mtlk0(load_default_hw_table:2041): HW configuration is 3X3
[4294686056] mtlk0(_mtlk_df_user_ppa_register:541): PPA device function is registered (id=3)
[4294686086] mtlk0(_mtlk_core_mbss_add_vap:7695): CID-0000: Got PRM_ID_VAP_ADD
[4294686086] mtlk0(_mtlk_df_user_alloc_devname:8501): NDEV Name pattern: wlan0.0
Register WLAN SWITCH function
Register wlan 2.4G WPS function
[4294686096] mtlk0(mtlk_core_pdb_fast_handles_open:42): Open Hot-path parameters
[4294686106] mtlk0(_mtlk_core_start:3455): CID-0001: ap_upper_wave300.bin: @@@ VERSION INFO @@@ version number: 3.4.2.40.05_NoPsTxCancel_r4005 MIPS:  Upper CPU(TMC AGG AP) interface: PCI  phy type: real phy on Jul  2 2014 at 16:00:39@@@ END @@@
contr_lm.bin: @@@ VERSION INFO @@@ version number: 3.4.2.40.05_NoPsTxCancel_r4005 MIPS:  Lower MAC  interface: --  phy type: real phy on Jul  2 2014 at 15:59:50@@@ END @@@

[4294686156] mtlk0(_mtlk_core_mbss_add_vap:7713): CID-0000: VAP#1 added
[4294686726] mtlk<4>(_mtlk_core_async_clb:481): Requested ability 0x1000084 is disabled or never was registered
Interface doesn't accept private ioctl...
sEthVlan (8BE0): Device or resource busy
[4294686746] mtlk0(_mtlk_core_mbss_is_rescan_exempted:2757): Re-Scan cannot be exempted (AOCS type = 2)
[4294686756] mtlk0(mtlk_mbss_init:3447): CID-0000: _mtlk_core_mbss_check_activation_params returned successfully
[4294686766] mtlk0(_mtlk_mbss_preactivate:2919): CID-0000: Pre-activation configured parameters:
[4294686776] mtlk0(mtlk_core_configuration_dump:5010): CID-0000: Country             : DE
[4294686776] mtlk0(mtlk_core_configuration_dump:5011): CID-0000: Domain              : 48
[4294686786] mtlk0(mtlk_core_configuration_dump:5012): CID-0000: Network mode        : 802.11bgn
[4294686796] mtlk0(mtlk_core_configuration_dump:5013): CID-0000: Band                : 2.4
[4294686806] mtlk0(mtlk_core_configuration_dump:5014): CID-0000: Prog Model Spectrum : 40 MHz
[4294686816] mtlk0(mtlk_core_configuration_dump:5015): CID-0000: Selected Spectrum   : 40 MHz
[4294686826] mtlk0(mtlk_core_configuration_dump:5016): CID-0000: User Sel. Spectrum  : 40 MHz
[4294686826] mtlk0(mtlk_core_configuration_dump:5017): CID-0000: Bonding             : upper
[4294686836] mtlk0(mtlk_core_configuration_dump:5018): CID-0000: HT mode             : enabled
[4294686846] mtlk0(mtlk_core_configuration_dump:5020): CID-0000: SM enabled          : enabled
[4294686856] mtlk0(mtlk_aocs_set_config_frequency_band:3151): Overriding AOCS type for 2.4 GHz (NONE)
[4294686866] mtlk0(_mtlk_mbss_preactivate:2934): CID-0000: Start AOCS
[4294686866] mtlk0(_mtlk_mbss_preactivate:2947): CID-0000: ap_scan_band_cfg = 1
[4294686876] mtlk0(_mtlk_core_perform_initial_scan:2703): CID-0000: Scan started 40MHz
[4294686886] mtlk0(do_scan:596): Starting normal scan...
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_CB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=205
FIRMWARE=ProgModel_BG_CB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_CB_38_RevB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=207
FIRMWARE=ProgModel_BG_CB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=206
FIRMWARE=ProgModel_BG_CB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
invoke /etc/hotplug/firmware.agent ()
open DNS error: No such file or directory
[ oal_sys_getOldTZInfo ] 392:  Open TZ file error!
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=208
FIRMWARE=ProgModel_BG_CB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
[4294689196] mtlk0(_mtlk_core_perform_initial_scan:2703): CID-0000: Scan started 20MHz
[4294689206] mtlk0(do_scan:596): Starting normal scan...
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_nCB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=209
FIRMWARE=ProgModel_BG_nCB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_nCB_38_RevB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=210
FIRMWARE=ProgModel_BG_nCB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=211
FIRMWARE=ProgModel_BG_nCB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
invoke /etc/hotplug/firmware.agent ()
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=212
FIRMWARE=ProgModel_BG_nCB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_CB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=213
FIRMWARE=ProgModel_BG_CB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_CB_38_RevB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=214
FIRMWARE=ProgModel_BG_CB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=215
FIRMWARE=ProgModel_BG_CB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
invoke /etc/hotplug/firmware.agent ()
[4294692806] mtlk0(prepare_progmodel_string:310): CID-0000: ProgModel: ProgModel_BG_CB_38_RevB_wave300.bin; version 2126

[4294692816] mtlk0(_mtlk_mbss_preactivate:3049): CID-0000: Pre-activation selected parameters:
[4294692826] mtlk0(mtlk_core_configuration_dump:5010): CID-0000: Country             : DE
[4294692836] mtlk0(mtlk_core_configuration_dump:5011): CID-0000: Domain              : 48
[4294692846] mtlk0(mtlk_core_configuration_dump:5012): CID-0000: Network mode        : 802.11bgn
[4294692846] mtlk0(mtlk_core_configuration_dump:5013): CID-0000: Band                : 2.4
[4294692856] mtlk0(mtlk_core_configuration_dump:5014): CID-0000: Prog Model Spectrum : 40 MHz
[4294692866] mtlk0(mtlk_core_configuration_dump:5015): CID-0000: Selected Spectrum   : 40 MHz
[4294692876] mtlk0(mtlk_core_configuration_dump:5016): CID-0000: User Sel. Spectrum  : 40 MHz
[4294692886] mtlk0(mtlk_core_configuration_dump:5017): CID-0000: Bonding             : lower
[4294692886] mtlk0(mtlk_core_configuration_dump:5018): CID-0000: HT mode             : enabled
[4294692896] mtlk0(mtlk_core_configuration_dump:5020): CID-0000: SM enabled          : enabled
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=216
FIRMWARE=ProgModel_BG_CB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplu[4294692986] mtlk0(_mtlk_channels_frequency_element_dump:3008): CID-0000: Channel        : 5
[4294692996] mtlk0(_mtlk_channels_frequency_element_dump:3009): CID-0000: ChannelACT     : 0
[4294693006] mtlk0(_mtlk_channels_frequency_element_dump:3010): CID-0000: ScanType       : 0
[4294693006] mtlk0(_mtlk_channels_frequency_element_dump:3011): CID-0000: ChannelSwCnt   : 0
[4294693016] mtlk0(_mtlk_channels_frequency_element_dump:3012): CID-0000: SwitchMode     : 48
[4294693026] mtlk0(_mtlk_channels_frequency_element_dump:3013): CID-0000: SmRequired     : 0
[4294693036] mtlk0(_mtlk_channels_frequency_element_dump:3014): CID-0000: CbTxPowerLim   : 104
[4294693046] mtlk0(_mtlk_channels_frequency_element_dump:3015): CID-0000: nCbTxPowerLim  : 104
[4294693056] mtlk0(_mtlk_channels_frequency_element_dump:3016): CID-0000: AntennaGain    : 0
[4294693056] mtlk0(_mtlk_channels_frequency_element_dump:3017): CID-0000: ChannelLoad    : 0
[4294693066] mtlk0(_mtlk_channels_frequency_element_dump:3019): CID-0000: MaxTxPwr[0]    : 0
[4294693076] mtlk0(_mtlk_channels_frequency_element_dump:3020): CID-0000: MaxTxPwrIdx[0] : 0
[4294693086] mtlk0(_mtlk_channels_frequency_element_dump:3019): CID-0000: MaxTxPwr[1]    : 0
[4294693096] mtlk0(_mtlk_channels_frequency_element_dump:3020): CID-0000: MaxTxPwrIdx[1] : 0
[4294693096] mtlk0(_mtlk_channels_frequency_element_dump:3019): CID-0000: MaxTxPwr[2]    : 0
[4294693106] mtlk0(_mtlk_channels_frequency_element_dump:3020): CID-0000: MaxTxPwrIdx[2] : 0
[4294693116] mtlk0(_mtlk_channels_frequency_element_dump:3022): CID-0000: SwitchType     : 0
[4294693126] mtlk0(_mtlk_mbss_send_preactivate_req:2831): CID-0000: Sending UMI FW Preactivation
g/firmware.agent ()
[4294693166] mtlk<3>(mtlk_core_set_force_ncb:6615): CID-0000: Error returned for UMI_FORCE_NCB request to MAC (err=2)
[4294693176] mtlk0(_mtlk_mbss_preactivate:3078): CID-0000: _mtlk_mbss_preactivate returned successfully
[4294693186] mtlk0(mtlk_mbss_init:3454): CID-0000: _mtlk_mbss_preactivate_if_needed returned successfully
[4294693196] mtlk0(mtlk_mbss_send_vap_activate:3142): CID-0000: Entering mtlk_mbss_send_vap_activate
[4294693206] mtlk0(mtlk_mbss_send_vap_activate:3149): CID-0000: Start activation
[4294693216] mtlk0(__mtlk_dump:66): dump of UMI_ACTIVATE_VAP:
cp= 0x86e7b694 l=152
0000:  c4 e9 84 xx xx xx 00 00  02 00 00 05 00 0f 00 00 
0010:  aa 0f 00 00 55 00 00 00  ff ff ff ff 0c 00 00 00 
0020:  54 50 2d 4c 49 4e 4b 5f  34 39 33 35 00 00 00 00 
0030:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0040:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0050:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0060:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0070:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0080:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0090:  00 00 00 00 09 00 00 00  
[4294693266] mtlk0(mtlk_mbss_send_vap_activate:3211): CID-0000: UMI_ACTIVATE_VAP
[4294693276] mtlk0(mtlk_mbss_send_vap_activate:3212): CID-0000:     sBSSID = C4:E9:84:xx:xx:xx
[4294693286] mtlk0(mtlk_mbss_send_vap_activate:3213): CID-0000:     sSSID = TP-LINK_4935
[4294693286] mtlk0(mtlk_mbss_send_vap_activate:3214): CID-0000:     Hidden = 0
[4294693296] mtlk0(__mtlk_dump:66):     sRSNie = 
cp= 0x86e7b6d8 l=80
0000:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0010:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0020:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0030:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0040:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
[4294693326] mtlk0(mtlk_mbss_send_vap_activate:3218): CID-0000: mtlk_txmm_msg_send, MsgId = 0x453, ESSID = TP-LINK_4935
[4294693336] mtlk0(mtlk_mbss_init:3461): CID-0000: mtlk_mbss_send_vap_activate returned successfully
Configuration file: /var/Wireless/wlan0.ap_bss
Using interface wlan0 with hwaddr c4:e9:84:xx:xx:xx and ssid "TP-LINK_4935"
WPS: Converting display to virtual_display for WPS 2.0 compliance
WPS: Converting push_button to virtual_push_button f[4294694416] mtlk0(_mtlk_core_mbss_is_rescan_exempted:2760): Re-Scan cannot be exempted (20/40 is active)
[4294694426] mtlk0(mtlk_mbss_init:3447): CID-0000: _mtlk_core_mbss_check_activation_params returned successfully
[4294694436] mtlk0(_mtlk_mbss_preactivate:2919): CID-0000: Pre-activation configured parameters:
[4294694446] mtlk0(mtlk_core_configuration_dump:5010): CID-0000: Country             : DE
[4294694456] mtlk0(mtlk_core_configuration_dump:5011): CID-0000: Domain              : 48
[4294694456] mtlk0(mtlk_core_configuration_dump:5012): CID-0000: Network mode        : 802.11bgn
[4294694466] mtlk0(mtlk_core_configuration_dump:5013): CID-0000: Band                : 2.4
[4294694476] mtlk0(mtlk_core_configuration_dump:5014): CID-0000: Prog Model Spectrum : 40 MHz
[4294694486] mtlk0(mtlk_core_configuration_dump:5015): CID-0000: Selected Spectrum   : 40 MHz
[4294694496] mtlk0(mtlk_core_configuration_dump:5016): CID-0000: User Sel. Spectrum  : 40 MHz
[4294694506] mtlk0(mtlk_core_configuration_dump:5017): CID-0000: Bonding             : upper
[4294694506] mtlk0(mtlk_core_configuration_dump:5018): CID-0000: HT mode             : enabled
[4294694516] mtlk0(mtlk_core_configuration_dump:5020): CID-0000: SM enabled          : enabled
[4294694526] mtlk0(mtlk_aocs_set_config_frequency_band:3151): Overriding AOCS type for 2.4 GHz (NONE)
[4294694536] mtlk0(_mtlk_mbss_preactivate:2934): CID-0000: Start AOCS
[4294694546] mtlk0(_mtlk_mbss_preactivate:2947): CID-0000: ap_scan_band_cfg = 1
[4294694546] mtlk0(_mtlk_core_perform_initial_scan:2703): CID-0000: Scan started 40MHz
[4294694556] mtlk0(do_scan:596): Starting normal scan...
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_CB_wave300.bin
or WPS 2.0 compliance
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=217
FIRMWARE=ProgModel_BG_CB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_CB_38_RevB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=218
FIRMWARE=ProgModel_BG_CB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=219
FIRMWARE=ProgModel_BG_CB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=220
FIRMWARE=ProgModel_BG_CB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
[4294696036] mtlk0(_mtlk_core_perform_initial_scan:2703): CID-0000: Scan started 20MHz
[4294696036] mtlk0(do_scan:596): Starting normal scan...
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_nCB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=221
FIRMWARE=ProgModel_BG_nCB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_nCB_38_RevB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=223
FIRMWARE=ProgModel_BG_nCB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=222
FIRMWARE=ProgModel_BG_nCB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
invoke /etc/hotplug/firmware.agent ()
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=224
FIRMWARE=ProgModel_BG_nCB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_CB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=225
FIRMWARE=ProgModel_BG_CB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
mtlk 0000:00:0e.0: firmware: requesting ProgModel_BG_CB_38_RevB_wave300.bin
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=226
FIRMWARE=ProgModel_BG_CB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
arguments (firmware) env (DEBUG=yes
ACTION=add
OLDPWD=/
HOME=/
SEQNUM=227
FIRMWARE=ProgModel_BG_CB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
[4294698376] mtlk0(prepare_progmodel_string:310): CID-0000: ProgModel: ProgModel_BG_CB_38_RevB_wave300.bin; version 2126

[4294698386] mtlk0(_mtlk_mbss_preactivate:3049): CID-0000: Pre-activation selected parameters:
[4294698396] mtlk0(mtlk_core_configuration_dump:5010): CID-0000: Country             : DE
[4294698406] mtlk0(mtlk_core_configuration_dump:5011): CID-0000: Domain              : 48
[4294698416] mtlk0(mtlk_core_configuration_dump:5012): CID-0000: Network mode        : 802.11bgn
[4294698426] mtlk0(mtlk_core_configuration_dump:5013): CID-0000: Band                : 2.4
[4294698426] mtlk0(mtlk_core_configuration_dump:5014): CID-0000: Prog Model Spectrum : 40 MHz
[4294698436] mtlk0(mtlk_core_configuration_dump:5015): CID-0000: Selected Spectrum   : 40 MHz
[4294698446] mtlk0(mtlk_core_configuration_dump:5016): CID-0000: User Sel. Spectrum  : 40 MHz
[4294698456] mtlk0(mtlk_core_configuration_dump:5017): CID-0000: Bonding             : lower
[4294698466] mtlk0(mtlk_core_configuration_dump:5018): CID-0000: HT mode             : enabled
[4294698476] mtlk0(mtlk_core_configuration_dump:5020): CID-0000: SM enabled          : enabled
arguments (firmware) env (DEBUG=yes
ACTION=remove
OLDPWD=/
HOME=/
SEQNUM=228
FIRMWARE=ProgModel_BG_CB_38_RevB_wave300.bin
DEVPATH=/devices/pci0000:00/0000:00:0e.0/firmware/0000:00:0e.0
SUBSYSTEM=firmware
PATH=/bin:/sbin:/usr/sbin:/usr/bin
TIMEOUT=60
PWD=/etc/hotplug)
invoke /etc/hotplug/firmware.agent ()
[4294698576] mtlk0(_mtlk_channels_frequency_element_dump:3008): CID-0000: Channel        : 5
[4294698576] mtlk0(_mtlk_channels_frequency_element_dump:3009): CID-0000: ChannelACT     : 0
[4294698586] mtlk0(_mtlk_channels_frequency_element_dump:3010): CID-0000: ScanType       : 0
[4294698596] mtlk0(_mtlk_channels_frequency_element_dump:3011): CID-0000: ChannelSwCnt   : 0
[4294698606] mtlk0(_mtlk_channels_frequency_element_dump:3012): CID-0000: SwitchMode     : 48
[4294698616] mtlk0(_mtlk_channels_frequency_element_dump:3013): CID-0000: SmRequired     : 0
[4294698616] mtlk0(_mtlk_channels_frequency_element_dump:3014): CID-0000: CbTxPowerLim   : 104
[4294698626] mtlk0(_mtlk_channels_frequency_element_dump:3015): CID-0000: nCbTxPowerLim  : 104
[4294698636] mtlk0(_mtlk_channels_frequency_element_dump:3016): CID-0000: AntennaGain    : 0
[4294698646] mtlk0(_mtlk_channels_frequency_element_dump:3017): CID-0000: ChannelLoad    : 0
[4294698656] mtlk0(_mtlk_channels_frequency_element_dump:3019): CID-0000: MaxTxPwr[0]    : 0
[4294698666] mtlk0(_mtlk_channels_frequency_element_dump:3020): CID-0000: MaxTxPwrIdx[0] : 0
[4294698666] mtlk0(_mtlk_channels_frequency_element_dump:3019): CID-0000: MaxTxPwr[1]    : 0
[4294698676] mtlk0(_mtlk_channels_frequency_element_dump:3020): CID-0000: MaxTxPwrIdx[1] : 0
[4294698686] mtlk0(_mtlk_channels_frequency_element_dump:3019): CID-0000: MaxTxPwr[2]    : 0
[4294698696] mtlk0(_mtlk_channels_frequency_element_dump:3020): CID-0000: MaxTxPwrIdx[2] : 0
[4294698706] mtlk0(_mtlk_channels_frequency_element_dump:3022): CID-0000: SwitchType     : 0
[4294698706] mtlk0(_mtlk_mbss_send_preactivate_req:2831): CID-0000: Sending UMI FW Preactivation
[4294698756] mtlk<3>(mtlk_core_set_force_ncb:6615): CID-0000: Error returned for UMI_FORCE_NCB request to MAC (err=2)
[4294698766] mtlk0(_mtlk_mbss_preactivate:3078): CID-0000: _mtlk_mbss_preactivate returned successfully
[4294698776] mtlk0(mtlk_mbss_init:3454): CID-0000: _mtlk_mbss_preactivate_if_needed returned successfully
[4294698776] mtlk0(mtlk_mbss_send_vap_activate:3142): CID-0000: Entering mtlk_mbss_send_vap_activate
[4294698786] mtlk0(mtlk_mbss_send_vap_activate:3149): CID-0000: Start activation
[4294698796] mtlk0(__mtlk_dump:66): dump of UMI_ACTIVATE_VAP:
cp= 0x86e78dcc l=152
0000:  c4 e9 84 xx xx xx 00 00  02 00 00 05 00 0f 00 00 
0010:  aa 0f 00 00 55 00 00 00  ff ff ff ff 0c 00 00 00 
0020:  54 50 2d 4c 49 4e 4b 5f  34 39 33 35 00 00 00 00 
0030:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0040:  00 00 00 00 30 14 01 00  00 0f ac 04 01 00 00 0f 
0050:  ac 04 01 00 00 0f ac 02  00 00 00 00 00 00 00 00 
0060:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0070:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0080:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0090:  00 00 00 00 09 00 00 00  
[4294698856] mtlk0(mtlk_mbss_send_vap_activate:3211): CID-0000: UMI_ACTIVATE_VAP
[4294698856] mtlk0(mtlk_mbss_send_vap_activate:3212): CID-0000:     sBSSID = C4:E9:84:xx:xx:xx
[4294698866] mtlk0(mtlk_mbss_send_vap_activate:3213): CID-0000:     sSSID = TP-LINK_4935
[4294698876] mtlk0(mtlk_mbss_send_vap_activate:3214): CID-0000:     Hidden = 0
[4294698886] mtlk0(__mtlk_dump:66):     sRSNie = 
cp= 0x86e78e10 l=80
0000:  30 14 01 00 00 0f ac 04  01 00 00 0f ac 04 01 00 
0010:  00 0f ac 02 00 00 00 00  00 00 00 00 00 00 00 00 
0020:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0030:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
0040:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
[4294698916] mtlk0(mtlk_mbss_send_vap_activate:3218): CID-0000: mtlk_txmm_msg_send, MsgId = 0x453, ESSID = TP-LINK_4935
[4294698926] mtlk0(mtlk_mbss_init:3461): CID-0000: mtlk_mbss_send_vap_activate returned successfully
device wlan0 entered promiscuous mode
brctl: iface lq0: No such device
device wlan0.0 entered promiscuous mode


=== pAd = c0e38000, size = 1337288 ===

<-- RTMPAllocTxRxRingMemory, Status=0
<-- RTMPAllocAdapterBlock, Status=0
device_id =0x7650
MACVersion = 0x76502000
load fw spent 20ms
RX DESC a59e5000 size = 4096
RX1 DESC a59e6000 size = 4096
cfg_mode=14
cfg_mode=14
1. Phy Mode = 49
2. Phy Mode = 49
ext_pa_current_setting = 1
MT76x0_TssiTableAdjust: upper_bound = 0x7F decimal: 127
MT76x0_TssiTableAdjust: lower_bound = 0xFFFFFF80 decimal: -128
*** MT76x0_TssiTableAdjust: A Tssi[-7 .. +7] = -128 -128 -128 -9 -15 5 -4 * 0 * 17 11 127 127 127 127 -128, offset=-6, tuning=1
MT76x0_TssiTableAdjust: A Tssi[-7 .. +7] = -128 -128 -128 -15 -21 -1 -10 * -6 * 11 5 121 121 121 121 122, offset=-6, tuning=1
mp_temperature=0xffffffff, step = +0
MT76x0_TssiTableAdjust: upper_bound = 0x7F decimal: 127
MT76x0_TssiTableAdjust: lower_bound = 0xFFFFFF80 decimal: -128
*** MT76x0_TssiTableAdjust: A Tssi[-7 .. +7] = -128 -128 -128 -9 -15 5 -4 * -6 * 17 11 127 127 127 127 -6, offset=-6, tuning=1
MT76x0_TssiTableAdjust: A Tssi[-7 .. +7] = -128 -128 -128 -15 -21 -1 -10 * -6 * 11 5 121 121 121 121 -12, offset=-6, tuning=1
mp_temperature=0xffffffff, step = +0
3. Phy Mode = 49
bAutoTxAgcG = 1
MCS Set = ff 00 00 00 01
@@@ ed_monitor_init : ===>
@@@ ed_monitor_init : <===
Main bssid = c4:e9:84:xx:xx:xx
<==== rt28xx_init, Status=0
@@@ ed_monitor_exit : ===>
@@@ ed_monitor_exit : <===
@@@ ed_monitor_init : ===>
@@@ ed_monitor_init : <===
Register wlan 5G WPS function
device ra0 entered promiscuous mode
device apcli0 entered promiscuous mode
brctl: bridge br0: Device or resource busy
device ra1 entered promiscuous mode
WLAN-Start wlNetlinkTool
Waiting for Wireless Events from interfaces...
sendto: No such file or directory
pid 264 send 2030 error
sendto: No such file or directory
pid 264 send 2004 error
[ startDslCpeCtl ] 1519:  /usr/sbin/dsl_cpe_control -f/firmware/xcpe_hw.bin -i10_00_10_00_00_04_01_07 -M2 -T1:0x1:0x1_2:0x1:0x1 -A/firmware/vdsl.scr -a/firmware/adsl.scr -n/firmware/xdslrc.sh -t192.168.1.1 -d192.168.1.1 &
DTI Agent Start - @(#)Debug and Trace Interface, DTI Agent 1.1.4
Send Fct Reg[00] - name: not_used, avail: No
Send Fct Reg[01] - name: not_used, avail: No
Send Fct Reg[02] - name: not_used, avail: No
Send Fct Reg[03] - name: local_loop, avail: Yes
DTI CLI - sendFct register IF: 0 name: DSL_API
DTI CLI - sendFct register, IF = 0, CLI name = <DSL_API>
listen thr - enter.
DTI Connection Open - SERVER 192.168.1.1:9000.
MEI_DRV: MEI_IfxRequestIrq(IRQ = 55, .., ), lock = 1


nReturn=0 



nReturn=4 nDslMode=0



nReturn=0 nDslMode=1



[ apiSetAdslTypeAndAnnexType ] 1547:  /firmware/dsl_cpe_pipe.sh g997xtusecs 10 00 10 00 00 04 01 07
nReturn=0 



nReturn=0 nDslMode=0 nDirection=0



nReturn=0 nDslMode=0 nDirection=1



nReturn=0 nDslMode=1 nDirection=0



nReturn=0 nDslMode=1 nDirection=1



nReturn=0 nDirection=0



nReturn=0 nDirection=1



nReturn=0 



iptables: Bad rule (does a matching rule exist in that chain?).
radvd starting
[ getPidFromPidFile ] 112:  Cann't open file: /var/run/zebra.pid.
[ getPidFromPidFile ] 112:  Cann't open file: /var/run/ripd.pid.
[4294713556] mtlk0(_mtlk_df_user_ppa_unregister:566): PPA device function is unregistered (id=3)
ifx_ppa_init - init succeeded
[4294713956] mtlk0(_mtlk_df_user_ppa_register:541): PPA device function is registered (id=3)
[4294713986] mtlk0(_mtlk_df_user_ppa_register:541): PPA device function is registered (id=4)
[4294714306] mtlk0(_mtlk_df_user_ppa_unregister:566): PPA device function is unregistered (id=4)
iptables: Bad rule (does a matching rule exist in that chain?).
[4294714766] mtlk0(_mtlk_df_user_ppa_unregister:566): PPA device function is unregistered (id=3)
nReturn=0 nData="E843 0003 0001 0009 "

nReturn=0 nData="5048 0000 0001 "

nReturn=0 nData="1762 0000 0001 "



ifx_ppa_init - init succeeded
[4294715166] mtlk0(_mtlk_df_user_ppa_register:541): PPA device function is registered (id=3)
[4294715186] mtlk0(_mtlk_df_user_ppa_register:541): PPA device function is registered (id=4)
[4294715516] mtlk0(_mtlk_df_user_ppa_unregister:566): PPA device function is unregistered (id=4)
iptables: Bad rule (does a matching rule exist in that chain?).
[4294715936] mtlk0(_mtlk_df_user_ppa_unregister:566): PPA device function is unregistered (id=3)
ifx_ppa_init - init succeeded
[4294716336] mtlk0(_mtlk_df_user_ppa_register:541): PPA device function is registered (id=3)
[4294716366] mtlk0(_mtlk_df_user_ppa_register:541): PPA device function is registered (id=4)
[4294716686] mtlk0(_mtlk_df_user_ppa_unregister:566): PPA device function is unregistered (id=4)
iptables: Bad rule (does a matching rule exist in that chain?).
ip6tables: Bad rule (does a matching rule exist in that chain?).
TAPI, Version 4.10.4.2, (c) 2001-2013 Lantiq Deutschland GmbH
Lantiq KPI2UDP driver, version 3.0.4.0, (c) 2008-2011 Lantiq Deutschland GmbH
[ rsl_setStorageServiceObj ] 1394:  mountFlag is 3,We start usb server

killall: ushare: no process killed
Lantiq MIPS34KEc MPS driver, version 2.2.7.0, (c) 2006-2010 Lantiq Deutschland GmbH
Lantiq VMMC device driver, version 1.15.0.4, (c) 2006-2013 Lantiq Deutschland GmbH
voip: module license 'unspecified' taints kernel.
Disabling lock debugging due to kernel taint
iptables: Bad rule (does a matching rule exist in that chain?).
uShare (version 1.1a), a lightweight UPnP A/V and DLNA Media Server.
Benjamin Zores (C) 2005-2007, for GeeXboX Team.
See REDACTED for updates.
iptables: Bad rule (does a matching rule exist in that chain?).
ip6tables: Bad rule (does a matching rule exist in that chain?).
ifxmips_gpio: Pin ID 39 (port 2, pin 7) has been reserved by module TEST from kernel module!
kcg 333 :GPL NetUSB up!
[#DECT# LOG LTQ_DECT_STACK_RFPI_Get:L356]DECT STACK: RFPI: 0x02:0xFFFFFF8A:0x60:0xFFFFFFC1:0x60
[DectTk] <_Main>  The number of registration is: :0
[DectTk] <_Main>  The Base pin is: :4941080
kc  227 : init_DebugD end
INFO17ED: NetUSB 1.02.66, 00020620 : Apr 30 2015 11:15:52
INFO17EF: 7437: Archer VR200v :Archer VR200v 
INFO17F0:  AUTH ISOC
INFO17F1:  filterAudio
kc   90 : run_telnetDBGDServer start 
usbcore: registered new interface driver KC NetUSB General Driver
INFO0145:  init proc : PAGE_SIZE 4096
INFO16E1:  infomap 851cb070 
INFO16E4:  sleep to wait br0 to wake up
INFO15B4: tcpConnector() started... : br0 
open DNS error: No such file or directory
INFO1567: Bind to br0
Msg=245 inc=0 p1=0 p2=50 p3=32 p4=65 datalen=0
Msg=243 inc=0 p1=6 p2=0 p3=0 p4=255 datalen=0
[#DECT# LOG LTQ_DECT_InitStack:L547]DECT Stack initialize OK!
Enable forwarding
Msg=48 inc=0 p1=5 p2=8 p3=0 p4=0 datalen=0
DSL[00]: Reboot on training timeout (60)!!!
xDSL Leave SHOWTIME!!
nReturn=0 nData="6743 0014 0001 0041 "

nReturn=0 nData="1762 0000 0001 "

I am not too sure what you mean by "booting via ramfs". When originally flashing the image, through the serial console, in u-boot, I tested the kernel by booting it directly through TFTPBOOT with the following commands:

setenv ipaddr 192.168.33.17
setenv serverip 192.168.33.41
tftpboot 0x80800000 boot/openwrt/openwrt-built.bin

# run image
bootm

It eventually errored-out, because it could not find the root fs, because it had the original TP-Link partition layout on it. This procedure let me test out that the build-worked, and let me view the bootlog. After flashing, the boot worked fine. If I were to repeat that now, I believe it may boot with the kernel in RAM, and use the currently flashed file system.
Is this the procedure you are referring to, or would you propose an alternate or revised procedure?

Going to the code, I noticed in target/linux/lantiq/dts/vr9.dtsi that the pci0 field has a slightly different name:

        pcie@d900000 {
            interrupt-parent = <&icu0>;
            interrupts = <161 144>;
            compatible = "lantiq,pcie-xrx200";
            gpio-reset = <&gpio 38 0>;
        };

        pci0: pci@E105400 {
            #address-cells = <3>;
            #size-cells = <2>;
            #interrupt-cells = <1>;
            compatible = "lantiq,pci-xway";
            bus-range = <0x0 0x0>;
            ranges = <0x2000000 0 0x8000000 0x8000000 0 0x2000000   /* pci memory */
                0x1000000 0 0x00000000 0xAE00000 0 0x200000>; /* io space */
            reg = <0x7000000 0x8000         /* config space */
                0xE105400 0x400>;       /* pci bridge */
            status = "disabled";

Since my PCIE is already working because it is not disabled globally in vr9.dtsi ( correct me if I'm wrong), I would only need to explicitly enable pci0: pci@E105400 in target/linux/lantiq/dts/VR200v.dts.

Where you originally told me to add the following:

pcie@d900000 {
            status = "okay";
        };
        pci@E105400 {
            status = "okay";
        };

I would propose to test only this modification ( name revised, and don't touch PCIE in VR200v.dts ):

pci0: pci@E105400 {
            status = "okay";
        };

What do you think about that?

Thanks again for the support,
Vittorio

vittorio88 wrote:

I am not too sure what you mean by "booting via ramfs". When originally flashing the image, through the serial console, in u-boot, I tested the kernel by booting it directly through TFTPBOOT with the following commands:

setenv ipaddr 192.168.33.17
setenv serverip 192.168.33.41
tftpboot 0x80800000 boot/openwrt/openwrt-built.bin

# run image
bootm

It eventually errored-out, because it could not find the root fs, because it had the original TP-Link partition layout on it. This procedure let me test out that the build-worked, and let me view the bootlog. After flashing, the boot worked fine. If I were to repeat that now, I believe it may boot with the kernel in RAM, and use the currently flashed file system.
Is this the procedure you are referring to, or would you propose an alternate or revised procedure?

Going to the code, I noticed in target/linux/lantiq/dts/vr9.dtsi that the pci0 field has a slightly different name:

        pcie@d900000 {
            interrupt-parent = <&icu0>;
            interrupts = <161 144>;
            compatible = "lantiq,pcie-xrx200";
            gpio-reset = <&gpio 38 0>;
        };

        pci0: pci@E105400 {
            #address-cells = <3>;
            #size-cells = <2>;
            #interrupt-cells = <1>;
            compatible = "lantiq,pci-xway";
            bus-range = <0x0 0x0>;
            ranges = <0x2000000 0 0x8000000 0x8000000 0 0x2000000   /* pci memory */
                0x1000000 0 0x00000000 0xAE00000 0 0x200000>; /* io space */
            reg = <0x7000000 0x8000         /* config space */
                0xE105400 0x400>;       /* pci bridge */
            status = "disabled";

Since my PCIE is already working because it is not disabled globally in vr9.dtsi ( correct me if I'm wrong), I would only need to explicitly enable pci0: pci@E105400 in target/linux/lantiq/dts/VR200v.dts.

Where you originally told me to add the following:

pcie@d900000 {
            status = "okay";
        };
        pci@E105400 {
            status = "okay";
        };

I would propose to test only this modification ( name revised, and don't touch PCIE in VR200v.dts ):

pci0: pci@E105400 {
            status = "okay";
        };

What do you think about that?

Thanks again for the support,
Vittorio

Hi,

-You can find documentation about booting with a ramfs image but basically:
1) You build a ramfs image of LEDE. This is done via "make menuconfig". Then choose Target Images->ramdisk. Also select lzma compresssion

2) Once make is done, you will find in the /bin/.../xrx200 directory an image called *-initramfs-"

3) During boot, load the image of 2) as you have explained and launch "bootm". Now your router will start with your custom image

This is the safe way to do changes in the OS before any flashing.

I believe you didn't succeed in the past because the image .bin was meant to be flashed, not booted from memory. However I'm no expert.

- Regarding the changes in the VR200v.dts file, go for your solution. I believe both will work as the "pci0:" it's just a label or shorcut to those lines. However, with the system above you can test whatever image you bake.

-It seems that your PCIe driver is working... but it only detects a bluetooth device. Pretty strange since this is not documented.
I keep my fingers crossed that both wifi devices are in the PCI bus and they are awaiting your discovery.

Keep us posted with your results.

Mandrake

Mandrake wrote:

You build a ramfs image of LEDE. This is done via "make menuconfig". Then choose Target Images->ramdisk. Also select lzma compresssion
2) Once make is done, you will find in the /bin/.../xrx200 directory an image called *-initramfs-"
3) During boot, load the image of 2) as you have explained and launch "bootm". Now your router will start with your custom image
This is the safe way to do changes in the OS before any flashing.
I believe you didn't succeed in the past because the image .bin was meant to be flashed, not booted from memory. However I'm no expert.


You are correct. I was not aware that OpenWRT had this functionality built into menuconfig. Thanks!

Mandrake wrote:

- Regarding the changes in the VR200v.dts file, go for your solution. I believe both will work as the "pci0:" it's just a label or shorcut to those lines. However, with the system above you can test whatever image you bake.
-It seems that your PCIe driver is working... but it only detects a bluetooth device. Pretty strange since this is not documented.
I keep my fingers crossed that both wifi devices are in the PCI bus and they are awaiting your discovery.


I built OpenWRT trunk with pciutils built-in and the following modification:

diff --git a/target/linux/lantiq/dts/VR200v.dts b/target/linux/lantiq/dts/VR200v.dts
index e281042..b2ef603 100644
--- a/target/linux/lantiq/dts/VR200v.dts
+++ b/target/linux/lantiq/dts/VR200v.dts
@@ -76,6 +76,10 @@
                        status = "okay";
                        gpios = <&gpio 33 0>;
                };
+
+               pci0: pci@E105400 {
+                       status = "okay";
+               };
        };

        gphy-xrx200 {

Unfortunately, I did not see any additional devices.


Here is some output with that modification:

-----------------------------------------------------
 DESIGNATED DRIVER (Bleeding Edge, 50107)
 -----------------------------------------------------
  * 2 oz. Orange Juice         Combine all juices in a
  * 2 oz. Pineapple Juice      tall glass filled with
  * 2 oz. Grapefruit Juice     ice, stir well.
  * 2 oz. Cranberry Juice
 -----------------------------------------------------
root@OpenWrt:~#
root@OpenWrt:~# lspci
01:00.0 PCI bridge: Lantiq MIPS SoC PCI Express Port (rev 01)
02:00.0 Network controller: MEDIATEK Corp. Device 7650
02:00.1 Bluetooth: MEDIATEK Corp. Device 8650

root@OpenWrt:~# cat /proc/iomem
17000000-17007fff : /fpi@10000000/pci@E105400
18000000-19ffffff : /fpi@10000000/pci@E105400
1c000000-1cffffff : PCIe0 Memory space
  1c000000-1c1fffff : PCI Bus 0000:02
    1c000000-1c0fffff : 0000:02:00.0
    1c100000-1c1fffff : 0000:02:00.1
1e100800-1e1008ff : /fpi@10000000/spi@E100800
1e100b10-1e100baf : /fpi@10000000/pinmux@E100B10
1e100c00-1e100fff : 1e100c00.serial
1e104100-1e1048ff : /fpi@10000000/dma@E104100
1e105300-1e1053ff : /fpi@10000000/ebu@E105300
1e105400-1e1057ff : /fpi@10000000/pci@E105400
1e108000-1e10afff : /fpi@10000000/eth@E108000
1e10b100-1e10b16f : /fpi@10000000/eth@E108000
1e10b1d8-1e10b207 : /fpi@10000000/eth@E108000
1e10b308-1e10b337 : /fpi@10000000/eth@E108000
1e116000-1e11609f : mei_cpe
1f101000-1f101fff : /sram@1F000000/eiu@101000
1f102000-1f102fff : /sram@1F000000/pmu@102000
1f103000-1f103fff : /sram@1F000000/cgu@103000
1f106a00-1f106bff : /sram@1F000000/dcdc@106a00
1f203000-1f203fff : /sram@1F000000/rcu@203000
1f880200-1f880227 : /biu@1F800000/icu@80200
1f880228-1f88024f : /biu@1F800000/icu@80200
1f880250-1f880277 : /biu@1F800000/icu@80200
1f880278-1f88029f : /biu@1F800000/icu@80200
1f8802a0-1f8802c7 : /biu@1F800000/icu@80200
1f8803f0-1f8803ff : /biu@1F800000/watchdog@803F0

root@OpenWrt:~# ls /sys/bus/pci/devices/
0000:01:00.0  0000:02:00.0  0000:02:00.1

Compared to the LEDE I have flashed, the bus numbering is different, but I am unsure if the difference was due to running LEDE vs the modification in the dts file. If this is important I can narrow it down.

Is there any more output you would like to see? Do you think the PCI bus may require additional configuration such as the one present in the vr9.dtsi file?

Thanks again for the help,
Vittorio

vittorio88 wrote:

I built OpenWRT trunk with pciutils built-in and the following modification:

diff --git a/target/linux/lantiq/dts/VR200v.dts b/target/linux/lantiq/dts/VR200v.dts
index e281042..b2ef603 100644
--- a/target/linux/lantiq/dts/VR200v.dts
+++ b/target/linux/lantiq/dts/VR200v.dts
@@ -76,6 +76,10 @@
                        status = "okay";
                        gpios = <&gpio 33 0>;
                };
+
+               pci0: pci@E105400 {
+                       status = "okay";
+               };
        };

        gphy-xrx200 {

Unfortunately, I did not see any additional devices.


Here is some output with that modification:

-----------------------------------------------------
 DESIGNATED DRIVER (Bleeding Edge, 50107)
 -----------------------------------------------------
  * 2 oz. Orange Juice         Combine all juices in a
  * 2 oz. Pineapple Juice      tall glass filled with
  * 2 oz. Grapefruit Juice     ice, stir well.
  * 2 oz. Cranberry Juice
 -----------------------------------------------------
root@OpenWrt:~#
root@OpenWrt:~# lspci
01:00.0 PCI bridge: Lantiq MIPS SoC PCI Express Port (rev 01)
02:00.0 Network controller: MEDIATEK Corp. Device 7650
02:00.1 Bluetooth: MEDIATEK Corp. Device 8650

root@OpenWrt:~# cat /proc/iomem
17000000-17007fff : /fpi@10000000/pci@E105400
18000000-19ffffff : /fpi@10000000/pci@E105400
1c000000-1cffffff : PCIe0 Memory space
  1c000000-1c1fffff : PCI Bus 0000:02
    1c000000-1c0fffff : 0000:02:00.0
    1c100000-1c1fffff : 0000:02:00.1
1e100800-1e1008ff : /fpi@10000000/spi@E100800
1e100b10-1e100baf : /fpi@10000000/pinmux@E100B10
1e100c00-1e100fff : 1e100c00.serial
1e104100-1e1048ff : /fpi@10000000/dma@E104100
1e105300-1e1053ff : /fpi@10000000/ebu@E105300
1e105400-1e1057ff : /fpi@10000000/pci@E105400
1e108000-1e10afff : /fpi@10000000/eth@E108000
1e10b100-1e10b16f : /fpi@10000000/eth@E108000
1e10b1d8-1e10b207 : /fpi@10000000/eth@E108000
1e10b308-1e10b337 : /fpi@10000000/eth@E108000
1e116000-1e11609f : mei_cpe
1f101000-1f101fff : /sram@1F000000/eiu@101000
1f102000-1f102fff : /sram@1F000000/pmu@102000
1f103000-1f103fff : /sram@1F000000/cgu@103000
1f106a00-1f106bff : /sram@1F000000/dcdc@106a00
1f203000-1f203fff : /sram@1F000000/rcu@203000
1f880200-1f880227 : /biu@1F800000/icu@80200
1f880228-1f88024f : /biu@1F800000/icu@80200
1f880250-1f880277 : /biu@1F800000/icu@80200
1f880278-1f88029f : /biu@1F800000/icu@80200
1f8802a0-1f8802c7 : /biu@1F800000/icu@80200
1f8803f0-1f8803ff : /biu@1F800000/watchdog@803F0

root@OpenWrt:~# ls /sys/bus/pci/devices/
0000:01:00.0  0000:02:00.0  0000:02:00.1

Compared to the LEDE I have flashed, the bus numbering is different, but I am unsure if the difference was due to running LEDE vs the modification in the dts file. If this is important I can narrow it down.

Is there any more output you would like to see? Do you think the PCI bus may require additional configuration such as the one present in the vr9.dtsi file?

Thanks again for the help,
Vittorio

Hi,

I have good and bad news for you smile

- The PCI bus is activated. If you check /proc/iomem you will see in the first 2 lines the PCI bridge:

root@OpenWrt:~# cat /proc/iomem
17000000-17007fff : /fpi@10000000/pci@E105400
18000000-19ffffff : /fpi@10000000/pci@E105400

However, there's nothing (no device) at this bus so this is why lspci is showing nothing but the PCIe devices. I see the same thing in my router when I activate the PCI

-You can also double check by analysing "dmesg". This is a good friend of us.
I'm sure you will see at some point something like below

[    0.221171] PCI host bridge /fpi@10000000/pci@E105400 ranges:
[    0.226820]  MEM 0x0000000018000000..0x0000000019ffffff
[    0.232071]   IO 0x000000001ae00000..0x000000001affffff

- I think you didn't notice but you have ready in your system the wifi ac device MTK7650E. This is what the output of lspci is showing as:

02:00.0 Network controller: MEDIATEK Corp. Device 7650

So you have to find out if there's a port to Openwrt/LEDE and compile it.
By the way, seems that the information of this router as shown in Openwrt site is not accurate.

- And yet the Wave300 is not showing up... Does it have power?
Anyway, my best guess would be to try the reset GPIO in the dts file. I don't think that will work but it's safe to give a try.

pcie@d900000{
status = "okay"
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
}

Regards,
Mandrake

Mandrake wrote:

- I think you didn't notice but you have ready in your system the wifi ac device MTK7650E. This is what the output of lspci is showing as:

02:00.0 Network controller: MEDIATEK Corp. Device 7650

So you have to find out if there's a port to Openwrt/LEDE and compile it.

I had noticed, but I do not have the driver. The mt76 module fails to insert.
There is an overlay at Github @ kmeaw/kingston-mlwg3-openwrt that seems to add support for the MT7650, however I would only use this device(TP-link VR200) as an AP if it was dual-band AC otherwise it would be a downgrade from the AP currently in use. The WAV300 seems to be the bigger road-block here...




Mandrake wrote:

By the way, seems that the information of this router as shown in Openwrt site is not accurate.

Yes, the page lists MT7610EN, while my dmesg lists MT7650E. I can't say with certainty that the difference isn't because the page is for a slightly different model ( VR200 vs VR200v). The main difference, however is the POTS port.

Mandrake wrote:

- And yet the Wave300 is not showing up... Does it have power?
Anyway, my best guess would be to try the reset GPIO in the dts file. I don't think that will work but it's safe to give a try.

pcie@d900000{
status = "okay"
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
}

Regards,
Mandrake

Looking at my the DTS file for the VR200, it seems the pcie bus is already being reset on a different pin.
Here is the relevant part:

                pcie-rst {
                    lantiq,pins = "io38";
                    lantiq,pull = <0>;
                    lantiq,output = <1>;
                };

Maybe I'm wrong about that?


Is the WAV300 chip PCI, PCIe, or both?


Thanks again for the help,
Vittorio

vittorio88 wrote:

Looking at my the DTS file for the VR200, it seems the pcie bus is already being reset on a different pin.
Here is the relevant part:

                pcie-rst {
                    lantiq,pins = "io38";
                    lantiq,pull = <0>;
                    lantiq,output = <1>;
                };

Maybe I'm wrong about that?


Is the WAV300 chip PCI, PCIe, or both?


Thanks again for the help,
Vittorio

Hello,

  • I have the same declaration for pcie-rst in my dts file. However, until I added gpio 21 it didn't work to me

  • I believe WAVE300 is PCIe, at least for our routers. Maybe you could check visually, tracking the chip and the bus. I've never tried anything similar so I this is just an idea

  • Please try the gpio 21 thing. If not... are you sure that WAVE300 was working before you flashed Openwrt?

Good luck!

Hi,

maybe I can help with log file from a VR200v.
But I need some instructions to flash the device with lede or openwrt.
The only think I know is that flashing over the webinterface is not working.

Best regards

Beppo

Success!

The following code modification let me see the WAV300 wireless chip on my TP-Link VR200:

diff --git a/target/linux/lantiq/dts/VR200v.dts b/target/linux/lantiq/dts/VR200v.dts
index e281042..563884c 100644
--- a/target/linux/lantiq/dts/VR200v.dts
+++ b/target/linux/lantiq/dts/VR200v.dts
@@ -76,6 +76,12 @@
                        status = "okay";
                        gpios = <&gpio 33 0>;
                };
+               pcie@d900000 {
+                       gpio-reset = <&gpio 21 0>;
+               };
        };

Would it be premature to suggest this fix be pushed?
By the way, GPIO_ACTIVE_HIGH, returned a syntax error while compiling, so I placed a 0 there like in other places in the code.


Here is some output:

root@OpenWrt:/# lspci -k
00:0e.0 Wireless controller: Lantiq Wave300 PSB8224 [Hyperion III] (rev 01)
\0x09Subsystem: Lantiq Device 0680
lspci: Unable to load libkmod resources: error -12
01:00.0 PCI bridge: Lantiq MIPS SoC PCI Express Port (rev 01)
02:00.0 Network controller: MEDIATEK Corp. Device 7650
\0x09Subsystem: MEDIATEK Corp. Device 7650
02:00.1 Bluetooth: MEDIATEK Corp. Device 8650
\0x09Subsystem: MEDIATEK Corp. Device 8650


# only related dmesg log
[    0.609520] pci 0000:00:0e.0: of_irq_parse_pci() failed with rc=-22



root@OpenWrt:/# cat /proc/iomem
17000000-17007fff : /fpi@10000000/pci@E105400
18000000-19ffffff : /fpi@10000000/pci@E105400
  18000000-187fffff : 0000:00:0e.0
  18800000-18800fff : 0000:00:0e.0
1c000000-1cffffff : PCIe0 Memory space
  1c000000-1c1fffff : PCI Bus 0000:02
    1c000000-1c0fffff : 0000:02:00.0
    1c100000-1c1fffff : 0000:02:00.1
1e100800-1e1008ff : /fpi@10000000/spi@E100800
1e100b10-1e100baf : /fpi@10000000/pinmux@E100B10
1e100c00-1e100fff : 1e100c00.serial
1e104100-1e1048ff : /fpi@10000000/dma@E104100
1e105300-1e1053ff : /fpi@10000000/ebu@E105300
1e105400-1e1057ff : /fpi@10000000/pci@E105400
1e108000-1e10afff : /fpi@10000000/eth@E108000
1e10b100-1e10b16f : /fpi@10000000/eth@E108000
1e10b1d8-1e10b207 : /fpi@10000000/eth@E108000
1e10b308-1e10b337 : /fpi@10000000/eth@E108000
1e116000-1e11609f : mei_cpe
1f101000-1f101fff : /sram@1F000000/eiu@101000
1f102000-1f102fff : /sram@1F000000/pmu@102000
1f103000-1f103fff : /sram@1F000000/cgu@103000
1f106a00-1f106bff : /sram@1F000000/dcdc@106a00
1f203000-1f203fff : /sram@1F000000/rcu@203000
1f880200-1f880227 : /biu@1F800000/icu@80200
1f880228-1f88024f : /biu@1F800000/icu@80200
1f880250-1f880277 : /biu@1F800000/icu@80200
1f880278-1f88029f : /biu@1F800000/icu@80200
1f8802a0-1f8802c7 : /biu@1F800000/icu@80200
1f8803f0-1f8803ff : /biu@1F800000/watchdog@803F0


Any idea what

pci 0000:00:0e.0: of_irq_parse_pci() failed with rc=-22

means?


Thanks,
Vittorio

beppo wrote:

Hi,

maybe I can help with log file from a VR200v.
But I need some instructions to flash the device with lede or openwrt.
The only think I know is that flashing over the webinterface is not working.

Best regards

Beppo

You need to open the case and solder a pin to the TX line, RX line, and a ground. You then connect these 3 pins to a a UART TTL to USB converter ( it needs to be of the 3.3V type).

The Table of Hardware page for the VR200v gives some further instructions. Tell me if you need help.

- Vittorio

vittorio88 wrote:

Success!

The following code modification let me see the WAV300 wireless chip on my TP-Link VR200:

diff --git a/target/linux/lantiq/dts/VR200v.dts b/target/linux/lantiq/dts/VR200v.dts
index e281042..563884c 100644
--- a/target/linux/lantiq/dts/VR200v.dts
+++ b/target/linux/lantiq/dts/VR200v.dts
@@ -76,6 +76,12 @@
                        status = "okay";
                        gpios = <&gpio 33 0>;
                };
+               pcie@d900000 {
+                       gpio-reset = <&gpio 21 0>;
+               };
        };

Would it be premature to suggest this fix be pushed?
By the way, GPIO_ACTIVE_HIGH, returned a syntax error while compiling, so I placed a 0 there like in other places in the code.


Here is some output:

root@OpenWrt:/# lspci -k
00:0e.0 Wireless controller: Lantiq Wave300 PSB8224 [Hyperion III] (rev 01)
\0x09Subsystem: Lantiq Device 0680
lspci: Unable to load libkmod resources: error -12
01:00.0 PCI bridge: Lantiq MIPS SoC PCI Express Port (rev 01)
02:00.0 Network controller: MEDIATEK Corp. Device 7650
\0x09Subsystem: MEDIATEK Corp. Device 7650
02:00.1 Bluetooth: MEDIATEK Corp. Device 8650
\0x09Subsystem: MEDIATEK Corp. Device 8650


# only related dmesg log
[    0.609520] pci 0000:00:0e.0: of_irq_parse_pci() failed with rc=-22



root@OpenWrt:/# cat /proc/iomem
17000000-17007fff : /fpi@10000000/pci@E105400
18000000-19ffffff : /fpi@10000000/pci@E105400
  18000000-187fffff : 0000:00:0e.0
  18800000-18800fff : 0000:00:0e.0
1c000000-1cffffff : PCIe0 Memory space
  1c000000-1c1fffff : PCI Bus 0000:02
    1c000000-1c0fffff : 0000:02:00.0
    1c100000-1c1fffff : 0000:02:00.1
1e100800-1e1008ff : /fpi@10000000/spi@E100800
1e100b10-1e100baf : /fpi@10000000/pinmux@E100B10
1e100c00-1e100fff : 1e100c00.serial
1e104100-1e1048ff : /fpi@10000000/dma@E104100
1e105300-1e1053ff : /fpi@10000000/ebu@E105300
1e105400-1e1057ff : /fpi@10000000/pci@E105400
1e108000-1e10afff : /fpi@10000000/eth@E108000
1e10b100-1e10b16f : /fpi@10000000/eth@E108000
1e10b1d8-1e10b207 : /fpi@10000000/eth@E108000
1e10b308-1e10b337 : /fpi@10000000/eth@E108000
1e116000-1e11609f : mei_cpe
1f101000-1f101fff : /sram@1F000000/eiu@101000
1f102000-1f102fff : /sram@1F000000/pmu@102000
1f103000-1f103fff : /sram@1F000000/cgu@103000
1f106a00-1f106bff : /sram@1F000000/dcdc@106a00
1f203000-1f203fff : /sram@1F000000/rcu@203000
1f880200-1f880227 : /biu@1F800000/icu@80200
1f880228-1f88024f : /biu@1F800000/icu@80200
1f880250-1f880277 : /biu@1F800000/icu@80200
1f880278-1f88029f : /biu@1F800000/icu@80200
1f8802a0-1f8802c7 : /biu@1F800000/icu@80200
1f8803f0-1f8803ff : /biu@1F800000/watchdog@803F0


Any idea what

pci 0000:00:0e.0: of_irq_parse_pci() failed with rc=-22

means?


Thanks,
Vittorio

Congratulations, you're one one step closer.

  • So finally it looks like WAVE300 is hooked as PCI, not PCIe. Have you activated PCI in your dts too?

  • The GPIO21 is needed to bring-up the device... what a strange thing but it works

  • Yes, If your change is proved by other users push it to the main branch. I honestly don't know how to do it

  • This thing "pci 0000:00:0e.0: of_irq_parse_pci() failed with rc=-22" looks like there's no irq defined in the dts file. This could be a problem in the future. Could you post "lspci -v" to see irq's?

Enjoy the moment! smile
Mandrake

Mandrake wrote:

Congratulations, you're one one step closer.
Mandrake

Thanks, without you, it would've been much more difficult!



Mandrake wrote:

So finally it looks like WAVE300 is hooked as PCI, not PCIe. Have you activated PCI in your dts too?

You are right, PCI was also enabled. I can confirm this, because I built a new image with PCI disabled, and the WAV300 wasn't there. It needed both both status = "okay"; and gpio-reset = <&gpio 21 0>;.

Given this information, I am questioning however, whether it is correct to place the gpio-reset in the PCIE stanza of VR200v.dts, rather than the PCI stanza. Should I retest, placing the pin reset function in the PCI stanza?




Mandrake wrote:

Yes, If your change is proved by other users push it to the main branch. I honestly don't know how to do it

I have never done it for the OpenWRT project, but I can work it on in my spare time.
If you want, I can include the modifications for other targets you may have tested with this fix, or if you prefer I can leave that to you?
In your case, with the Livebox, is the WAV300 also connected via PCI? What DTS file are you using?




Mandrake wrote:

This thing "pci 0000:00:0e.0: of_irq_parse_pci() failed with rc=-22" looks like there's no irq defined in the dts file. This could be a problem in the future. Could you post "lspci -v" to see irq's?
Mandrake


Here is requested data:


root@OpenWrt:/# lspci -v
00:0e.0 Wireless controller: Lantiq Wave300 PSB8224 [Hyperion III] (rev 01)
        Subsystem: Lantiq Device 0680
        Flags: medium devsel
        Memory at 18800000 (32-bit, prefetchable) [disabled] [size=4097]
        Memory at 18000000 (32-bit, prefetchable) [disabled] [size=8388609]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Expansion ROM at <unassigned> [disabled] [size=2]
lspci: Unable to load libkmod resources: error -12

01:00.0 PCI bridge: Lantiq MIPS SoC PCI Express Port (rev 01) (prog-if 00 [Normal decode])
        Flags: fast devsel, IRQ 144
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Bus: primary=01, secondary=02, subordinate=02, sec-latency=0
        Memory behind bridge: 1c000000-1c1fffff
        Expansion ROM at <unassigned> [disabled] [size=2]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
        Capabilities: [70] Express Root Port (Slot-), MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Virtual Channel
        Capabilities: [160] Power Budgeting <?>

02:00.0 Network controller: MEDIATEK Corp. Device 7650
        Subsystem: MEDIATEK Corp. Device 7650
        Flags: fast devsel, IRQ 144
        Memory at 1c000000 (32-bit, non-prefetchable) [disabled] [size=1048577]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Expansion ROM at <unassigned> [disabled] [size=2]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [70] Express Endpoint, MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Device Serial Number 00-00-ff-ff-ff-ff-ff-ff
        Capabilities: [150] Latency Tolerance Reporting

02:00.1 Bluetooth: MEDIATEK Corp. Device 8650
        Subsystem: MEDIATEK Corp. Device 8650
        Flags: fast devsel, IRQ 144
        Memory at 1c100000 (32-bit, non-prefetchable) [disabled] [size=1048577]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Memory at <unassigned> (32-bit, non-prefetchable) [disabled] [size=2]
        Expansion ROM at <unassigned> [disabled] [size=2]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [70] Express Endpoint, MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Device Serial Number 00-00-ff-ff-ff-ff-ff-ff
        Capabilities: [150] Latency Tolerance Reporting


There is some commented stuff in the PCI section of the vr9.dtsi that I can try to over-ride in the VR200v.dts?

                        #address-cells = <3>;
                        #size-cells = <2>;
                        #interrupt-cells = <1>;

Beppo

You need to open the case and solder a pin to the TX line, RX line, and a ground. You then connect these 3 pins to a a UART TTL to USB converter ( it needs to be of the 3.3V type).

The Table of Hardware page for the VR200v gives some further instructions. Tell me if you need help.

- Vittorio

Hi Vittorio,

thanks for your reply.
I will try it and come back to you if I need help.
Good luck to you.

Beppo

Hi there,

It's been a while without updates.

I'm stuck with the driver at the point where the firmware is correctly loaded into memory but the internal chipset is not reacting to it. I believe that the interrupts are not properly setup, which is something that the PCIe driver should be doing, not ours.

In the meantime, I have decided to upload the sources into github and also add a first branch with file LICENSE where dual BSD/GPL is granted.

We will see if there's any trouble with it.

If anyone from  Lantiq/Intel reads these lines and foresee any legal issue please let me know and I will turn down the git.

If no objections are received, I will merge this file along with my changes in the future.

Needless to say that the sources that you can download, being originals, can only be compiled vs kernels 2.6; maybe <3.1.

https://github.com/Mandrake-Lee/WAVE300

Hello Mandrake,

I downloaded your Github repo, however was unable to compile it.

Can you provide some build steps?

FWIW, here is the final patch I used to enable the WAV300 on my TP-Link VR200:

diff --git a/target/linux/lantiq/dts/VR200v.dts b/target/linux/lantiq/dts/VR200v.dts
index e281042..ecb2455 100644
--- a/target/linux/lantiq/dts/VR200v.dts
+++ b/target/linux/lantiq/dts/VR200v.dts
@@ -76,6 +76,10 @@
                        status = "okay";
                        gpios = <&gpio 33 0>;
                };
+               pci0: pci@E105400 {
+                       status = "okay";
+                       gpio-reset = <&gpio 21 0>;
+               };
        };
 
        gphy-xrx200 {