Magellan Linux

Annotation of /mcore-src/trunk/mcore-tools/src/modules/basic-video/graphic.control.class.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2842 - (hide annotations) (download)
Fri Nov 16 13:43:52 2018 UTC (5 years, 5 months ago) by niro
File size: 4732 byte(s)
-support variable hdmi configuration
1 niro 2510 # $Id$
2 niro 2051
3 niro 2755 push_firstboot 10_graphic_driver
4     push_firstboot 10_graphic_resolution
5    
6 niro 2664 push_config 10_graphic_driver
7 niro 2579 push_config 10_graphic_resolution
8 niro 2636 push_config 10_graphic_depth
9 niro 2673 #push_config 10_graphic_refresh
10 niro 2842 push_config 10_graphic_hdmi
11 niro 2561
12 niro 2510 help_graphic_resolution()
13     {
14     local serial="${CLASS_ARGV[0]}"
15     control_client "${serial}" help graphic.resolution
16     }
17    
18     help_graphic_refresh()
19     {
20     local serial="${CLASS_ARGV[0]}"
21     control_client "${serial}" help graphic.refresh
22     }
23    
24     help_graphic_depth()
25     {
26     local serial="${CLASS_ARGV[0]}"
27     control_client "${serial}" help graphic.depth
28     }
29    
30     help_graphic_driver()
31     {
32     local serial="${CLASS_ARGV[0]}"
33     control_client "${serial}" help graphic.driver
34     }
35    
36 niro 2842 help_graphic_hdmi()
37     {
38     local serial="${CLASS_ARGV[0]}"
39     control_client "${serial}" help graphic.hdmi
40     }
41    
42 niro 2636 # set_graphic_driver $serial $value
43     set_graphic_driver()
44 niro 2051 {
45 niro 2305 local serial="${CLASS_ARGV[0]}"
46     local value="${CLASS_ARGV[1]}"
47 niro 2051
48     import_resource cfg_graphic "${serial}" module "${value}"
49     }
50    
51 niro 2636 control_graphic_driver()
52     {
53     local serial="${CLASS_ARGV[0]}"
54     push_config_10_graphic_driver "${serial}"
55     }
56    
57     push_config_10_graphic_driver()
58     {
59     local serial="$1"
60     local value
61    
62     value=$(mysqldo "select module from cfg_graphic where serial='${serial}'")
63     control_client "${serial}" set graphic.driver "${value}"
64     }
65    
66 niro 2051 # set_graphic_resolution $serial $value
67     set_graphic_resolution()
68     {
69 niro 2305 local serial="${CLASS_ARGV[0]}"
70     local value="${CLASS_ARGV[1]}"
71 niro 2051
72     import_resource cfg_graphic "${serial}" resolution "${value}"
73     }
74    
75     # control_graphic_resolution $serial
76     control_graphic_resolution()
77     {
78 niro 2305 local serial="${CLASS_ARGV[0]}"
79 niro 2579 push_config_10_graphic_resolution "${serial}"
80 niro 2561 }
81    
82 niro 2579 push_config_10_graphic_resolution()
83 niro 2561 {
84     local serial="$1"
85 niro 2051 local value
86    
87     value=$(mysqldo "select resolution from cfg_graphic where serial='${serial}'")
88     control_client "${serial}" set graphic.resolution "${value}"
89     }
90    
91     # set_graphic_depth $serial $value
92     set_graphic_depth()
93     {
94 niro 2305 local serial="${CLASS_ARGV[0]}"
95     local value="${CLASS_ARGV[1]}"
96 niro 2051
97     import_resource cfg_graphic "${serial}" depth "${value}"
98     }
99    
100 niro 2640 control_graphic_depth()
101 niro 2636 {
102     local serial="${CLASS_ARGV[0]}"
103     push_config_10_graphic_depth "${serial}"
104     }
105    
106     push_config_10_graphic_depth()
107     {
108     local serial="$1"
109     local value
110    
111     value=$(mysqldo "select depth from cfg_graphic where serial='${serial}'")
112     control_client "${serial}" set graphic.depth "${value}"
113     }
114    
115 niro 2051 # set_graphic_refesh $serial $value
116     set_graphic_refresh()
117     {
118 niro 2305 local serial="${CLASS_ARGV[0]}"
119     local value="${CLASS_ARGV[1]}"
120 niro 2051
121 niro 2560 import_resource cfg_graphic "${serial}" refresh_rate "${value}"
122 niro 2051 }
123    
124     # control_graphic_resolution $serial
125     control_graphic_refresh()
126     {
127 niro 2305 local serial="${CLASS_ARGV[0]}"
128 niro 2636 push_config_10_graphic_refresh "${serial}"
129     }
130    
131     push_config_10_graphic_refresh()
132     {
133     local serial="$1"
134 niro 2051 local value
135    
136     value=$(mysqldo "select hz from cfg_graphic where serial='${serial}'")
137     control_client "${serial}" set graphic.resolution "${value}"
138     }
139 niro 2755
140 niro 2842 # set_graphic_hdmi $serial $value
141     set_graphic_hdmi()
142     {
143     local serial="${CLASS_ARGV[0]}"
144     local value="${CLASS_ARGV[1]}"
145    
146     import_resource cfg_graphic "${serial}" hdmi "${value}"
147     }
148    
149     # control_graphic_hdmi $serial
150     control_graphic_hdmi()
151     {
152     local serial="${CLASS_ARGV[0]}"
153     push_config_10_graphic_hdmi "${serial}"
154     }
155    
156     push_config_10_graphic_hdmi()
157     {
158     local serial="$1"
159     local value
160    
161     value=$(mysqldo "select hdmi from cfg_graphic where serial='${serial}'")
162     control_client "${serial}" set graphic.hdmi "${value}"
163     }
164    
165 niro 2755 push_firstboot_10_graphic_driver()
166     {
167     local serial="$1"
168     local graphic_driver
169    
170 niro 2815 if [[ ${MCORE_GRAPHIC_HWDETECT_DEEP} = 1 ]]
171 niro 2755 then
172 niro 2815 nsslsay_queue_init
173     nsslsay_queue_add "nocolors"
174     nsslsay_queue_add "get hardware.detect driver graphic"
175     graphic_driver=$(control_client "${serial}" run-queue)
176     if [[ -n ${graphic_driver} ]]
177     then
178     decho "graphic_driver='${graphic_driver}'"
179     import_resource cfg_graphic "${serial}" module "${graphic_driver}"
180     else
181     decho "no graphic_driver found"
182     fi
183     else
184     # default to runtime autodetection
185     graphic_driver="auto"
186 niro 2755 import_resource cfg_graphic "${serial}" module "${graphic_driver}"
187     fi
188     }
189    
190     push_firstboot_10_graphic_resolution()
191     {
192     local serial="$1"
193     local monitor_info
194     local monitor_resolution
195    
196 niro 2815 if [[ ${MCORE_GRAPHIC_HWDETECT_DEEP} = 1 ]]
197 niro 2755 then
198 niro 2815 nsslsay_queue_init
199     nsslsay_queue_add "nocolors"
200     nsslsay_queue_add "get hardware.detect info monitor"
201     monitor_info=$(control_client "${serial}" run-queue)
202     monitor_resolution="${monitor_info##*;}"
203     if [[ -n ${monitor_resolution} ]]
204     then
205     decho "monitor_resolution='${monitor_resolution}'"
206     import_resource cfg_graphic "${serial}" resolution "${monitor_resolution}"
207     else
208     decho "no monitor_resolution found"
209     fi
210     else
211     monitor_resolution="auto"
212 niro 2755 import_resource cfg_graphic "${serial}" resolution "${monitor_resolution}"
213     fi
214     }