diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/network.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/network.lua
index 2be88fcf80..385e1141ec 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/network.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/network.lua
@@ -8,6 +8,49 @@ m = Map("network", translate("Interfaces"))
m.pageaction = false
m:section(SimpleSection).template = "admin_network/iface_overview"
+if fs.access("/etc/init.d/dsl_control") then
+ dsl = m:section(TypedSection, "dsl", translate("DSL"))
+
+ dsl.anonymous = true
+
+ annex = dsl:option(ListValue, "annex", translate("Annex"))
+ annex:value("a", translate("Annex A + L + M (all)"))
+ annex:value("b", translate("Annex B (all)"))
+ annex:value("j", translate("Annex J (all)"))
+ annex:value("m", translate("Annex M (all)"))
+ annex:value("bdmt", translate("Annex B G.992.1"))
+ annex:value("b2", translate("Annex B G.992.3"))
+ annex:value("b2p", translate("Annex B G.992.5"))
+ annex:value("at1", translate("ANSI T1.413"))
+ annex:value("admt", translate("Annex A G.992.1"))
+ annex:value("alite", translate("Annex A G.992.2"))
+ annex:value("a2", translate("Annex A G.992.3"))
+ annex:value("a2p", translate("Annex A G.992.5"))
+ annex:value("l", translate("Annex L G.992.3 POTS 1"))
+ annex:value("m2", translate("Annex M G.992.3"))
+ annex:value("m2p", translate("Annex M G.992.5"))
+
+ tone = dsl:option(ListValue, "tone", translate("Tone"))
+ tone:value("", translate("auto"))
+ tone:value("a", translate("A43C + J43 + A43"))
+ tone:value("av", translate("A43C + J43 + A43 + V43"))
+ tone:value("b", translate("B43 + B43C"))
+ tone:value("bv", translate("B43 + B43C + V43"))
+
+ xfer_mode = dsl:option(ListValue, "xfer_mode", translate("Encapsulation mode"))
+ xfer_mode:value("atm", translate("ATM (Asynchronous Transfer Mode)"))
+ xfer_mode:value("ptm", translate("PTM/EFM (Packet Transfer Mode)"))
+
+ line_mode = dsl:option(ListValue, "line_mode", translate("DSL line mode"))
+ line_mode:value("", translate("auto"))
+ line_mode:value("adsl", translate("ADSL"))
+ line_mode:value("vdsl", translate("VDSL"))
+
+ firmware = dsl:option(Value, "firmware", translate("Firmware File"))
+
+ m.pageaction = true
+end
+
-- Show ATM bridge section if we have the capabilities
if fs.access("/usr/sbin/br2684ctl") then
atm = m:section(TypedSection, "atm-bridge", translate("ATM Bridges"),
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm
index 8bfc61b99b..2abb370762 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm
@@ -276,20 +276,56 @@
var s = String.format(
'<%:Status%>: %s
' +
'<%:Line State%>: %s [0x%x]
' +
- '<%:Line Speed%>: %s/s / %s/s
' +
- '<%:Line Attenuation%>: %s dB / %s dB
' +
- '<%:Noise Margin%>: %s dB / %s dB
',
+ '<%:Line Mode%>: %s
' +
+ '<%:Annex%>: %s
' +
+ '<%:Profile%>: %s
' +
+ '<%:Data Rate%>: %s/s / %s/s
' +
+ '<%:Max. Attainable Data Rate (ATTNDR)%>: %s/s / %s/s
' +
+ '<%:Latency%>: %s / %s
' +
+ '<%:Line Attenuation (LATN)%>: %s dB / %s dB
' +
+ '<%:Signal Attenuation (SATN)%>: %s dB / %s dB
' +
+ '<%:Noise Margin (SNR)%>: %s dB / %s dB
' +
+ '<%:Aggregate Transmit Power(ACTATP)%>: %s dB / %s dB
' +
+ '<%:Forward Error Correction Seconds (FECS)%>: %s / %s
' +
+ '<%:Errored seconds (ES)%>: %s / %s
' +
+ '<%:Severely Errored Seconds (SES)%>: %s / %s
' +
+ '<%:Loss of Signal Seconds (LOSS)%>: %s / %s
' +
+ '<%:Unavailable Seconds (UAS)%>: %s / %s
' +
+ '<%:Header Error Code Errors (HEC)%>: %s / %s
' +
+ '<%:Non Pre-emtive CRC errors (CRC_P)%>: %s / %s
' +
+ '<%:Pre-emtive CRC errors (CRCP_P)%>: %s / %s
' +
+ '<%:Line Uptime%>: %s
' +
+ '<%:ATU-C System Vendor ID%>: %s
' +
+ '<%:Power Management Mode%>: %s
',
info.dsl.line_state, info.dsl.line_state_detail,
info.dsl.line_state_num,
+ info.dsl.line_mode_s,
+ info.dsl.annex_s,
+ info.dsl.profile_s,
info.dsl.data_rate_down_s, info.dsl.data_rate_up_s,
+ info.dsl.max_data_rate_down_s, info.dsl.max_data_rate_up_s,
+ info.dsl.latency_num_down, info.dsl.latency_num_up,
info.dsl.line_attenuation_down, info.dsl.line_attenuation_up,
- info.dsl.noise_margin_down, info.dsl.noise_margin_up
+ info.dsl.noise_margin_down, info.dsl.noise_margin_up,
+ info.dsl.signal_attenuation_down, info.dsl.signal_attenuation_up,
+ info.dsl.actatp_down, info.dsl.actatp_up,
+ info.dsl.errors_fec_near, info.dsl.errors_fec_far,
+ info.dsl.errors_es_near, info.dsl.errors_es_far,
+ info.dsl.errors_ses_near, info.dsl.errors_ses_far,
+ info.dsl.errors_loss_near, info.dsl.errors_loss_far,
+ info.dsl.errors_uas_near, info.dsl.errors_uas_far,
+ info.dsl.errors_hec_near, info.dsl.errors_hec_far,
+ info.dsl.errors_crc_p_near, info.dsl.errors_crc_p_far,
+ info.dsl.errors_crcp_p_near, info.dsl.errors_crcp_p_far,
+ info.dsl.line_uptime_s,
+ info.dsl.atuc_vendor_id,
+ info.dsl.power_mode_s
);
dsl_s.innerHTML = String.format('%s', s);
dsl_i.innerHTML = String.format(
'' +
- '
ADSL'
+ '
DSL'
);
<% end %>
@@ -707,9 +743,9 @@
<% if has_dsl then %>