summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2020-08-18 16:40:51 +0200
committerChristian Poessinger <christian@poessinger.com>2020-08-18 16:40:51 +0200
commitb1675e420479cd6b582c66c0902d6e326340658f (patch)
tree04bb06f117850da675f7678be6b80ecc2e522a6f
parentb9658cf8fa85d5d2bdc503d10340dc82c9c2a8c0 (diff)
downloadvyos-1x-b1675e420479cd6b582c66c0902d6e326340658f.tar.gz
vyos-1x-b1675e420479cd6b582c66c0902d6e326340658f.zip
lcd: T2564: add support for Lanner, Watchguard, Symantec boxes
-rw-r--r--data/templates/lcd/LCDd.conf.tmpl12
-rw-r--r--interface-definitions/system-lcd.xml.in16
-rwxr-xr-xsrc/conf_mode/system_lcd.py4
-rw-r--r--src/systemd/lcdproc.service4
4 files changed, 26 insertions, 10 deletions
diff --git a/data/templates/lcd/LCDd.conf.tmpl b/data/templates/lcd/LCDd.conf.tmpl
index da749d04a..bde177b6a 100644
--- a/data/templates/lcd/LCDd.conf.tmpl
+++ b/data/templates/lcd/LCDd.conf.tmpl
@@ -48,8 +48,12 @@ DriverPath=/usr/lib/x86_64-linux-gnu/lcdproc/
# sed1520, serialPOS, serialVFD, shuttleVFD, sli, stv5730, svga, t6963,
# text, tyan, ula200, vlsys_m428, xosd, yard2LCD
-{% if model is defined and model.startswith('CFA-') %}
+{% if model is defined %}
+{% if model.startswith('cfa-') %}
Driver=CFontzPacket
+{% elif model == 'sdec' %}
+Driver=sdeclcd
+{% endif %}
{% endif %}
# Tells the driver to bind to the given interface. [default: 127.0.0.1]
@@ -112,7 +116,7 @@ Heartbeat=off
TitleSpeed=10
{% if model is defined and model is not none %}
-{% if model.startswith('CFA-') %}
+{% if model.startswith('cfa-') %}
## CrystalFontz packet driver (for CFA533, CFA631, CFA633 & CFA635) ##
[CFontzPacket]
Model={{ model.split('-')[1] }}
@@ -122,5 +126,9 @@ Brightness=500
OffBrightness=50
Reboot=yes
USB=yes
+{% elif model == 'sdec' %}
+## SDEC driver for Lanner, Watchguard, Sophos sppliances ##
+[sdeclcd]
+# No options
{% endif %}
{% endif %}
diff --git a/interface-definitions/system-lcd.xml.in b/interface-definitions/system-lcd.xml.in
index ad59acb6b..36116ae1b 100644
--- a/interface-definitions/system-lcd.xml.in
+++ b/interface-definitions/system-lcd.xml.in
@@ -12,26 +12,30 @@
<properties>
<help>Model of the display attached to this system [REQUIRED]</help>
<completionHelp>
- <list>CFA-533 CFA-631 CFA-633 CFA-635</list>
+ <list>cfa-533 cfa-631 cfa-633 cfa-635 sdec</list>
</completionHelp>
<valueHelp>
- <format>CFA-533</format>
+ <format>cfa-533</format>
<description>Crystalfontz CFA-533</description>
</valueHelp>
<valueHelp>
- <format>CFA-631</format>
+ <format>cfa-631</format>
<description>Crystalfontz CFA-631</description>
</valueHelp>
<valueHelp>
- <format>CFA-633</format>
+ <format>cfa-633</format>
<description>Crystalfontz CFA-633</description>
</valueHelp>
<valueHelp>
- <format>CFA-635</format>
+ <format>cfa-635</format>
<description>Crystalfontz CFA-635</description>
</valueHelp>
+ <valueHelp>
+ <format>sdec</format>
+ <description>Lanner, Watchguard, Nexcom NSA, Sophos UTM appliances</description>
+ </valueHelp>
<constraint>
- <regex>^(CFA-533|CFA-631|CFA-633|CFA-635)$</regex>
+ <regex>^(cfa-533|cfa-631|cfa-633|cfa-635|sdec)$</regex>
</constraint>
</properties>
</leafNode>
diff --git a/src/conf_mode/system_lcd.py b/src/conf_mode/system_lcd.py
index 0ad1318f0..31a09252d 100755
--- a/src/conf_mode/system_lcd.py
+++ b/src/conf_mode/system_lcd.py
@@ -41,6 +41,10 @@ def verify(lcd):
if not lcd:
return None
+ if 'model' in lcd and lcd['model'] in ['sdec']:
+ # This is a fixed LCD display, no device needed - bail out early
+ return None
+
if not {'device', 'model'} <= set(lcd):
raise ConfigError('Both device and driver must be set!')
diff --git a/src/systemd/lcdproc.service b/src/systemd/lcdproc.service
index 5aa99ec78..ef717667a 100644
--- a/src/systemd/lcdproc.service
+++ b/src/systemd/lcdproc.service
@@ -1,8 +1,8 @@
[Unit]
Description=LCDproc system status information viewer on %I
Documentation=man:lcdproc(8) http://www.lcdproc.org/
-After=vyos-router.service
-After=LCDd.service
+After=vyos-router.service LCDd.service
+Requires=LCDd.service
[Service]
User=root