Author: pebender
Date: Wed Apr 8 15:15:48 2009
New Revision: 4575
Modified:
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_X.pm
Log:
- Fixed some MM_X_* variable default problems related to the introduction
of MM_X_OUTPUT_HDMI.
Modified:
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_X.pm
==============================================================================
---
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_X.pm
(original)
+++
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_X.pm
Wed Apr 8 15:15:48 2009
@@ -126,7 +126,7 @@
};
$var_list{'MM_X_OUTPUT_TV'} =
{
- prerequisite => ['MM_X_DRIVER', 'MM_X_OUTPUT_DVI', 'MM_X_OUTPUT_VGA'],
+ prerequisite =>
['MM_X_DRIVER', 'MM_X_OUTPUT_HDMI', 'MM_X_OUTPUT_DVI', 'MM_X_OUTPUT_VGA'],
value_default => 'none',
value_valid => 'none|auto|[0-9]+',
extra => sub
@@ -135,15 +135,35 @@
my $name = shift;
my $success = 1;
- if (($minimyth->var_get('MM_X_OUTPUT_DVI') eq 'none') &&
- ($minimyth->var_get('MM_X_OUTPUT_VGA') eq 'none') &&
- ($minimyth->var_get('MM_X_OUTPUT_TV') eq 'none'))
+ if (($minimyth->var_get('MM_X_OUTPUT_HDMI') eq 'none') &&
+ ($minimyth->var_get('MM_X_OUTPUT_DVI') eq 'none') &&
+ ($minimyth->var_get('MM_X_OUTPUT_VGA') eq 'none') &&
+ ($minimyth->var_get('MM_X_OUTPUT_TV') eq 'none'))
{
- $minimyth->message_output('err',
qq('MM_X_OUTPUT_DVI', 'MM_X_OUTPUT_VGA' and 'MM_X_OUTPUT_TV' are all
disabled.));
+ $minimyth->message_output('err',
qq('MM_X_OUTPUT_HDMI', 'MM_X_OUTPUT_DVI', 'MM_X_OUTPUT_VGA'
and 'MM_X_OUTPUT_TV' are all disabled.));
}
- if ($minimyth->var_get('MM_X_DRIVER') eq 'nvidia')
+ if (($minimyth->var_get('MM_X_DRIVER') eq 'intel' ) &&
+ ($minimyth->var_get('MM_X_DRIVER') eq 'nvidia'))
{
# Make sure no more than one output is enabled.
+ if ((! $minimyth->var_get('MM_X_OUTPUT_HDMI') eq 'none') &&
+ (! $minimyth->var_get('MM_X_OUTPUT_DVI') eq 'none'))
+ {
+ $minimyth->message_output('err', qq('MM_X_OUTPUT_HDMI'
and 'MM_X_OUTPUT_DVI' are both enabled.));
+ $success = 0;
+ }
+ if ((! $minimyth->var_get('MM_X_OUTPUT_HDMI') eq 'none') &&
+ (! $minimyth->var_get('MM_X_OUTPUT_VGA') eq 'none'))
+ {
+ $minimyth->message_output('err', qq('MM_X_OUTPUT_HDMI'
and 'MM_X_OUTPUT_VGA' are both enabled.));
+ $success = 0;
+ }
+ if ((! $minimyth->var_get('MM_X_OUTPUT_HDMI') eq 'none') &&
+ (! $minimyth->var_get('MM_X_OUTPUT_TV') eq 'none'))
+ {
+ $minimyth->message_output('err', qq('MM_X_OUTPUT_HDMI'
and 'MM_X_OUTPUT_TV' are both enabled.));
+ $success = 0;
+ }
if ((! $minimyth->var_get('MM_X_OUTPUT_DVI') eq 'none') &&
(! $minimyth->var_get('MM_X_OUTPUT_VGA') eq 'none'))
{
@@ -166,6 +186,18 @@
if ($minimyth->var_get('MM_X_DRIVER') eq 'openchrome')
{
# Make sure that DVI and TV outputs are not enabled at the
same time.
+ if ((! $minimyth->var_get('MM_X_OUTPUT_HDMI') eq 'none') &&
+ (! $minimyth->var_get('MM_X_OUTPUT_DVI') eq 'none'))
+ {
+ $minimyth->message_output('err', qq('MM_X_OUTPUT_HDMI'
and 'MM_X_OUTPUT_DVI' are both enabled.));
+ $success = 0;
+ }
+ if ((! $minimyth->var_get('MM_X_OUTPUT_HDMI') eq 'none') &&
+ (! $minimyth->var_get('MM_X_OUTPUT_TV') eq 'none'))
+ {
+ $minimyth->message_output('err', qq('MM_X_OUTPUT_HDMI'
and 'MM_X_OUTPUT_TV' are both enabled.));
+ $success = 0;
+ }
if ((! $minimyth->var_get('MM_X_OUTPUT_DVI') eq 'none') &&
(! $minimyth->var_get('MM_X_OUTPUT_TV') eq 'none'))
{
@@ -212,7 +244,7 @@
};
$var_list{'MM_X_REFRESH'} =
{
- prerequisite =>
['MM_VIDEO_ASPECT_RATIO' , 'MM_VIDEO_RESIZE_ENABLED' , 'MM_X_OUTPUT_DVI',
'MM_X_OUTPUT_TV', 'MM_X_OUTPUT_VGA', 'MM_X_RESOLUTION' , 'MM_X_TV_TYPE'],
+ prerequisite =>
['MM_VIDEO_ASPECT_RATIO' , 'MM_VIDEO_RESIZE_ENABLED' , 'MM_X_OUTPUT_HDMI',
'MM_X_OUTPUT_DVI', 'MM_X_OUTPUT_TV', 'MM_X_OUTPUT_VGA', 'MM_X_RESOLUTION' ,
'MM_X_TV_TYPE'],
value_default => 'auto',
value_valid => 'auto|(VertRefresh
)?[0-9]+([.][0-9]*)?(-[0-9]+([.][0-9]*)?)?(,[0-9]+([.][0-9]*)?(-[0-9]+([.][0-9]*)?)?)*',
value_auto => sub
@@ -251,6 +283,13 @@
}
if (! $value_auto)
{
+ if ($minimyth->var_get('MM_X_OUTPUT_HDMI') ne 'none')
+ {
+ $value_auto = '60.0';
+ }
+ }
+ if (! $value_auto)
+ {
if ($minimyth->var_get('MM_X_OUTPUT_DVI') ne 'none')
{
$value_auto = '60.0';
@@ -458,7 +497,7 @@
};
$var_list{'MM_X_MODE'} =
{
- prerequisite =>
['MM_VIDEO_ASPECT_RATIO', 'MM_VIDEO_RESIZE_ENABLED', 'MM_X_DRVER',
'MM_X_MODELINE', 'MM_X_OUTPUT_DVI', 'MM_X_OUTPUT_TV', 'MM_X_OUTPUT_VGA',
'MM_X_RESOLUTION', 'MM_X_TV_TYPE'],
+ prerequisite =>
['MM_VIDEO_ASPECT_RATIO', 'MM_VIDEO_RESIZE_ENABLED', 'MM_X_DRVER',
'MM_X_MODELINE', 'MM_X_OUTPUT_HDMI', 'MM_X_OUTPUT_DVI', 'MM_X_OUTPUT_TV',
'MM_X_OUTPUT_VGA', 'MM_X_RESOLUTION', 'MM_X_TV_TYPE'],
value_clean => sub
{
my $minimyth = shift;
@@ -517,6 +556,18 @@
}
}
when (/^16:10$/) {}
+ }
+ }
+ }
+ if (! $value_auto)
+ {
+ if ($minimyth->var_get('MM_X_OUTPUT_HDMI') ne 'none')
+ {
+ given ($minimyth->var_get('MM_VIDEO_ASPECT_RATIO'))
+ {
+ when (/^4:3$/) { $value_auto = '800x600'; }
+ when (/^16:9$/) { $value_auto = '1280x720'; }
+ when (/^16:10$/) { $value_auto = '1440x900'; }
}
}
}
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"minimyth-commits" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/minimyth-commits?hl=en
-~----------~----~----~----~------~----~------~--~---