Hello,
Attached are two patches that should enable a CuBox device to be
supported by the CRUX-ARM git kernel and uboot.
You may read the procedure I follow (once these patches are applied)
here[0] to verify that I'm doing the right thing.
You may download a kernel tarball here[1] and a kernel config here[2] if
you are interested in hosting them in the CRUX-ARM distfiles. These are
not stored permanently at the moment though we can discuss something if
device maintainers will be expected to host their own files.
The original kernel sources are from
https://github.com/vDorst/linux/tree/CuBox-v3.5.3-Patched but there has
been activity in the repo since the snapshot was taken.
Testing has been light, since I've been unable to install a full
userspace. I've been using this kernel with my old install and I haven't
noticed any issues that could be attributed to the kernel.
I'm not sure what the policies for the kernel configs are - I tend to
use as few modules as possible and strip out support for things like USB
network adapters, which might be useful for people performing
installations. I've shipped it as-is.
Regards,
Ryan
[0]: http://rmull.com/crux-cubox.html
[1]: http://lug.bu.edu/linux-3.5.3-cubox_20121014.tar.xz
[2]: http://lug.bu.edu/config-3.5.3-cubox_20121014
diff --git a/Makefile b/Makefile
index c68fd83..e3568de 100644
--- a/Makefile
+++ b/Makefile
@@ -2,13 +2,13 @@
# src/kernel/cubox/Makefile
#
-TARGET = arm-crux-linux-gnueabi
+TARGET = arm-crux-linux-gnueabihf
PWD = $(shell pwd)
WORK = $(PWD)/work
-CROSSTOOLS = $(PWD)/../../toolchain/crosstools
+CROSSTOOLS = $(PWD)/../../toolchain-hardfp/crosstools
-KERNEL_VERSION = 2.6.32.9-cubox_20120605
+KERNEL_VERSION = 3.5.3-cubox_20121014
.PHONY: all clean image modules map config
diff --git a/devices/cubox/Makefile b/devices/cubox/Makefile
index 0f5a851..f532e32 100644
--- a/devices/cubox/Makefile
+++ b/devices/cubox/Makefile
@@ -6,7 +6,7 @@ PWD = $(shell pwd)
WORK = $(PWD)/work
MKIMAGE = $(PWD)/../../work/mkimage
ZIMAGE = $(PWD)/../../../kernel/cubox/work/zImage
-INITRDGZ = $(PWD)/../../../initrd/work/initrd.gz
+INITRDGZ = $(PWD)/../../../initrd/work/initrd-hardfp.gz
.PHONY: all clean distclean uImage uInitrd bootscr
@@ -20,8 +20,8 @@ $(WORK):
install -d $(WORK)
$(WORK)/uImage: $(WORK) $(MKIMAGE) $(ZIMAGE)
- $(MKIMAGE) -A arm -O linux -a 0 -e 0 \
- -T kernel -C none -n "Linux-2.6.32.9-cubox" \
+ $(MKIMAGE) -A arm -O linux -a 0x1a000000 -e 0x1a000000 \
+ -T kernel -C none -n "Linux-3.5.3-cubox" \
-d $(ZIMAGE) $(WORK)/uImage
uImage: $(WORK)/uImage
@@ -30,7 +30,7 @@ uImage-clean:
rm -f $(WORK)/uImage
$(WORK)/uInitrd: $(WORK) $(MKIMAGE) $(INITRDGZ)
- $(MKIMAGE) -A arm -O linux -a 0x1a000000 -e 0x1a000000 \
+ $(MKIMAGE) -A arm -O linux -a 0 -e 0 \
-T ramdisk -C none -n "CRUX-ARM Initrd Image" \
-d $(INITRDGZ) $(WORK)/uInitrd
@@ -41,13 +41,13 @@ uInitrd-clean:
$(WORK)/boot-ram.scr: $(WORK) $(MKIMAGE) $(PWD)/boot-ram.script
$(MKIMAGE) -A arm -O linux -a 0 -e 0 \
- -T script -C none -n "EfikaMX Boot Script (ram)" \
+ -T script -C none -n "CuBox Boot Script (ram)" \
-d $(PWD)/boot-ram.script \
$(WORK)/boot-ram.scr
$(WORK)/boot-mmcblk.scr: $(WORK) $(MKIMAGE) $(PWD)/boot-mmcblk.script
$(MKIMAGE) -A arm -O linux -a 0 -e 0 \
- -T script -C none -n "EfikaMX Boot Script (mmcblk)" \
+ -T script -C none -n "CuBox Boot Script (mmcblk)" \
-d $(PWD)/boot-mmcblk.script \
$(WORK)/boot-mmcblk.scr
diff --git a/devices/cubox/boot-mmcblk.script b/devices/cubox/boot-mmcblk.script
index d10f28c..a398134 100644
--- a/devices/cubox/boot-mmcblk.script
+++ b/devices/cubox/boot-mmcblk.script
@@ -1,6 +1,7 @@
setenv kernel uImage;
+setenv loadcmd ext2load mmc 0:1
setenv kerneladdr 0x16000000;
-setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p1 rootdelay=10 ro;
+setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p2 ro rootwait
vmalloc=384M video=dovefb:lcd0:1920x1080-32@60-edid clcd.lcd0_enable=1
clcd.lcd1_enable=0;
${loadcmd} ${kerneladdr} ${kernel}
if imi ${kerneladdr}; then
bootm ${kerneladdr}
diff --git a/devices/cubox/boot-ram.script b/devices/cubox/boot-ram.script
index 2974b57..07ff307 100644
--- a/devices/cubox/boot-ram.script
+++ b/devices/cubox/boot-ram.script
@@ -1,8 +1,9 @@
+setenv loadcmd ext2load usb 0:1;
setenv ramdisk uInitrd;
setenv ramdiskaddr 0x18000000;
setenv kernel uImage;
setenv kerneladdr 0x16000000;
-setenv bootargs console=ttyS0,115200 root=/dev/ram0 rootdelay=10 ro;
+setenv bootargs console=ttyS0,115200 root=/dev/ram0 ro rootwait vmalloc=384M
video=dovefb:lcd0:1920x1080-32@60-edid clcd.lcd0_enable=1 clcd.lcd1_enable=0;
${loadcmd} ${ramdiskaddr} ${ramdisk};
if imi ${ramdiskaddr}; then; else
setenv bootargs ${bootargs} noinitrd;
_______________________________________________
crux-arm mailing list
[email protected]
http://crux-arm.nu/mailman/listinfo/crux-arm