Author: pebender
Date: Tue May  5 20:33:07 2009
New Revision: 4715

Added:
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_FIRMWARE.pm
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/mm_firmware_wait
    
(contents, props changed)
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/05-minimyth-detect-firmware.rules.disabled
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/06-minimyth-firmware.rules
       - copied unchanged from r4709,  
/trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/06-minimyth-firmware.rules.disabled
Removed:
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/firmware.pm
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/05-minimyth-detect-tuner.rules.disabled
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/06-minimyth-firmware.rules.disabled
Modified:
    trunk/gar-minimyth/html/minimyth/conf/minimyth.conf
    trunk/gar-minimyth/html/minimyth/document-changelog.txt
    trunk/gar-minimyth/html/minimyth/document-minimyth_conf.html
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf.pm
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_BACKEND.pm
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/obsolete
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/rc.pl
     
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/01-minimyth-modprobe.rules.disabled
    trunk/gar-minimyth/script/perl/perl-MiniMyth/checksums
    trunk/gar-minimyth/script/perl/perl-MiniMyth/files/MiniMyth.pm

Log:
- Improved init
     - Changed init so that firmware files are fetched before firmware
       dependent kernel drivers are loaded.
- Modified MiniMyth configuration
     - Added MM_FIRMWARE_FILE_LIST.
     - Obsoleted MM_TUNER_FIRMWARE_FILE_LIST as it has been replaced by the  
more
       general MM_FIRMWARE_FILE_LIST.



Modified: trunk/gar-minimyth/html/minimyth/conf/minimyth.conf
==============================================================================
--- trunk/gar-minimyth/html/minimyth/conf/minimyth.conf (original)
+++ trunk/gar-minimyth/html/minimyth/conf/minimyth.conf Tue May  5 20:33:07  
2009
@@ -53,6 +53,12 @@
  #MM_SECURITY_FETCH_CA_BUNDLE_CRT='yes'

   
################################################################################
+# Firmware configuration variables.
+#
+# MM_FIRMWARE_FILE_LIST
+################################################################################
+
+################################################################################
  # ACPI configuration variables.
  #
  # MM_ACPI_EVENT_BUTTON_POWER
@@ -307,7 +313,6 @@
  #
  # MM_BACKEND_ENABLED
  # MM_BACKEND_DEBUG_LEVEL
-# MM_BACKEND_TUNER_FIRMWARE_FILE_LIST
   
################################################################################

   
################################################################################

Modified: trunk/gar-minimyth/html/minimyth/document-changelog.txt
==============================================================================
--- trunk/gar-minimyth/html/minimyth/document-changelog.txt     (original)
+++ trunk/gar-minimyth/html/minimyth/document-changelog.txt     Tue May  5  
20:33:07 2009
@@ -11,9 +11,16 @@
                                                   patch glvdpau20462.
      MythTV trunk:        version trunk.20488     trunk svn 20488.

+Modified MiniMyth configuration
+    - Added MM_FIRMWARE_FILE_LIST.
+    - Obsoleted MM_TUNER_FIRMWARE_FILE_LIST as it has been replaced by the  
more
+      general MM_FIRMWARE_FILE_LIST.
+
  Improved init
      - Changed audio init so that it uses the entire simple control  
identifier
        (not just the name) when enabling/disabling the control.
+    - Changed init so that firmware files are fetched before firmware
+      dependent kernel drivers are loaded.

  Improved MythV slave backend support.
      - Added support for DVB USB devices that make use of the  
dvb-usb-dib0700

Modified: trunk/gar-minimyth/html/minimyth/document-minimyth_conf.html
==============================================================================
--- trunk/gar-minimyth/html/minimyth/document-minimyth_conf.html        
(original)
+++ trunk/gar-minimyth/html/minimyth/document-minimyth_conf.html        Tue May 
 5  
20:33:07 2009
@@ -32,6 +32,7 @@
              <li><a href="#MM_MINIMYTH">Configuration variables for:  
MiniMyth</a></li>
              <li><a href="#MM_DHCP">Configuration variables for: DHCP  
override</a></li>
              <li><a href="#MM_SECURITY">Configuration variables for:  
security</a></li>
+            <li><a href="#MM_FIRMWARE">Configuration variables for:  
firmware</a></li>
              <li><a href="#MM_ACPI">Configuration variables for:  
ACPI</a></li>
              <li><a href="#MM_CPU">Configuration variables for: CPU</a></li>
              <li><a href="#MM_AUDIO">Configuration variables for:  
audio</a></li>
@@ -363,6 +364,47 @@
              </dd>
            </dl>
          </div>
+        <div id="MM_FIRMWARE" class="section">
+          <div class="heading">Configuration variables for: firmware</div>
+          <ul>
+            <li><a href="#MM_FIRMWARE-overview">Overview</a></li>
+          </ul>
+          <ul>
+            <li><a  
href="#MM_FIRMWARE_FILE_LIST">MM_FIRMWARE_FILE_LIST</a></li>
+          </ul>
+          <dl>
+            <dt id="MM_FIRMWARE-overview"><strong>Overview</strong></dt>
+            <dd>
+              <p>
+                Firmware related configuration variables.
+              </p>
+            </dd>
+            <dt  
id="MM_FIRMWARE_FILE_LIST"><strong>MM_FIRMWARE_FILE_LIST</strong></dt>
+            <dd>
+              <p>
+                A list of firmware files to add.
+                These firmware files will be fetched from the MiniMyth  
system's MiniMyth read-only configuration directory.
+                Valid values are 'auto', 'none' or a space separated list  
of file names, with 'auto' being the default.
+              </p>
+              <p>
+                If the value is 'auto', then MiniMyth will decide the  
firmware files based on the hardware present.
+                MiniMyth autodects the following firmware for at least  
some hardware:
+              </p>
+              <ul>
+                <li><a  
href="http://www.linuxtv.org/downloads/firmware/dvb-fe-bcm3510-01.fw";>dvb-fe-bcm3510-01.fw</a></li>
+                <li><a  
href="http://www.wi-bw.tfh-wildau.de/~pboettch/home/files/dvb-usb-dib0700-1.20.fw";>dvb-usb-dib0700-1.20.fw</a></li>
+                <li><a  
href="http://www.ivtvdriver.org/index.php/Download#Firmware";>v4l-cx2341x-enc.fw</a></li>
+              </ul>
+              <p>
+                If MiniMyth does not detect the firmware required by your  
hardware, then
+                <a href="http://www.minimyth.org/forum/";>let us know</a>
+                the output of the commands 'lspci&nbsp;-mn' and 'lsusb',
+                the firmware file required, and
+                the URL on the Internet from where the firmware file can  
be downloaded.
+              </p>
+            </dd>
+          </dl>
+        </div>
          <div id="MM_ACPI" class="section">
            <div class="heading">Configuration variables for: ACPI</div>
            <ul>
@@ -2911,7 +2953,6 @@
            <ul>
              <li><a href="#MM_BACKEND_ENABLED">MM_BACKEND_ENABLED</a></li>
              <li><a  
href="#MM_BACKEND_DEBUG_LEVEL">MM_BACKEND_DEBUG_LEVEL</a></li>
-            <li><a  
href="#MM_BACKEND_TUNER_FIRMWARE_FILE_LIST">MM_BACKEND_TUNER_FIRMWARE_FILE_LIST</a></li>
            </ul>
            <dl>
              <dt id="MM_BACKEND-overview"><strong>Overview</strong></dt>
@@ -2978,22 +3019,6 @@
                  being the default.
                </p>
              </dd>
-            <dt  
id="MM_BACKEND_TUNER_FIRMWARE_FILE_LIST"><strong>MM_BACKEND_TUNER_FIRMWARE_FILE_LIST</strong></dt>
-            <dd>
-              <p>
-                A list of tuner firmware files to add.
-                These tuner firmware files will be fetched from the  
MiniMyth system's MiniMyth read-only configuration directory.
-                Valid values are 'auto', 'none' or a space separated list  
of file names, with 'auto' being the default.
-              </p>
-              <p>
-                If the value is 'auto', then MiniMyth will decide the  
tuner firmware files based on the tuners present.
-                MiniMyth autodects the following firmware for at least  
some tuners:
-              </p>
-              <ul>
-                <li><a  
href="http://www.linuxtv.org/downloads/firmware/dvb-fe-bcm3510-01.fw";>dvb-fe-bcm3510-01.fw</a></li>
-                <li><a  
href="http://www.ivtvdriver.org/index.php/Download#Firmware";>v4l-cx2341x-enc.fw</a></li>
-              </ul>
-            </dd>
            </dl>
          </div>
          <div id="MM_MYTHDB" class="section">
@@ -3080,7 +3105,7 @@
                alt="Valid CSS!"      height="31" width="88" /></a>
          </div>
          <div class="version">
-          Last Updated on 2009-04-26
+          Last Updated on 2009-05-05
            <br />
             
&lt;&nbsp;mailto&nbsp;:&nbsp;webmaster&nbsp;at&nbsp;minimyth&nbsp;dot&nbsp;org&nbsp;&gt;
          </div>

Modified:  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf.pm
==============================================================================
---  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf.pm
        
(original)
+++  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf.pm
        
Tue May  5 20:33:07 2009
@@ -8,6 +8,7 @@

  use Cwd ();
  use File::Basename ();
+use File::Path ();
  use MiniMyth ();

  sub start
@@ -18,8 +19,10 @@
      my $dir = Cwd::abs_path(File::Basename::dirname(__FILE__));

      # This is a hack for testing that should never get invoked during  
normal boot.
-    unlink('/etc/conf.d/dhcp.override') if  
(-e '/etc/conf.d/dhcp.override');
-    unlink('/etc/conf.d/minimyth')      if (-e '/etc/conf.d/minimyth');
+    unlink('/etc/conf.d/dhcp.override')                 if  
(-e '/etc/conf.d/dhcp.override');
+    unlink('/etc/conf.d/minimyth')                      if  
(-e '/etc/conf.d/minimyth');
+    File::Path::rmtree('/var/cache/minimyth/init/conf') if  
(-d '/var/cache/minimyth/init/conf');
+    File::Path::rmtree('/var/cache/minimyth/detect')    if  
(-d '/var/cache/minimyth/detect');

      # Read core and dhcp configuration files, which are included  
in '/etc/conf'.
      $minimyth->var_clear();
@@ -128,17 +131,35 @@
          }
      }

-    # Enable configuration auto-detection udev rules.
+    # Enable configuration auto-detection udev rules for firmware.
      if (opendir(DIR, '/lib/udev/rules.d'))
      {
-        foreach (grep(s/^(05-minimyth-.*\.rules)\.disabled$/$1/,  
(readdir(DIR))))
+        foreach  
(grep(s/^(05-minimyth-detect-firmware\.rules)\.disabled$/$1/,  
(readdir(DIR))))
          {
               
rename("/lib/udev/rules.d/$_.disabled", "/lib/udev/rules.d/$_");
          }
          closedir(DIR);
      }

-    # Trigger udev with the additional udev rules that handle  
configuration auto-detection.
+    # Trigger udev with the additional udev rules that handle  
configuration auto-detection for firmware.
+    system(qq(/sbin/udevadm trigger));
+    system(qq(/sbin/udevadm settle --timeout=60));
+
+    # Fetch firmware files.
+    $self->_run($minimyth, 'MM_FIRMWARE_FILE_LIST') || ($success = 0);
+
+    # Enable configuration auto-detection udev rules for everything else.
+    if (opendir(DIR, '/lib/udev/rules.d'))
+    {
+        foreach (grep(s/^(05-minimyth-detect-.*\.rules)\.disabled$/$1/,  
(readdir(DIR))))
+        {
+             
rename("/lib/udev/rules.d/$_.disabled", "/lib/udev/rules.d/$_");
+        }
+        closedir(DIR);
+    }
+
+    # Trigger udev with the additional udev rules that handle  
configuration auto-detection for everything else.
+    # This will load potentially firmware dependent drivers as well.
      system(qq(/sbin/udevadm trigger));
      system(qq(/sbin/udevadm settle --timeout=60));

@@ -569,6 +590,18 @@
      }

      $var->{'complete'} = 1;
+
+    # Create a file with the variable value.
+    {
+        my $var_file = q(/var/cache/minimyth/init/conf/) . $var_name;
+        File::Path::mkpath(File::Basename::dirname("$var_file"), {mode =>  
0755});
+        unlink("$var_file");
+        if (open(FILE, '>', "$var_file"))
+        {
+            print FILE $minimyth->var_get("$var_name");
+            close(FILE);
+        }
+    }

      return $success;
  }

Modified:  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_BACKEND.pm
==============================================================================
---  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_BACKEND.pm
     
(original)
+++  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_BACKEND.pm
     
Tue May  5 20:33:07 2009
@@ -54,52 +54,4 @@
      value_valid   => 'none|most|all|[[:alnum:],]+'
  };

-$var_list{'MM_BACKEND_TUNER_FIRMWARE_FILE_LIST'} =
-{
-    value_default => 'auto',
-    value_valid   => 'auto|none|.*',
-    value_auto    => sub
-    {
-        my $minimyth = shift;
-        my $name     = shift;
-
-        my @value_auto = ();
-
-        my @tuners = @{$minimyth->detect_state_get('tuner')};
-        foreach my $tuner (@tuners)
-        {
-            push(@value_auto, split(/:/, $tuner->{firmware}));
-        }
-
-        # Remove any dumplicates.
-        {
-            my $prev = '';
-            @value_auto = grep($_ ne $prev && (($prev) = $_),  
sort(@value_auto));
-        }
-
-        return join(' ', @value_auto);
-    },
-    value_none    => '',
-    value_file    => '.+',
-    file          => sub
-    {
-        my $minimyth = shift;
-        my $name     = shift;
-
-        my @file = ();
-
-        foreach (split(/ /, $minimyth->var_get($name)))
-        {
-            my $item;
-            $item->{'name_remote'} = "$_";
-            $item->{'name_local'}  = '/lib/firmware/' .  
File::Basename::basename($_);
-            $item->{'mode_local'}  = '0644';
-
-            push(@file, $item);
-        }
-
-        return \...@file;
-    }
-};
-
  1;

Added:  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_FIRMWARE.pm
==============================================================================
--- (empty file)
+++  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/MM_FIRMWARE.pm
    
Tue May  5 20:33:07 2009
@@ -0,0 +1,66 @@
+################################################################################
+# MM_FIRMWARE configuration variable handlers.
+################################################################################
+package init::conf::MM_FIRMWARE;
+
+use strict;
+use warnings;
+
+use File::Basename ();
+
+my %var_list;
+
+sub var_list
+{
+    return \%var_list;
+}
+
+$var_list{'MM_FIRMWARE_FILE_LIST'} =
+{
+    value_default => 'auto',
+    value_valid   => 'auto|none|.*',
+    value_auto    => sub
+    {
+        my $minimyth = shift;
+        my $name     = shift;
+
+        my @value_auto = ();
+
+        my @firmwares = @{$minimyth->detect_state_get('firmware')};
+        foreach my $firmware (@firmwares)
+        {
+            push(@value_auto, split(/:/, $firmware->{file_list}));
+        }
+
+        # Remove any duplicates.
+        {
+            my $prev = '';
+            @value_auto = grep($_ ne $prev && (($prev) = $_),  
sort(@value_auto));
+        }
+
+        return join(' ', @value_auto);
+    },
+    value_none    => '',
+    value_file    => '.+',
+    file          => sub
+    {
+        my $minimyth = shift;
+        my $name     = shift;
+
+        my @file = ();
+
+        foreach (split(/ /, $minimyth->var_get($name)))
+        {
+            my $item;
+            $item->{'name_remote'} = "$_";
+            $item->{'name_local'}  = '/lib/firmware/' .  
File::Basename::basename($_);
+            $item->{'mode_local'}  = '0644';
+
+            push(@file, $item);
+        }
+
+        return \...@file;
+    }
+};
+
+1;

Modified:  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/obsolete
==============================================================================
---  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/obsolete
  
(original)
+++  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/init/conf/obsolete
  
Tue May  5 20:33:07 2009
@@ -6,6 +6,7 @@
  MM_AUTH_LDAP_PAM_GROUPDN
  MM_AUTH_LDAP_SERVER
  MM_AUTH_TYPE
+MM_BACKEND_TUNER_FIRMWARE_FILE_LIST
  MM_CPUFREQ_GOVERNOR
  MM_CPU_MICROCODE_DAT_FETCH
  MM_DHCP_DNS_SERVERS

Modified:  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/rc.pl
==============================================================================
---  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/rc.pl      
 
(original)
+++  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d/rc.pl      
 
Tue May  5 20:33:07 2009
@@ -19,7 +19,6 @@
      'modules_automatic',
      'conf',
      'modules_manual',
-    'firmware',
      'log'
  );
  my @script_list_kill_halt =

Added:  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/mm_firmware_wait
==============================================================================
--- (empty file)
+++  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/mm_firmware_wait
    
Tue May  5 20:33:07 2009
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+if /usr/bin/test ! -e  
/var/cache/minimyth/init/conf/MM_FIRMWARE_FILE_LIST ; then
+    if /sbin/modprobe --show-depends $MODALIAS | /bin/grep  
-q '/firmware_class.ko' 2> /dev/null ; then
+        exit 0
+    fi
+fi
+
+exit 1

Modified:  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/01-minimyth-modprobe.rules.disabled
==============================================================================
---  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/01-minimyth-modprobe.rules.disabled
         
(original)
+++  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/01-minimyth-modprobe.rules.disabled
         
Tue May  5 20:33:07 2009
@@ -1,8 +1,16 @@
+ACTION!="add", GOTO="end"
+
  # Load the appropriate kernel modules using module aliases.
-ACTION=="add", SUBSYSTEM=="?*", ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe  
-q $env{MODALIAS}"
+SUBSYSTEM!="?*"                      , GOTO="end-modalias" # No subsystem
+ENV{MODALIAS}!="?*"                  , GOTO="end-modalias" # No modalias
+PROGRAM=="/lib/udev/mm_firmware_wait", GOTO="end-modalias" # Wait until  
init has had a chance to fetch firmware.
+RUN+="/sbin/modprobe -q $env{MODALIAS}"
+LABEL="end-modalias"

  # Some cards that use the bttv driver use the lirc_gpio driver as well.
-ACTION=="add", DRIVER=="bttv", RUN+="/sbin/modprobe -q lirc_gpio"
+DRIVER=="bttv", RUN+="/sbin/modprobe -q lirc_gpio"

  # Some cards that use the ivtv driver use the lirc_i2c driver as well.
-ACTION=="add", DRIVER=="ivtv", RUN+="/sbin/modprobe -q lirc_i2c"
+DRIVER=="ivtv", RUN+="/sbin/modprobe -q lirc_i2c"
+
+LABEL="end"

Added:  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/05-minimyth-detect-firmware.rules.disabled
==============================================================================
--- (empty file)
+++  
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/lib/udev/rules.d/05-minimyth-detect-firmware.rules.disabled
  
Tue May  5 20:33:07 2009
@@ -0,0 +1,71 @@
+#-------------------------------------------------------------------------------
+# Detect firmware files.
+#
+# mm_detect_state_firmware has the following format:
+#     <file_list>
+# where
+#     <file_list>: Colon separated list of required firmware files.
+#-------------------------------------------------------------------------------
+ACTION!="add|change|remove", GOTO="end"
+SUBSYSTEM=="pci|usb", GOTO="begin"
+GOTO="end"
+LABEL="begin"
+
+ENV{mm_detect_state_firmware}=""
+
+SUBSYSTEM!="pci", GOTO="end-pci"
+ENV{MODALIAS}!="pci:v000013D0d*sv*sd*bc02sc80i00",  
GOTO="end-pci:0280:00:13d0"
+#Technisat Skystar2
+ENV{MODALIAS}=="pci:v000013D0d00002103sv000013D0sd00002103bc02sc80i00",  
ENV{mm_detect_state_firmware}="dvb-fe-bcm3510-01.fw"
+LABEL="end-pci:0280:00:13d0"
+ENV{MODALIAS}!="pci:v00004444d*sv*sd*bc04sc00i00",  
GOTO="end-pci:0400:00:4444"
+# Hauppauge PVR-250
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00000003bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-150
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00000009bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-150
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00000801bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-150
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00000807bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-250
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00004001bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-250
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00004009bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-250
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00004801bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-250
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00004803bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-150
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00008003bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-150
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00008801bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-150
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd0000C801bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-500
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd0000E807bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-500
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd0000E817bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-550
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd0000FF82bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-150
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000270sd00000801bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-350
+ENV{MODALIAS}=="pci:v00004444d00000016sv00000070sd00004000bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-250
+ENV{MODALIAS}=="pci:v00004444d00000803sv00000070sd00004001bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+# Hauppauge PVR-350
+ENV{MODALIAS}=="pci:v00004444d00000803sv00000070sd00004800bc04sc00i00",  
ENV{mm_detect_state_firmware}="v4l-cx2341x-enc.fw"
+LABEL="end-pci:0400:00:4444"
+LABEL="end-pci"
+
+SUBSYSTEM!="usb", GOTO="end-usb"
+ENV{MODALIAS}!="usb:v2040p*d*dc*dsc*dp*ic*isc*ip*", GOTO="end-usb:2040"
+# Hauppauge WinTV NOVA-TD
+ENV{MODALIAS}=="usb:v2040p9580d*dc*dsc*dp*ic*isc*ip*"                 ,  
ENV{mm_detect_state_firmware}="dvb-usb-dib0700-1.20.fw"
+LABEL="end-usb:2040"
+LABEL="end-usb"
+
+# The state has been set, so save it.
+ENV{mm_detect_state_firmware}=="?*", RUN+="/lib/udev/mm_detect firmware %k  
$env{mm_detect_state_firmware}"
+
+LABEL="end"

Modified: trunk/gar-minimyth/script/perl/perl-MiniMyth/checksums
==============================================================================
--- trunk/gar-minimyth/script/perl/perl-MiniMyth/checksums      (original)
+++ trunk/gar-minimyth/script/perl/perl-MiniMyth/checksums      Tue May  5  
20:33:07 2009
@@ -1 +1 @@
-c1666c1e504fc065f5d7a4f0bcc504df  download/MiniMyth.pm
+48bb072fdf0b07f1372407bd7694a528  download/MiniMyth.pm

Modified: trunk/gar-minimyth/script/perl/perl-MiniMyth/files/MiniMyth.pm
==============================================================================
--- trunk/gar-minimyth/script/perl/perl-MiniMyth/files/MiniMyth.pm       
(original)
+++ trunk/gar-minimyth/script/perl/perl-MiniMyth/files/MiniMyth.pm      Tue May 
  
5 20:33:07 2009
@@ -391,13 +391,13 @@
      my $field    = shift;

      my %map;
-    $map{'audio'}   = [ 'card_number' , 'device_number' , 'gain' ];
-    $map{'backend'} = [ 'enabled'];
-    $map{'event'}   = [ 'device' , 'type' ];
-    $map{'lcdproc'} = [ 'device' , 'driver'];
-    $map{'lirc'}    = [ 'device' , 'driver', 'lircd_conf' ];
-    $map{'tuner'}   = [ 'device' , 'name' , 'firmware' ];
-    $map{'video'}   = [ 'driver' ];
+    $map{'audio'}    = [ 'card_number' , 'device_number' , 'gain' ];
+    $map{'backend'}  = [ 'enabled'];
+    $map{'event'}    = [ 'device' , 'type' ];
+    $map{'firmware'} = [ 'file_list' ];
+    $map{'lcdproc'}  = [ 'device' , 'driver'];
+    $map{'lirc'}     = [ 'device' , 'driver', 'lircd_conf' ];
+    $map{'video'}    = [ 'driver' ];

      my @state;


--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to