File project.diff of Package JeOS-chromebook
--- Images.kiwi.in.orig
+++ Images.kiwi.in
@@ -60,6 +60,15 @@
# define KERNEL_CMDLINE_SER "console=ttySAC2,115200n8"
# define KERNEL_CMDLINE_GFX "console=ttySAC2,115200n8"
# define EXTRA_PACKAGES PKG_BOOT_TAG(u-boot-origen)
+#elif IS_FLAVOR_chromebook
+# define BOOTKERNEL chromebook
+# define KERNEL_CMDLINE_SER "console=tty"
+# define KERNEL_CMDLINE_GFX "console=tty"
+# define EXTRA_PACKAGES PKG_BOOT_TAG(vboot) \
+ PKG_BOOT_TAG(dtc) \
+ PKG_BOOT_TAG(gptfdisk) \
+ PKG_BOOT_TAG(u-boot-chromebook) \
+ PKG_BOOT_TAG(mrvl-firmware)
#else
# define BOOTKERNEL default
# define KERNEL_CMDLINE_SER ""
@@ -124,6 +133,11 @@
<repository type="rpm-md">
<source path="obs://openSUSE:12.2:ARM/standard"/>
</repository>
+#if IS_FLAVOR_chromebook
+ <repository type="rpm-md">
+ <source path="obs://openSUSE:12.2:ARM:Contrib:Chromebook/standard"/>
+ </repository>
+#endif
<!-- dont remove qemu binfmt helpers from initrd -->
<strip type="tools">
<file name="qemu-arm-binfmt"/>
--- config.sh.orig
+++ config.sh
@@ -72,6 +72,13 @@ zypper ar $baseRepo $baseName
zypper ar -f "http://download.opensuse.org/ports/armv7hl/update/12.2/" "openSUSE-12.2-ARM-Updates"
#======================================
+# Add Chromebook repository
+#--------------------------------------
+baseRepo="http://download.opensuse.org/repositories/openSUSE:/12.2:/ARM:/Contrib:/Chromebook/standard/"
+baseName="openSUSE-12.2-ARM-Chromebook"
+zypper ar -f $baseRepo $baseName
+
+#======================================
# Add xorg config with fbdev
#--------------------------------------
mkdir -p /etc/X11/xorg.conf.d/
@@ -120,13 +127,20 @@ EOF
# Bring up eth0 device automatically
#--------------------------------------
# XXX should be board specific
-mkdir -p /etc/sysconfig/network/
-cat > /etc/sysconfig/network/ifcfg-eth0 <<EOF
-BOOTPROTO='dhcp'
-MTU=''
-REMOTE_IPADDR=''
-STARTMODE='onboot'
-EOF
+#mkdir -p /etc/sysconfig/network/
+#cat > /etc/sysconfig/network/ifcfg-eth0 <<EOF
+#BOOTPROTO='dhcp'
+#MTU=''
+#REMOTE_IPADDR=''
+#STARTMODE='onboot'
+#EOF
+
+#======================================
+# Use network manager by default
+#--------------------------------------
+if [ -e /usr/bin/nm-applet ]; then
+ sed -i 's/^NETWORKMANAGER=no/NETWORKMANAGER=yes/' /etc/sysconfig/network/config
+fi
#======================================
# Configure ntp
--- packagelist.inc.orig
+++ packagelist.inc
@@ -898,4 +898,8 @@
<package name="yast2-x11"/>
<package name="zypper-aptitude"/>
<package name="zypper-log"/>
+
+#if IS_FLAVOR_chromebook
+<package name="xf86-video-armsoc"/>
+#endif
#endif
--- pre_checkin.sh.orig
+++ pre_checkin.sh
@@ -8,8 +8,8 @@ if [ -e /usr/bin/cpp-4.6 ]; then
fi
-for i in JeOS-rootfs JeOS-beagle JeOS-efikamx JeOS-panda JeOS-vexpress \
- XFCE-rootfs XFCE-panda XFCE-beagle XFCE-vexpress; do
+for i in JeOS-rootfs JeOS-beagle JeOS-efikamx JeOS-panda JeOS-vexpress JeOS-chromebook \
+ XFCE-rootfs XFCE-panda XFCE-beagle XFCE-vexpress XFCE-chromebook; do
if [[ $i == XFCE-* ]]; then
image_type=TYPE_XFCE
--- uboot-image-install.orig
+++ uboot-image-install
@@ -1,6 +1,9 @@
#!/bin/bash
set -x
+set -e
+
+pushd /usr/src/packages/KIWIROOT-oem/
diskname=$1
@@ -36,3 +39,17 @@ if [ -f "boot/origen-spl.bin" ];then
fi
fi
+if [ -e /usr/bin/vbutil_kernel ]; then
+ echo "console=tty1 debug verbose" > /tmp/config
+ vbutil_kernel --pack /tmp/newkern \
+ --keyblock /usr/share/vboot/devkeys/kernel.keyblock \
+ --version 1 \
+ --signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk \
+ --config=/tmp/config --vmlinuz boot/u-boot.img --arch arm
+ kpartx -av $diskname
+ dd if=/tmp/newkern of=/dev/mapper/loop0p1
+ kpartx -d $diskname
+ cgpt add -t kernel -i 1 -S 1 -T 5 -P 10 -l U-BOOT $diskname
+fi
+
+popd
--- uboot-image-setup.orig
+++ uboot-image-setup
@@ -4,18 +4,30 @@ set -x
file=boot/boot.script
-echo 'printenv kerneladdr || setenv kerneladdr ${kernel_addr_r}' >> $file
-echo 'printenv ramdiskaddr|| setenv ramdiskaddr ${ramdisk_addr_r}' >> $file
-# CuBox Hack
-echo 'if itest 1$arcNumber == 13905; then' >> $file
-echo ' setenv kerneladdr 0x2000000' >> $file
-echo ' setenv ramdiskaddr 0x3000000' >> $file
-echo 'fi' >> $file
-echo -n 'setenv bootcmd "' >> $file
-echo -n 'ext2load mmc 0:1 ${kerneladdr} boot/linux.vmx; ' >> $file
-echo -n 'ext2load mmc 0:1 ${ramdiskaddr} boot/initrd.uboot; ' >> $file
-echo 'bootm ${kerneladdr} ${ramdiskaddr}";' >> $file
-echo 'boot' >> $file
+cat >> $file <<EOF
+setenv loadkern_mmc ext2load mmc \${mmcdev}:2 \${kerneladdr} boot/linux.vmx
+setenv loadinitrd_mmc ext2load mmc \${mmcdev}:2 \${ramdiskaddr} boot/initrd.uboot
+setenv loaddtb_mmc ext2load mmc \${mmcdev}:3 \${dtbaddr} boot/exynos5250-snow.dtb
+setenv loadkern_usb ext2load usb \${usbdev}:2 \${kerneladdr} boot/linux.vmx
+setenv loadinitrd_usb ext2load usb \${usbdev}:2 \${ramdiskaddr} boot/initrd.uboot
+setenv loaddtb_usb ext2load usb \${usbdev}:3 \${dtbaddr} boot/exynos5250-snow.dtb
+setenv bootkernel bootm \${kerneladdr} \${ramdiskaddr} \${dtbaddr}
+
+mmc dev \${mmcdev}
+if run loadkern_mmc; then
+ echo Loading from MMC
+ run loadinitrd_mmc
+ run loaddtb_mmc
+ run bootkernel
+fi
+
+if run loadkern_usb; then
+ echo Loading from USB
+ run loadinitrd_usb
+ run loaddtb_usb
+ run bootkernel
+fi
+EOF
#==========================================
# Create machine readable uboot format