[Bug 66239] Patch to add HAL FDI info for MPMan MP-Ki 128

mibus launchpad-dot-net at mibus.org
Sun Oct 15 13:03:47 BST 2006


Public bug reported:

Binary package hint: hal

This patch (from instructions at http://blog.pcode.nl/?p=176 ) adds
detection for a 'Actions Semiconductor Co., Ltd MPMan MP-Ki 128 MP3
Player/Recorder').

mibus at kappa:~$ lsusb
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 002: ID 10d6:1100 Actions Semiconductor Co., Ltd MPMan MP-Ki 128 MP3 Player/Recorder
Bus 001 Device 001: ID 0000:0000


Relevant output from lshal (after patch):

udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK'
  info.udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK'  (string)
  linux.subsystem = 'usb'  (string)
  linux.hotplug_type = 1  (0x1)  (int)
  usb_device.bus_number = 1  (0x1)  (int)
  usb_device.can_wake_up = false  (bool)
  usb_device.is_self_powered = false  (bool)
  usb_device.version_bcd = 272  (0x110)  (int)
  usb_device.speed_bcd = 4608  (0x1200)  (int)
  usb_device.serial = 'USB 2.0(FS) FLASH DISK'  (string)
  usb_device.linux.device_number = 2  (0x2)  (int)
  usb_device.num_ports = 0  (0x0)  (int)
  usb_device.max_power = 100  (0x64)  (int)
  usb_device.device_revision_bcd = 256  (0x100)  (int)
  info.product = 'MPMan MP-Ki 128 MP3 Player/Recorder'  (string)
  usb_device.product = 'MPMan MP-Ki 128 MP3 Player/Recorder'  (string)
  info.vendor = 'Actions Semiconductor Co., Ltd'  (string)
  usb_device.vendor = 'Actions Semiconductor Co., Ltd'  (string)
  usb_device.product_id = 4352  (0x1100)  (int)
  usb_device.vendor_id = 4310  (0x10d6)  (int)
  usb_device.device_protocol = 0  (0x0)  (int)
  usb_device.device_subclass = 0  (0x0)  (int)
  usb_device.device_class = 0  (0x0)  (int)
  usb_device.num_interfaces = 1  (0x1)  (int)
  usb_device.num_configurations = 1  (0x1)  (int)
  usb_device.configuration_value = 1  (0x1)  (int)
  usb_device.linux.sysfs_path = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1'  (string)
  info.linux.driver = 'usb'  (string)
  info.bus = 'usb_device'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_0_0_0001_10_18_0'  (string)
  linux.sysfs_path_device = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1'  (string)
  linux.sysfs_path = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1'  (string)

udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_usbraw'
  info.udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_usbraw'  (string)
  linux.device_file = '/dev/usbdev1.2'  (string)
  linux.subsystem = 'usb_device'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  usbraw.device = '/dev/usbdev1.2'  (string)
  info.product = 'USB Raw Device Access'  (string)
  info.capabilities = {'usbraw'} (string list)
  info.category = 'usbraw'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK'  (string)
  linux.sysfs_path = '/sys/class/usb_device/usbdev1.2'  (string)

udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0'
  info.udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0'  (string)
  linux.subsystem = 'usb'  (string)
  linux.hotplug_type = 1  (0x1)  (int)
  info.product = 'USB Mass Storage Interface'  (string)
  usb.interface.protocol = 80  (0x50)  (int)
  usb.interface.subclass = 5  (0x5)  (int)
  usb.interface.class = 8  (0x8)  (int)
  usb.interface.number = 0  (0x0)  (int)
  info.linux.driver = 'usb-storage'  (string)
  usb.linux.sysfs_path = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1/1-1:1.0'  (string)
  usb.configuration_value = 1  (0x1)  (int)
  usb.num_configurations = 1  (0x1)  (int)
  usb.num_interfaces = 1  (0x1)  (int)
  usb.device_class = 0  (0x0)  (int)
  usb.device_subclass = 0  (0x0)  (int)
  usb.device_protocol = 0  (0x0)  (int)
  usb.vendor_id = 4310  (0x10d6)  (int)
  usb.product_id = 4352  (0x1100)  (int)
  usb.vendor = 'Actions Semiconductor Co., Ltd'  (string)
  usb.product = 'USB Mass Storage Interface'  (string)
  usb.device_revision_bcd = 256  (0x100)  (int)
  usb.max_power = 100  (0x64)  (int)
  usb.num_ports = 0  (0x0)  (int)
  usb.linux.device_number = 2  (0x2)  (int)
  usb.serial = 'USB 2.0(FS) FLASH DISK'  (string)
  usb.speed_bcd = 4608  (0x1200)  (int)
  usb.version_bcd = 272  (0x110)  (int)
  usb.is_self_powered = false  (bool)
  usb.can_wake_up = false  (bool)
  usb.bus_number = 1  (0x1)  (int)
  info.bus = 'usb'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK'  (string)
  linux.sysfs_path_device = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1/1-1:1.0'  (string)
  linux.sysfs_path = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1/1-1:1.0'  (string)

udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0_scsi_host'
  info.udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0_scsi_host'  (string)
  linux.subsystem = 'scsi_host'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  scsi_host.host = 0  (0x0)  (int)
  info.product = 'SCSI Host Adapter'  (string)
  info.capabilities = {'scsi_host'} (string list)
  info.category = 'scsi_host'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0'  (string)
  linux.sysfs_path_device = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1/1-1:1.0/host0'  (string)
  linux.sysfs_path = '/sys/class/scsi_host/host0'  (string)

udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0_scsi_host_scsi_device_lun0'
  info.linux.driver = 'sd'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0_scsi_host_scsi_device_lun0'  (string)
  linux.subsystem = 'scsi'  (string)
  linux.hotplug_type = 1  (0x1)  (int)
  scsi.type = 'disk'  (string)
  scsi.vendor = ''  (string)
  scsi.model = '?w@??k?l?m?n?o?p'  (string)
  info.product = 'SCSI Device'  (string)
  scsi.lun = 0  (0x0)  (int)
  scsi.target = 0  (0x0)  (int)
  scsi.bus = 0  (0x0)  (int)
  scsi.host = 0  (0x0)  (int)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0_scsi_host'  (string)
  info.bus = 'scsi'  (string)
  linux.sysfs_path_device = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0'  (string)
  linux.sysfs_path = '/sys/devices/pci0001:10/0001:10:18.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0'  (string)

udi = '/org/freedesktop/Hal/devices/storage_serial_10d6_USB_2_0_FS__FLASH_DISK_USB_2_0_FS__FLASH_DISK'
  info.addons = {'hald-addon-storage'} (string list)
  portable_audio_player.output_formats = {'audio/mpeg', 'audio/x-ms-wma', 'audio/x-wav'} (string list)
  portable_audio_player.storage_device = '/org/freedesktop/Hal/devices/storage_serial_10d6_USB_2_0_FS__FLASH_DISK_USB_2_0_FS__FLASH_DISK'  (string)
  portable_audio_player.access_method = 'storage'  (string)
  portable_audio_player.type = 'generic'  (string)
  block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_10d6_USB_2_0_FS__FLASH_DISK_USB_2_0_FS__FLASH_DISK'  (string)
  info.udi = '/org/freedesktop/Hal/devices/storage_serial_10d6_USB_2_0_FS__FLASH_DISK_USB_2_0_FS__FLASH_DISK'  (string)
  storage.requires_eject = false  (bool)
  storage.hotpluggable = true  (bool)
  info.capabilities = {'storage', 'block', 'portable_audio_player'} (string list)
  info.category = 'portable_audio_player'  (string)
  info.product = '?w@??k?l?m?n?o?p'  (string)
  info.vendor = ''  (string)
  storage.removable = true  (bool)
  storage.physical_device = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0'  (string)
  storage.lun = 0  (0x0)  (int)
  storage.firmware_version = '0100'  (string)
  storage.serial = '10d6_USB_2.0(FS)_FLASH_DISK_USB_2.0(FS)_FLASH_DISK'  (string)
  storage.vendor = ''  (string)
  storage.model = '?w@??k?l?m?n?o?p'  (string)
  storage.drive_type = 'disk'  (string)
  storage.automount_enabled_hint = true  (bool)
  storage.media_check_enabled = true  (bool)
  storage.no_partitions_hint = false  (bool)
  storage.bus = 'usb'  (string)
  block.is_volume = false  (bool)
  block.minor = 0  (0x0)  (int)
  block.major = 8  (0x8)  (int)
  block.device = '/dev/sda'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_10d6_1100_USB_2_0_FS__FLASH_DISK_if0_scsi_host_scsi_device_lun0'  (string)
  linux.sysfs_path_device = '/sys/block/sda'  (string)
  linux.sysfs_path = '/sys/block/sda'  (string)

udi = '/org/freedesktop/Hal/devices/volume_uuid_44ED_FD6D'
  volume.unmount.valid_options = {'lazy'} (string list)
  volume.mount.valid_options = {'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'noexec', 'quiet', 'utf8', 'shortname=', 'codepage=', 'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid='} (string list)
  org.freedesktop.Hal.Device.Volume.method_execpaths = {'hal-system-storage-mount', 'hal-system-storage-unmount', 'hal-system-storage-eject'} (string list)
  org.freedesktop.Hal.Device.Volume.method_signatures = {'ssas', 'as', 'as'} (string list)
  org.freedesktop.Hal.Device.Volume.method_names = {'Mount', 'Unmount', 'Eject'} (string list)
  info.interfaces = {'org.freedesktop.Hal.Device.Volume'} (string list)
  volume.ignore = false  (bool)
  info.udi = '/org/freedesktop/Hal/devices/volume_uuid_44ED_FD6D'  (string)
  info.product = 'Volume (vfat)'  (string)
  volume.size = 526238208  (0x1f5dc200)  (uint64)
  volume.num_blocks = 1027809  (0xfaee1)  (int)
  volume.block_size = 512  (0x200)  (int)
  info.capabilities = {'volume', 'block'} (string list)
  info.category = 'volume'  (string)
  volume.is_partition = true  (bool)
  volume.is_disc = false  (bool)
  volume.is_mounted = true  (bool)
  volume.mount_point = '/media/usbdisk'  (string)
  volume.label = ''  (string)
  volume.uuid = '44ED-FD6D'  (string)
  volume.fsversion = 'FAT16'  (string)
  volume.fsusage = 'filesystem'  (string)
  volume.fstype = 'vfat'  (string)
  storage.model = ''  (string)
  block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_10d6_USB_2_0_FS__FLASH_DISK_USB_2_0_FS__FLASH_DISK'  (string)
  block.is_volume = true  (bool)
  block.minor = 0  (0x0)  (int)
  block.major = 8  (0x8)  (int)
  block.device = '/dev/sda'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  info.parent = '/org/freedesktop/Hal/devices/storage_serial_10d6_USB_2_0_FS__FLASH_DISK_USB_2_0_FS__FLASH_DISK'  (string)
  linux.sysfs_path_device = '/sys/block/sda/fakevolume'  (string)
  linux.sysfs_path = '/sys/block/sda/fakevolume'  (string)

Patch:
--- 10-usb-music-players.fdi.orig       2006-08-16 01:01:07.000000000 +0930
+++ 10-usb-music-players.fdi    2006-10-15 21:23:21.000000000 +0930
@@ -34,6 +34,21 @@
       <!-- USB Mass Storage devices that are music players -->

       <match key="@storage.physical_device:info.bus" string="usb">
+
+        <!-- MPMan MP-Ki 128 Player -->
+       <match key="@storage.physical_device:usb.vendor_id" int="0x10d6">
+         <match key="@storage.physical_device:usb.product_id" int="0x1100">
+           <append key="info.capabilities" type="strlist">portable_audio_player</append>
+           <merge key="info.category" type="string">portable_audio_player</merge>
+           <merge key="portable_audio_player.type" type="string">generic</merge>
+           <merge key="portable_audio_player.access_method" type="string">storage</merge>
+           <merge key="portable_audio_player.storage_device" type="copy_property">info.udi</merge>
+           <append key="portable_audio_player.output_formats" type="strlist">audio/mpeg</append>
+           <append key="portable_audio_player.output_formats" type="strlist">audio/x-ms-wma</append>
+           <append key="portable_audio_player.output_formats" type="strlist">audio/x-wav</append>
+         </match>
+       </match>
+
        <!-- Jetflash MP3 Player -->
        <match key="@storage.physical_device:usb.vendor_id" int="0x066f">
           <match key="@storage.physical_device:usb.product_id" int="0x8000">

** Affects: hal (Ubuntu)
     Importance: Undecided
         Status: Unconfirmed

-- 
Patch to add HAL FDI info for MPMan MP-Ki 128
https://launchpad.net/bugs/66239



More information about the desktop-bugs mailing list