summaryrefslogtreecommitdiff
path: root/packages/altboot/files/sd-dynamic-fix.patch
diff options
context:
space:
mode:
authorFlorian Boor <florian.boor@kernelconcepts.de>2007-11-08 11:07:58 +0000
committerFlorian Boor <florian.boor@kernelconcepts.de>2007-11-08 11:07:58 +0000
commit1f7343079a1b56e623aba7fdf63946f3dae979e3 (patch)
tree062776d2316111ee5c72fa1b9de7deb01cdca153 /packages/altboot/files/sd-dynamic-fix.patch
parent47007ab845cf3ff4c9038412df673853e5bde900 (diff)
parenta44ab8fc112a3ded9e4bf4d379243b399e2505a9 (diff)
merge of '689e57bae9a2678694a0233e81f710e4878928f4'
and 'c2e1d9a66fe20e02ea4226aaff7de2ccde79ffba'
Diffstat (limited to 'packages/altboot/files/sd-dynamic-fix.patch')
-rw-r--r--packages/altboot/files/sd-dynamic-fix.patch44
1 files changed, 44 insertions, 0 deletions
diff --git a/packages/altboot/files/sd-dynamic-fix.patch b/packages/altboot/files/sd-dynamic-fix.patch
new file mode 100644
index 0000000000..f31c6b8dc7
--- /dev/null
+++ b/packages/altboot/files/sd-dynamic-fix.patch
@@ -0,0 +1,44 @@
+Index: trunk/altboot.func
+===================================================================
+--- trunk.orig/altboot.func 2007-10-30 15:48:16.000000000 +0000
++++ trunk/altboot.func 2007-10-30 15:48:21.000000000 +0000
+@@ -499,17 +499,6 @@
+ then
+ echo "Note: $SD_MOUNTPOINT is already mounted"
+ else
+- # We can't trust that the SD device file is there when running kernel 2.6 w/ udev
+- # and starting udev at this point may not be the best idea...
+- if `uname -r | grep -q "2.6"`
+- then
+- #Let's just assume the device file name never changes...
+- dev_no="`echo "$SD_DEVICE" | sed -n "s/\/dev\/mmcblk\(.*\)p\(.*\)/\1/p"`"
+- part_no="`echo "$SD_DEVICE" | sed -n "s/\/dev\/mmcblk\(.*\)p\(.*\)/\2/p"`"
+- ! test -e /dev/mmcblk${dev_no} && mknod /dev/mmcblk${dev_no} b 254 0
+- ! test -e /dev/mmcblk${dev_no}p${part_no} && mknod /dev/mmcblk${dev_no}p${part_no} b 254 $part_no
+- fi
+-
+ # Kernel 2.6 has the SD driver compiled into the kernel
+ if test -n "$SD_KERNEL_MODULE"
+ then
+@@ -544,6 +533,21 @@
+ fi
+ fi
+
++ # We can't trust that the SD device file is there when running kernel 2.6 w/ udev
++ # and starting udev at this point may not be the best idea...
++ if `uname -r | grep -q "2.6"`
++ then
++ #Let's just assume the device file name never changes...
++ dev_no="`echo "$SD_DEVICE" | sed -n "s/\/dev\/mmcblk\(.*\)p\(.*\)/\1/p"`"
++ part_no="`echo "$SD_DEVICE" | sed -n "s/\/dev\/mmcblk\(.*\)p\(.*\)/\2/p"`"
++ if [ -f /sys/block/mmcblk${dev_no}/mmcblk${dev_no}p${part_no}/dev ]
++ then
++ rm -f /dev/mmcblk${dev_no}p${part_no} || true
++ mknod /dev/mmcblk${dev_no}p${part_no} b `cat /sys/block/mmcblk${dev_no}/mmcblk${dev_no}p${part_no}/dev|sed 's/:/ /' `
++ fi
++
++ fi
++
+ sleep 3
+
+ check_fs "$SD_DEVICE"