------------------------------------------------------------------------ r2844 | niro | 2018-11-16 14:48:00 +0100 (Fr, 16. Nov 2018) | 1 Zeile -support variable hdmi configuration Index: mcore-tools/src/modules/basic-video/graphic.client.class.in =================================================================== --- mcore-tools/src/modules/basic-video/graphic.client.class.in (Revision 2843) +++ mcore-tools/src/modules/basic-video/graphic.client.class.in (Revision 2844) @@ -86,6 +86,16 @@ then write_zotac_quirk=1 fi + + if [ -f ${MCORE_CONFIG_PATH}/xorg/device/30-hdmi.conf ] + then + source ${MCORE_CONFIG_PATH}/xorg/device/30-hdmi.conf + case "${graphic_hdmi}" in + enabled) write_zotac_quirk=0 ;; + disabled) write_zotac_quirk=1 ;; + esac + fi + if [[ ${write_zotac_quirk} = 1 ]] then addconfig "# Autogenerated by mcored" @@ -126,6 +136,14 @@ mecho " Selects the graphic card driver used by Xorg." } +help_graphic_hdmi() +{ + mecho "set graphic.hdmi [action]" + mecho " Available actions:" + mecho " enable - enables the hdmi port" + mecho " disable - disables the hdmi port" +} + # set_graphic_resolution ${value} set_graphic_resolution() { @@ -229,6 +247,24 @@ fi } +set_graphic_hdmi() +{ + local action="${CLASS_ARGV[0]}" + local CONFIG + + case "${action}" in + enable|disable) + CONFIG="${MCORE_CONFIG_PATH}/xorg/device/30-hdmi.conf" + clearconfig + addconfig "graphic_hdmi=\"${action}\"" + ;; + *) + help_graphic_driver + return 1 + ;; + esac +} + get_graphic_driver() { local action="${CLASS_ARGV[0]}" @@ -257,3 +293,12 @@ ;; esac } + +get_graphic_hdmi() +{ + local CONFIG="${MCORE_CONFIG_PATH}/xorg/device/30-hdmi.conf" + if [ -f ${CONFIG} ] + then + rvecho "$(< ${CONFIG})" + fi +} Index: mcore-tools/src/modules/basic-video/graphic.control.class.in =================================================================== --- mcore-tools/src/modules/basic-video/graphic.control.class.in (Revision 2843) +++ mcore-tools/src/modules/basic-video/graphic.control.class.in (Revision 2844) @@ -7,6 +7,7 @@ push_config 10_graphic_resolution push_config 10_graphic_depth #push_config 10_graphic_refresh +push_config 10_graphic_hdmi help_graphic_resolution() { @@ -32,6 +33,12 @@ control_client "${serial}" help graphic.driver } +help_graphic_hdmi() +{ + local serial="${CLASS_ARGV[0]}" + control_client "${serial}" help graphic.hdmi +} + # set_graphic_driver $serial $value set_graphic_driver() { @@ -130,6 +137,31 @@ control_client "${serial}" set graphic.resolution "${value}" } +# set_graphic_hdmi $serial $value +set_graphic_hdmi() +{ + local serial="${CLASS_ARGV[0]}" + local value="${CLASS_ARGV[1]}" + + import_resource cfg_graphic "${serial}" hdmi "${value}" +} + +# control_graphic_hdmi $serial +control_graphic_hdmi() +{ + local serial="${CLASS_ARGV[0]}" + push_config_10_graphic_hdmi "${serial}" +} + +push_config_10_graphic_hdmi() +{ + local serial="$1" + local value + + value=$(mysqldo "select hdmi from cfg_graphic where serial='${serial}'") + control_client "${serial}" set graphic.hdmi "${value}" +} + push_firstboot_10_graphic_driver() { local serial="$1" ------------------------------------------------------------------------