If you like BoxMatrix then please contribute Supportdata, Supportdata2, Firmware and/or Hardware (get in touch).
My metamonk@yahoo.com is not reachable by me since years. Please use hippie2000@webnmail.de instead.

0
U

Property:avm2fiber xdsld (avmcmd)

From BoxMatrix


BoxMatrix >> Shell-Commands >> avm2fiber_xdsld (avmcmd) @ BoxMatrix   -   IRC-Chat   -   Translate: de es fr it nl pl
News Selectors Models Accessories Components Environment Config Commands System Webif Software Develop Lexicon Community Project Media

Startup-Scr Hotplug-Scr BusyBox-Cmds Bash-Cmds AVM-Cmds Chipset-Cmds Linux-Cmds Shared-Libs Kernel-Mods Research

Info
  
Name-Collision - multiple objects in this wiki use the name avm2fiber_xdsld!
avm2fiber_xdsld (avmcmd) Fiber transceiver status monitoring daemon for 5490 / 5491.
avm2fiber_xdsld (evsink) Event-Sink of avm2fiber_xdsld
avm2fiber_xdsld (evsrc) Event-Source of avm2fiber_xdsld
avm2fiber_xdsld (process) Fiber transceiver status monitoring daemon for 5490 / 5491.
avm2fiber_xdsld (watchdog) Fiber transceiver status monitoring daemon for 5490 / 5491.

AVM-Command

Goto:   Examples  -  Events  -  Source  -  Dependencies   -   Model-Matrix   -   Symbols   -   SMW-Browser

Details

avm2fiber_xdsld is a Fiber transceiver status monitoring daemon for the 5490 / 5491 models.

Unlike the 55xx models the 54xx models don't have an explicit Fiber chip. They are variants of the 7490 with the DSL
frontend removed, an extra switch chip, and a Fiber transceiver connected to it. Everything else is done in software.
A deeper analysis of the difference can be found in my FREETZ_TYPE_549X_7490 research article.

avm2fiber_xdsld waits until the CPMAC drivers initialized the switch chip and the interface of the transceiver comes up,
and sends events about its details and status changes to the system.

On the 5491 avm2fiber_xdsld also updates the OpenWRT firmware sfp_fw.image in the GPON SFP module.

fw 7.29 help:

fritz5:/var/mod/root $ avm2fiber_xdsld -?

Usage: avm2fiber_xdsld [OPTIONS]

Options:
        -h,--help   this help
        -d,--daemon start this program as daemon 

        --shutdown      kill avm2fiber_xdsld

Examples

avm2fiber_xdsld is started in E40-fiber like this:

modprobe avm_fiber_if

fiber_monitor -d
avm2fiber_xdsld -d

avm2fiber_xdsld in daemon mode creates a log in /var/log/avm2fiber_xdsld.txt:

root@fritz1:/var/mod/root# cat /var/log/avm2fiber_xdsld

[AVM2FIBER MAIN][INFO]started..
[AVM2FIBER MAIN][INFO]Start deamon now
[AVM2FIBER MAIN][INFO]Start as daemon
[AVM2FIBER MAIN][INFO]avm2fiber_xdsld_sendIfaceStatusNotify: trigger IFACE_STATUS_NOTIFY status=0
[AVM2FIBER MAIN][ERR]avm2fiber_xdsld_pollEvent: unknown dsl_set_arch.substatus_arch 9
[AVM2FIBER IF][ERR]reading file /proc/avm/onu/raw_a0 (a0 payload) failed (ret = 0)
[AVM2FIBER MAIN][ERR]avm2fiber_xdsld_pollEvent: unknown dsl_set_arch.substatus_arch 23
[AVM2FIBER MAIN][INFO]started..
[AVM2FIBER MAIN][ERR]option -63 is not valid!

[AVM2FIBER MAIN][INFO]started..
[AVM2FIBER MAIN][INFO]programm terminate

The first block of entries is the daemon startup, the last 2 lines are an attempt to start it in client mode.
Client / server mode is prepared, but unlinke fiber_monitor there is neither any functionality nor any pipe created to query.

Note that the following only covers the 5490. If you have a freezed 5491 then please get in touch.

avm2fiber_xdsld accesses the transceiver of a 5490 in raw_a0 and raw_a2 at /proc/avm/onu/:

fritz5:/var/mod/root $ ls -l /proc/avm/onu

-r--r--r--    1 root     root             0 May  6 11:00 config
-r--r--r--    1 root     root             0 May  6 11:00 raw_a0
-r--r--r--    1 root     root             0 May  6 11:00 raw_a2
-r--r--r--    1 root     root             0 May  6 11:00 raw_monitor

raw_a0 and raw_a2 are 132 bytes binary structures, raw_monitor a 28 bytes binary structure, Only config is human readable:

fritz5:/var/mod/root $ cat /proc/avm/onu/config 

GEPON ONU Transceiver

Warning - Checksum-Error A2:CS 
Identifier                : 2 
Ext. Identifier           : 4 
Connector                 : 1 
Transceiver Codes         : 0 
Encoding                  : 1 
BR, Nominal               : 12 
Length (9 um) - km        : 20 
Length (9 um) - 100m      : -56 
Length for MMF            : 0 
Vendor Name               : SOPTO           
Channel Spacing           : 0 
Vendor OUI                : 0x00 0x00 0x00 
Vendor P/N                : SPT-F351G-S20D  
Vendor P/N Rev.           : 000 
Laser Wavelength          : 1310 
DWDM Wavelength           : 0 
CC_BASE                   : 0xe8
Options                   : 28 
BR, Max.                  : 0 
BR, Min.                  : 0 
Vendor SN                 : XXXXXXXXXXX  
Date Code                 : XXXXXX  
Diagnostic Monitoring Type: 0x68
Enhanced options          : 0xb0
SFF-8472 compliant        : 0x03
CC_EXT                    : 0x88
Vendor Specific           : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00  0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 
Temp High Alarm           : 0.00 
Temp Low Alarm            : 0.00 
Temp High Warning         : 0.00 
Temp Low Warning          : 0.00 
Voltage High Alarm mV     : 0 
Voltage Low Alarm mV      : 0 
Voltage High Warning mV   : 0 
Voltage Low Warning mV    : 0 
Bias High Alarm mA        : 0 
Bias Low Alarm mA         : 0 
Bias High Warning mA      : 0 
Bias Low Warning mA       : 0 
TX Power High Alarm dBm   : 0x0000
TX Power Low Alarm dBm    : 0x0000
TX Power High Warning dBm : 0x0000
TX Power Low Warning dBm  : 0x0000
RX Power High Alarm dBm   : 0x0000
RX Power Low Alarm dBm    : 0x0000
RX Power High Warning dBm : 0x0000
RX Power Low Warning dBm  : 0x0000
Rx_PWR (4)                : 0x00 0x00 0x00 0x00 
Rx_PWR (3)                : 0x00 0x00 0x00 0x00 
Rx_PWR (2)                : 0x00 0x00 0x00 0x00 
Rx_PWR (1)                : 0x00 0x00 0x00 0x00 
Rx_PWR (0)                : 0x00 0x00 0x00 0x00 
Tx_I (Slope)              : 0x00 0x00 
Tx_I (Offset)             : 0x00 0x00 
Tx_PWR (Slope)            : 0x00 0x00 
Tx_PWR (Offset)           : 0x00 0x00 
T (Slope)                 : 0x00 0x00 
T (Offset)                : 0x00 0x00 
V (Slope)                 : 0x00 0x00 
V (Offset)                : 0x00 0x00 
Checksum                  : 0x00
Temperature               : 0.00 
Supply Voltage mV         : 0 
Tx Bias Current mA        : 0 
Tx Optical Power dBm      : 0x0000
Rx Received Power dBm     : 0x0000
TX State                  : 0x00
Soft Tx Mode              : 0x00
Alarm Set                 : 0x00
RX Power Alarm Set        : 0x00
Warning Set               : 0x00
RX Power Warning Set      : 0x00
Password                  : 0x00 0x00 0x00 0x00 
User EEPROM Select        : 0x00

Events

Daily updated index of AVM-Events and AVMIPC-Datastore nodes affecting this command. Last update: 2023-12-10 05:13 GMT.
The owners of Event-Sinks and Event-Sources are manual research, which may be incomplete or even wrong.
A * in the Mod column marks info from Supportdata-Probes, which will always stay incomplete.
A ** in the Mod column marks info from Supportdata2 probes, which by their nature will stay way more incomplete.
A - in the Mod column marks manual research, the Firmware then shows where the item occurs, not the Relation.

Relation Typ Object Mod Firmware Info Origin
Sink evsink avm2fiber_xdsld (evsink) 2* 6.83 - 7.12 Event-Sink of avm2fiber_xdsld AVM
Receives event dsl_set_arch 2* 6.83 - 7.12 Set Broadband frontend architecture config AVM
Receives event ethernet_connect_status 2* 6.83 - 7.12 LAN port changes AVM
Receives event user_source_notify 2* 6.83 - 7.12 TODO AVM
Source evsrc avm2fiber_xdsld (evsrc) 2* 6.83 - 7.12 Event-Source of avm2fiber_xdsld AVM
Sends event dsl_get_arch 2* 6.83 - 7.12 Broadband frontend architecture details AVM
6 event relations for this command

Source

The names of source files compiled into an executable often help to understand function blocks (and show gaps in the docs).
fw 7.29 source files:

$ strings /usr/sbin/avm2fiber_xdsld | grep -e '\.c$' -e '\.cpp$'
 
avm2fiber_xdsld.c  

Dependencies

Daily updated index of all dependencies of this command. Last update: 2024-03-19 07:32 GMT.
A * in the Mod column marks info from Supportdata-Probes, which will always stay incomplete.

Relation Typ Object Mod Firmware Info Origin
Runs as proc avm2fiber_xdsld (process) 2* 6.83 - 7.12 Fiber transceiver status monitoring daemon for 5490 / 5491. AVM
Registers wdog avm2fiber_xdsld (watchdog) 1* 7.01 Fiber transceiver status monitoring daemon for 5490 / 5491. AVM
Depends on lib ld.so 2 7.12 - 7.29 Dynamic linker / loader Linux
Depends on lib libavm_event.so 2 6.69 - 7.29 AVM-Events management API AVM
Depends on lib libavmcsock.so 2 6.69 - 7.29 Networking, I/O and helper functions AVM
Depends on lib libbacktrace.so 2 6.69 - 7.29 Crash handler and logger AVM
Depends on lib libboxlib.so 2 6.69 - 7.29 Box status, logging and statistics functions AVM
Depends on lib libc.so 2 6.69 - 7.29 Standard C library Linux
Depends on lib libcrypto.so 1 7.01 - 7.29 OpenSSL general crypto and X.509 library Linux
Depends on lib libdl.so 2 6.69 - 7.12 Dynamic linking library Linux
Depends on lib libdslsmiface.so 2 6.69 - 7.29 DSL subsystem shared memory API AVM
Depends on lib libm.so 2 6.69 - 7.12 C math library Linux
Depends on lib libpthread.so 2 6.69 - 7.12 POSIX threading library Linux
Depends on lib librt.so 2 6.69 - 7.12 POSIX realtime extensions library Linux
Depends on lib libwdt.so 2 6.69 - 7.29 AVM-Watchdogs management API AVM
15 dependencies for this command

Model-Matrix

Daily updated index of the presence, path and size of this command for each model. Last update: 2024-03-19 06:01 GMT.
Showing all models using this command. Click any column header (click-wait-click) to sort the list by the respective data.
The (main/scrpn/boot/arm/prx/atom) label in the Model column shows which CPU is meant for models with multiple Linux instances.
Note that this list is merged from Firmware-Probes of all known AVM firmware for a model, including Recovery.exe and Labor-Files.

Model Firmware Path Size
FRITZ!Box 5490 (main) 6.69 - 7.29 /usr/sbin 14.4k - 18.2k
FRITZ!Box 5491 (main) 7.01 - 7.29 /usr/sbin 47.6k - 55.8k
2 models use this command

Symbols

Daily updated index of all symbols of this command. Last update: 2024-03-19 07:32 GMT.

Firmware Symbol
6.69 - 7.29 avm2fiber_cpmacif_speed_converter
6.69 - 7.29 avm2fiber_cpmacif_state_converter
6.69 - 7.29 avm2fiber_fiberif_getAllPortStats
7.01 - 7.29 avm2fiber_msb__check_firmware
7.01 - 7.29 avm2fiber_msb__commit_current_fw
7.12 - 7.29 avm2fiber_msb__create_connection
7.12 - 7.29 avm2fiber_msb__create_socket
7.01 - 7.29 avm2fiber_msb__get_gpon_status
7.12 - 7.29 avm2fiber_msb__get_persistent_info
7.12 - 7.29 avm2fiber_msb__get_sfp_log
7.12 - 7.29 avm2fiber_msb__get_sfp_log_part
7.01 - 7.29 avm2fiber_msb__get_stats
7.01 - 7.29 avm2fiber_msb__handle_status_update
7.01 - 7.29 avm2fiber_msb__handle_trace_data
7.01 - 7.29 avm2fiber_msb__read_message
7.27 - 7.29 avm2fiber_msb__reboot_sfp_module
7.01 - 7.29 avm2fiber_msb__request_sfp_log
7.01 - 7.29 avm2fiber_msb__reset_connection
7.01 - 7.29 avm2fiber_msb__send_firmware
7.01 - 7.29 avm2fiber_msb__send_message
7.12 - 7.29 avm2fiber_msb__set_connection_type
7.01 - 7.29 avm2fiber_msb__set_eq_id
7.01 - 7.29 avm2fiber_msb__set_gsn
7.29 avm2fiber_msb__set_iop_bitmask
7.27 - 7.29 avm2fiber_msb__set_onu_version
7.01 - 7.29 avm2fiber_msb__set_pw
7.01 - 7.29 avm2fiber_msb__set_sw_version
7.01 - 7.29 avm2fiber_msb__set_trace_lvl
7.01 - 7.29 avm2fiber_msb__start_sending
7.12 - 7.29 avm2fiber_msb__stop_sending
7.01 - 7.29 avm2fiber_msb__try_reconnect
7.27 - 7.29 avm2fiber_msb__update_mib_config
7.12 - 7.29 avm2fiber_xdsld_print_cmdstring
7.12 - 7.29 avm2fiber_xdsld_signalHandler
7.12 - 7.29 avm2fiber_xdsld_start
6.69 - 7.29 main
36 symbols for this command

SMW-Browser

Information is currently being retrieved from the backend.