With hal-0.5.7.1-r5 (I think all 0.5.7.1, but I am not sure if I tested really all), my mmc-card-partitions arent recognized. With hal-0.5.7-r3, it works (but it only did build after manually commenting out two lines in sourcecode, maybe because my dbus-version is to new). ----------- Here the verbose output of hal when inserting the card: Mar 1 20:28:07 notebook hald[4665]: 20:28:07.468 [I] osspec.c:232: SEQNUM=2000, ACTION=add, SUBSYSTEM=mmc, DEVPATH=/sys/devices/pci0000:00/0000:00:14.4/0000:02:04.4/mmc2:b368, DEVNAME=, IFINDEX=0 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.469 [I] hotplug.c:176: /sys/devices/pci0000:00/0000:00:14.4/0000:02:04.4/mmc2:b368 is a bus device (subsystem) Mar 1 20:28:07 notebook hald[4665]: 20:28:07.469 [I] physdev.c:1511: phys_add: subsys=mmc sysfs_path=/sys/devices/pci0000:00/0000:00:14.4/0000:02:04.4/mmc2:b368, parent=0x08089c78 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.478 [I] physdev.c:1436: Add callouts completed udi=/org/freedesktop/Hal/devices/pci_104c_8034_mmc_card_rca45928 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.478 [I] hald.c:82: Added device to GDL; udi=/org/freedesktop/Hal/devices/pci_104c_8034_mmc_card_rca45928 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.601 [I] osspec.c:232: SEQNUM=2001, ACTION=add, SUBSYSTEM=block, DEVPATH=/sys/block/mmcblk0, DEVNAME=/dev/mmcblk0, IFINDEX=0 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.603 [I] hotplug.c:182: /sys/block/mmcblk0 is a block device (subsystem) Mar 1 20:28:07 notebook hald[4665]: 20:28:07.603 [I] blockdev.c:637: block_add: sysfs_path=/sys/block/mmcblk0 dev=/dev/mmcblk0 is_part=1, parent=0x00000000 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.604 [I] blockdev.c:547: get_luks_uuid: device_file=/dev/mmcblk0 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.604 [I] blockdev.c:673: Ignoring hotplug event - no parent Mar 1 20:28:07 notebook hald[4665]: 20:28:07.604 [W] blockdev.c:1037: Not adding device object Mar 1 20:28:07 notebook hald[4665]: 20:28:07.645 [I] osspec.c:232: SEQNUM=2002, ACTION=add, SUBSYSTEM=block, DEVPATH=/sys/block/mmcblk0/mmcblk0p1, DEVNAME=/dev/mmcblk0p1, IFINDEX=0 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.646 [I] hotplug.c:182: /sys/block/mmcblk0/mmcblk0p1 is a block device (subsystem) Mar 1 20:28:07 notebook hald[4665]: 20:28:07.646 [I] blockdev.c:637: block_add: sysfs_path=/sys/block/mmcblk0/mmcblk0p1 dev=/dev/mmcblk0p1 is_part=1, parent=0x00000000 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.647 [I] blockdev.c:547: get_luks_uuid: device_file=/dev/mmcblk0p1 Mar 1 20:28:07 notebook hald[4665]: 20:28:07.647 [I] blockdev.c:673: Ignoring hotplug event - no parent Mar 1 20:28:07 notebook hald[4665]: 20:28:07.647 [W] blockdev.c:1037: Not adding device object ----------------------------- ----------------------------- I changed the following files to compile hal-3.5.7-r3: /var/tmp/portage/sys-apps/hal-0.5.7-r3/work/hal-0.5.7/tools/lshal.c /var/tmp/portage/sys-apps/hal-0.5.7-r3/work/hal-0.5.7/tools/hal-device.c In these files i deleted a line containing "dbus_connection_disconnect (conn);" Reproducible: Always Steps to Reproduce: 1.insert mmc card Actual Results: mmc card can be mounted manually, but kde does not display a symbol because hal does not recoginze the card Expected Results: hal should recognize the card Information about my system: HP Compaq nx6125 Card-Reader: 02:04.4 Class 0805: Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD) Controller kernel-module for card reader: sdhci other software versions: sys-fs/udev-104-r12 sys-apps/dbus-1.0.2-r1
Does it work when adding this rule to /etc/udev/rules.d/50-udev.rules: SUBSYSTEM=="mmc", ACTION=="add", RUN+="modprobe.sh mmc_block" or by executing mmc_block?
I think this isnt a error by gentoo, because I found a description from an debian-user with an simliar error: after updating the system mmc-card with hal did not work any longer. So I think I should forward my bug to the hal-developers. And I ask you to not to delete the hal-0.5.7-r3 from portage until they fixed it. (Reply to comment #1) There isnt a modprobe.sh in /etc/udev/scripts so I don't think this will work (but I dont know anything about writing udev-rules). And I used to compile nearly everything into the kernel, so there was no mmc_block-module. But I tested it, and compiled mmc_block, tifm_7xx1 and sdhci as module instead into the kernel, and created a file /etc/udev/scribts/modprobe.sh containing "modprobe mmc_block", and loaded only tifm_7xx1 and sdhci modules on boot, but not mmc_block, and added the propoesed udev-rule. This changend nothing. With the 0.5.7.1-r5 it doesnt work, with 0.5.7-r3 it works fine. Without inserting mmc_block-module (via udev-rule or manually), it doesnt work at all, you cannot even mount it manual.
Florian: what version of udev do you have? you're not suppose to create modprobe.sh
Created attachment 112507 [details, diff] Patch 1 of 2 needed in order to get 0.5.7-r3 working properly with a newer udev You will need to create a new overlay or modify your .ebuild for hal-0.5.7-r3 in order for these patches to work.
Created attachment 112508 [details, diff] Patch 2 of 2 needed in order to get 0.5.7-r3 working properly with a newer udev See Patch 1 description
I will confirm that a downgrade to hal-0.5.7-r3 fixes the issue with unmountable sd/mmc devices. I was having the same issues myself. I made an ebuild of this and added the proper patches to the files directory. After doing this my SD card came up fine on its own (hasn't happened before!) I have attached the patches I used in an overlay. Everything seems to be going good :) Thanks
Please upgrade to the 0.5.9 series. Sorry about the long delay but we weren't patching 0.5.7 anymore because we were working on 0.5.8 and 0.5.9