2008/12/22 Bryan Kadzban <bryan@xxxxxxxxxxxxxxxxxxxxx>: > Upgraded to kernel 2.6.27.8 about a week ago, along with udev 135. On > the next boot, rtc-cmos did not load automatically. Tracked it down to > two related changes: the PNPBIOS "id" shell hack was removed from udev, > and ACPI modaliases were added to the kernel modules. > > The problem here is, the kernel hardware IDs have a different case, > while the module aliases in rtc-cmos have the same case. The PNPBIOS ID > for my RTC is "PNP0b00" (/sys/bus/pnp/devices/00:02/id). The ACPI ID > for my RTC is "acpi:PNP0B00" (/sys/bus/acpi/devices/PNP0B00:00/modalias). > > The module aliases in the rtc-cmos driver, OTOH, are "pnp:dPNP0b00*", > "acpi*:PNP0b00:*", and similar for 0b01 and 0b02. Obviously this isn't > going to match. I tested it only with the floppy module which is numeric only. :) > I have a patch to change the kernel's file2alias.c program to convert > the ACPI alias (for PNP device IDs) to uppercase (attached), but I don't > know if this is the right approach. Are all ACPI IDs uppercase hex > values? (For that matter, are all PNPBIOS IDs lowercase?) The other > option would be to change the rtc-cmos driver to match both upper and > lowercase (if both are seen in the wild). I'm pretty sure, that these values are always uppercase. Not sure why the pnp bus uses tolower() for char 4-7 of the 8 byte array, that looks pretty broken. > In case this is the right fix: That looks like the right fix. Maybe you could use strdup()? Care to send it to lkml and Cc: Greg, so he can pick it up? Thanks a lot, Kay -- To unsubscribe from this list: send the line "unsubscribe linux-hotplug" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html