[OpenWrt-Devel] [PATCH] lantiq: add dsl line_state mapping

mail at adrianschmutzler.de mail at adrianschmutzler.de
Tue Jun 16 11:42:47 EDT 2020


> -----Original Message-----
> From: openwrt-devel [mailto:openwrt-devel-bounces at lists.openwrt.org]
> On Behalf Of Florian Eckert
> Sent: Dienstag, 16. Juni 2020 10:26
> To: john at phrozen.org; dev at kresin.me; Eckert.Florian at googlemail.com
> Cc: openwrt-devel at lists.openwrt.org; Florian Eckert <fe at dev.tdt.de>
> Subject: [OpenWrt-Devel] [PATCH] lantiq: add dsl line_state mapping
> 
> The line_state of the DSL connection is described in the system via a
> hexadecimal variable. With this change the hexadecimal is mapped to a
> decimal value. With this change it is now possible to store this value in a
> database, so that it can be easily evaluated.

Interesting file this lantiq_dsl.sh ...

I'm wondering whether all of this really need to be in this file, or whether stuff can be moved to the package actually dealing with it?
This might also make it easier to change it when necessary.

Adrian

> 
> This is especially relevant for the collectd and gravana backend.
> 
> Signed-off-by: Florian Eckert <fe at dev.tdt.de>
> ---
>  .../base-files/lib/functions/lantiq_dsl.sh    | 82 +++++++++++++------
>  1 file changed, 55 insertions(+), 27 deletions(-)
> 
> diff --git a/target/linux/lantiq/base-files/lib/functions/lantiq_dsl.sh
> b/target/linux/lantiq/base-files/lib/functions/lantiq_dsl.sh
> index 11b02fc4aa..4827d10bc5 100755
> --- a/target/linux/lantiq/base-files/lib/functions/lantiq_dsl.sh
> +++ b/target/linux/lantiq/base-files/lib/functions/lantiq_dsl.sh
> @@ -650,40 +650,68 @@ line_data() {
>  line_state() {
>  	local lsg=$(dsl_cmd lsg)
>  	local ls=$(dsl_val "$lsg" nLineState);
> -	local s;
> +	local s n;
> 
>  	case "$ls" in
> -		"0x0")		s="not initialized" ;;
> -		"0x1")		s="exception" ;;
> -		"0x10")		s="not updated" ;;
> -		"0xff")		s="idle request" ;;
> -		"0x100")	s="idle" ;;
> -		"0x1ff")	s="silent request" ;;
> -		"0x200")	s="silent" ;;
> -		"0x300")	s="handshake" ;;
> -		"0x380")	s="full_init" ;;
> -		"0x400")	s="discovery" ;;
> -		"0x500")	s="training" ;;
> -		"0x600")	s="analysis" ;;
> -		"0x700")	s="exchange" ;;
> -		"0x800")	s="showtime_no_sync" ;;
> -		"0x801")	s="showtime_tc_sync" ;;
> -		"0x900")	s="fastretrain" ;;
> -		"0xa00")	s="lowpower_l2" ;;
> -		"0xb00")	s="loopdiagnostic active" ;;
> -		"0xb10")	s="loopdiagnostic data exchange" ;;
> -		"0xb20")	s="loopdiagnostic data request" ;;
> -		"0xc00")	s="loopdiagnostic complete" ;;
> -		"0x1000000")	s="test" ;;
> -		"0xd00")	s="resync" ;;
> -		"0x3c0")	s="short init entry" ;;
> -		"")		s="not running daemon"; ls="0xfff" ;;
> -		*)		s="unknown" ;;
> +		"0x0")		s="not initialized"
> +				n=1 ;;
> +		"0x1")		s="exception"
> +				n=2 ;;
> +		"0x10")		s="not updated"
> +				n=3 ;;
> +		"0xff")		s="idle request"
> +				n=4 ;;
> +		"0x100")	s="idle"
> +				n=5 ;;
> +		"0x1ff")	s="silent request"
> +				n=6 ;;
> +		"0x200")	s="silent"
> +				n=7 ;;
> +		"0x300")	s="handshake"
> +				n=8 ;;
> +		"0x380")	s="full_init"
> +				n=9 ;;
> +		"0x400")	s="discovery"
> +				n=10 ;;
> +		"0x500")	s="training"
> +				n=11 ;;
> +		"0x600")	s="analysis"
> +				n=12 ;;
> +		"0x700")	s="exchange"
> +				n=13 ;;
> +		"0x800")	s="showtime_no_sync"
> +				n=14 ;;
> +		"0x801")	s="showtime_tc_sync"
> +				n=15 ;;
> +		"0x900")	s="fastretrain"
> +				n=16 ;;
> +		"0xa00")	s="lowpower_l2"
> +				n=17 ;;
> +		"0xb00")	s="loopdiagnostic active"
> +				n=18 ;;
> +		"0xb10")	s="loopdiagnostic data exchange"
> +				n=19 ;;
> +		"0xb20")	s="loopdiagnostic data request"
> +				n=20 ;;
> +		"0xc00")	s="loopdiagnostic complete"
> +				n=21 ;;
> +		"0x1000000")	s="test"
> +				n=22 ;;
> +		"0xd00")	s="resync"
> +				n=23 ;;
> +		"0x3c0")	s="short init entry"
> +				n=24 ;;
> +		"")		s="not running daemon"
> +				ls="0xfff"
> +				n=25 ;;
> +		*)		s="unknown"
> +				n=26 ;;
>  	esac
> 
>  	if [ "$action" = "lucistat" ]; then
>  		echo "dsl.line_state_num=$ls"
>  		echo "dsl.line_state_detail=\"$s\""
> +		echo "dsl.line_state_mapping=$n"
>  		if [ "$ls" = "0x801" ]; then
>  			echo "dsl.line_state=\"UP\""
>  		else
> --
> 2.20.1
> 
> 
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: openpgp-digital-signature.asc
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20200616/b200717e/attachment.sig>
-------------- next part --------------
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list