[OpenWrt-Devel] lantiq DSL drivers / firmware info
Damian Kaczkowski
damian.kaczkowski at gmail.com
Mon Jul 10 08:06:21 EDT 2017
Hello all.
I have done some research regarding soft-switching DSL Annex. I got few
boards which are able to operate in Annex A or B without hardware mods of
the hybrid. Seems that dsl_control is able to send some commands to the DSL
PHY so it can sync with Annex A line while being equipped with Annex B DSL
transformer which is a part of hybrid I suppose. I have tested the
following boards:
- AVM/1&1 FRITZ!Box 7330 SL
- AVM/1&1 FRITZ!Box 7362 SL
- AVM/1&1 FRITZ!Box Fon WLAN 7320
- AVM/1&1 FRITZ!Box Fon WLAN 7360 SL
- AVM FRITZ!Box WLAN 3370
Non of them is "international edition". All are marked by vendor as Annex B
only editions and all of them are equipped with DSL transformers matched to
Lantiq Chips Annex B (that's what datasheets says).
They are equipped with the following DSL transformers:
UMEC UTB01930S 270uH, 2:1, Annex B, Supplementary For Lantiq’s XWAY™
VRX208 Chip (3370)
LinkCom LAL0530 270uH, 2:1, Annex B, Supplementary For Lantiq’s XWAY™
VRX208 Chip (7362 SL, 7360 SL)
VOGT unknown, unknown, Annex B, Suplementary for
Lantiq AR9 Chip (7320, 7330 SL)
MNC EP-832SG 1.4mH, 2:1, Annex A, Supplementary For Lantiq’s XWAY™
VRX208 Chip (TD-W8970V1, TD-W8980V1, TD-W9980V1)
MNC EP-833SG 270uH, 2:1, Annex B, Supplementary For Lantiq’s XWAY™
VRX208 Chip (TD-W8970BV1, TD-W8980BV1, TD-W9980BV1)
On Freetz firmware I was able to soft-switch all above AVM boards from
Annex B to Annex A and successfully sync to Annex A/M DSLAM/Line.
After switching firmware to LEDE/OpenWrt on those boards I am getting the
same error as Andre got on TP-LINKs:
'DSL_CPE: Wrong combination of DSL PHY Firmware and hybrid type used! Please
change one of it.'.
To sum up:
Freetz OS loaded with LEDE DSL firmware sync without a problem. So the
problem is not the DSL firmware itself.
Hybrid is also not a problem cause on Freetz OS I have successfully sync
Annex B boards (soft-switched to Annex A) to Annex A line.
I have done numerous tests and come to conclusion that dsl_control and/or
driver implementation is the main problem and thing to focus on.
LEDE dsl_control is not able to start the DSL PHYs (with Annex B
transformers) loaded with Annex A firmware and sync them to Annex A line,
but the same boards sync fine with Freetz OS + Freetz dsl_control.
I spot that dsl_control on Freetz generates the adsl.cfg upon start. This
adsl.cfg is generated with different sets of commands according to selected
Annex.
adsl.cfg content differs between board models/generation. Similar boards
got the same adsl.cfg contents. This is probably due to different DSL
transformer or whole hybrid? I need to double check and confirm this to be
sure.
Here is an example of adsl.cfg file content generated on 7320 SL board:
For Annex B:
#AVM ADSL Annex B, generated by dsl_control
[WaitForConfiguration]={
sics 1 1 1 3
}
[WaitForLinkActivate]={
lfcs 1 1 1 1 0 0
}
[WaitForLinkActivate]={
lfcs 0 1 1 0 0 0
}
[WaitForLinkActivate]={
cw info 86 0 0x4801
}
[WaitForLinkActivate]={
avmcrmw optn 25 0 0x2000
}
[WaitForLinkActivate]={
cw cnfg 45 0 0xe
}
[WaitForLinkActivate]={
avmcrmw info 103 1 0x2000
}
For Annex A:
#AVM ADSL Annex A, generated by dsl_control
[WaitForConfiguration]={
sics 1 1 1 3
}
[WaitForLinkActivate]={
lfcs 1 1 1 1 0 0
}
[WaitForLinkActivate]={
lfcs 0 1 1 0 0 0
}
[WaitForLinkActivate]={
cw info 86 0 0x4801
}
[WaitForLinkActivate]={
avmcrmw optn 25 0 0x2000
}
[WaitForLinkActivate]={
cw cnfg 45 0 0xe
}
[WaitForLinkActivate]={
cw info 94 0 0x1467
}
Here is an example of adsl.cfg file content generated on 3370 board:
For Annex B:
#AVM ADSL Annex B
[WaitForLinkActivate]={
avmcrms info 103 1 0x2000
}
[WaitForLinkActivate]={
avmcrmr info 111 8 0010
}
[WaitForLinkActivate]={
avmcrms test 0 0 0x4000
}
[WaitForLinkActivate]={
avmcrms dsl 13 0 0x0002
}
[WaitForLinkActivate]={
avmcw cnfg 46 0 0xe
}
[WaitForLinkActivate]={
avmcrms info 111 8 0x0004
}
[WaitForLinkActivate]={
avmcrms dsl 13 0 0x0008
}
For Annex A:
#AVM ADSL Annex A
[WaitForLinkActivate]={
avmcrmr info 111 8 0010
}
[WaitForLinkActivate]={
avmcrms test 0 0 0x4000
}
[WaitForLinkActivate]={
avmcrms dsl 13 0 0x0002
}
[WaitForLinkActivate]={
avmcw cnfg 46 0 0xe
}
[WaitForLinkActivate]={
avmcw moni 5 0 0x204B
}
[WaitForLinkActivate]={
avmcw moni 5 1 0x0000
}
[WaitForLinkActivate]={
avmcrms info 111 8 0x0004
}
[WaitForLinkActivate]={
avmcrms dsl 13 0 0x0008
}
As you can see there are some AVM and non standard commands comparing to
LEDE/OpenWrt dsl_control flavour. Those are for eg.:
avmvig AVM_VersionInformationGet
avmcr AVM_CmvRead
avmcw AVM_CmvWrite
avmcrms AVM_CmvReadModifySet
avmcrmr AVM_CmvReadModifyReset
avmpet AVM_ProdEchoTest
avmhwrfit AVM_HWRFITest
avmdsmmcs AVM_DSM_MacConfigSet
cr CmvRead
cw CmvWrite
More can be found by looking into dsl_control file extracted from AVM
boards firmwares (Freetz buildroot can do that).
It also contains adsl.cfg commands if someone wants to debug this further
without access to the boards itself.
Example content of dsl_control:
avm_dsl_cli_DsmMacConfigSet
cw DSL_CPE_SCRIPT: CMV WR %s %d %d, value=0x%04x, retCode=%d
mw %s %s %s DSL_CPE_SCRIPT: Dbg Memory write address=%08x, value=%04x,
retCode=%d
dsl_control: mw %08x fail
mr dsl_control: error:mr parameter type mismatch!
Anyone got an idea or could spare a hint on how to debug what AVMs
dsl_control is actually doing/sending to the DSL PHY driver?
Could anyone with deep Lantiq knowledge look into this please? My knowledge
about Lantiq DSL tools/drivers ends here : (.
What needs to be done so the LEDE/OpenWrt dsl_control could also be able to
switch Annex on those and maybe other AR9/VR9 boards?
I can assist in some tests if you need. I also got all TP-Links VR9 boards
(both Annexes) plus some other AR9/VR9/AR10 boards and also an Annex A/M
ADSL/ADSL2+ DSLAMs (can't test VDSL right now).
Greets.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20170710/5553a126/attachment.htm>
-------------- next part --------------
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list