diff --git a/core/linux-armv7-rc/PKGBUILD b/core/linux-armv7-rc/PKGBUILD index a2e75e6b3..3a119b32c 100644 --- a/core/linux-armv7-rc/PKGBUILD +++ b/core/linux-armv7-rc/PKGBUILD @@ -4,7 +4,7 @@ buildarch=4 _rcver=4.4 -_rcrel=1 +_rcrel=2 _rcnrel=armv7-x0 pkgbase=linux-armv7-rc @@ -17,7 +17,7 @@ pkgrel=1 arch=('armv7h') url="http://www.kernel.org/" license=('GPL2') -makedepends=('xmlto' 'docbook-xsl' 'kmod' 'inetutils' 'bc' 'git' 'uboot-tools') +makedepends=('xmlto' 'docbook-xsl' 'kmod' 'inetutils' 'bc' 'git' 'uboot-tools' 'vboot-utils' 'dtc') options=('!strip') source=(#"http://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.xz" #"https://www.kernel.org/pub/linux/kernel/v4.x/testing/patch-${_rcver}-rc${_rcrel}.xz" @@ -31,9 +31,13 @@ source=(#"http://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.xz" '0006-ARM-TLV320AIC23-SoC-Audio-Codec-Fix-errors-reported-.patch' '0007-set-default-cubietruck-led-triggers.patch' '0008-USB-armory-support.patch' - 'config') -md5sums=('9f1e41b8f06fb5b082ecf61d5e7be12a' - '1d9de319bf0eed365632962f02698cc7' + 'config' + 'cmdline' + 'kernel.its' + 'kernel.keyblock' + 'kernel_data_key.vbprivk') +md5sums=('07222f500f96d767c3d91f93bfa90d3f' + '4681c96cb615beee2d84be9c9b2831dc' '61f728f854713d17a3d4ef00f8e38f1e' 'bc39bcc5d752155854f31eb7758db5e8' 'e871d819421abab551d8219b62cccdf9' @@ -42,7 +46,11 @@ md5sums=('9f1e41b8f06fb5b082ecf61d5e7be12a' '3be6a6ddf93b89e90cc127268721845e' 'fe20decabf6b7d94cf2ecb4d15a07ba7' '50dca48291316e4c0a7e918f08d5e3f5' - 'bee398b3805039a8773ca3d96ffcaf3a') + '2518d76d7ce7d5d5a08df27dee3b1288' + '1813b39074d01af6548951764a0f6444' + '4b0392e55063eb9f89d91affd1189fc5' + '61c5ff73c136ed07a7aadbf58db3d96a' + '584777ae88bce2c5659960151b64c7d8') prepare() { cd "${srcdir}/${_srcname}" @@ -323,7 +331,30 @@ _package-d3plug() { mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n "${pkgname}" -d myimage "${pkgdir}/boot/uImage" } -pkgname=("${pkgbase}" "${pkgbase}-headers" "${pkgbase}-smileplug" "${pkgbase}-mirabox" "${pkgbase}-ax3" "${pkgbase}-d3plug") +_package-chromebook() { + pkgdesc="The Linux Kernel - ${_desc} - Chromebooks" + depends=('linux-armv7') + + cd "${srcdir}/${_srcname}" + + cp ../kernel.its . + mkimage -D "-I dts -O dtb -p 2048" -f kernel.its vmlinux.uimg + dd if=/dev/zero of=bootloader.bin bs=512 count=1 + vbutil_kernel \ + --pack vmlinux.kpart \ + --version 1 \ + --vmlinuz vmlinux.uimg \ + --arch arm \ + --keyblock ../kernel.keyblock \ + --signprivate ../kernel_data_key.vbprivk \ + --config ../cmdline \ + --bootloader bootloader.bin + + mkdir -p "${pkgdir}/boot" + cp vmlinux.kpart "${pkgdir}/boot" +} + +pkgname=("${pkgbase}" "${pkgbase}-headers" "${pkgbase}-smileplug" "${pkgbase}-mirabox" "${pkgbase}-ax3" "${pkgbase}-d3plug" "${pkgbase}-chromebook") for _p in ${pkgname[@]}; do eval "package_${_p}() { _package${_p#${pkgbase}} diff --git a/core/linux-armv7-rc/cmdline b/core/linux-armv7-rc/cmdline new file mode 100644 index 000000000..d5e97b036 --- /dev/null +++ b/core/linux-armv7-rc/cmdline @@ -0,0 +1 @@ +console=tty0 init=/sbin/init root=PARTUUID=%U/PARTNROFF=1 rootwait rw noinitrd diff --git a/core/linux-armv7-rc/config b/core/linux-armv7-rc/config index 586821477..8a58c4b9f 100644 --- a/core/linux-armv7-rc/config +++ b/core/linux-armv7-rc/config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 4.4.0-rc1-1 Kernel Configuration +# Linux/arm 4.4.0-rc2-1 Kernel Configuration # CONFIG_ARM=y CONFIG_ARM_HAS_SG_CHAIN=y @@ -137,7 +137,7 @@ CONFIG_CGROUP_PERF=y CONFIG_CGROUP_SCHED=y CONFIG_FAIR_GROUP_SCHED=y CONFIG_CFS_BANDWIDTH=y -# CONFIG_RT_GROUP_SCHED is not set +CONFIG_RT_GROUP_SCHED=y CONFIG_BLK_CGROUP=y # CONFIG_DEBUG_BLK_CGROUP is not set CONFIG_CGROUP_WRITEBACK=y @@ -2378,7 +2378,6 @@ CONFIG_IGB_HWMON=y # CONFIG_I40EVF is not set # CONFIG_FM10K is not set CONFIG_NET_VENDOR_I825XX=y -# CONFIG_IP1000 is not set # CONFIG_JME is not set CONFIG_NET_VENDOR_MARVELL=y CONFIG_MV643XX_ETH=y @@ -4558,7 +4557,7 @@ CONFIG_DRM_KMS_CMA_HELPER=y # # I2C encoder or helper chips # -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_SIL164=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -5654,7 +5653,7 @@ CONFIG_LEDS_LT3593=m CONFIG_LEDS_MC13783=m CONFIG_LEDS_NS2=y CONFIG_LEDS_TCA6507=m -# CONFIG_LEDS_TLC591XX is not set +CONFIG_LEDS_TLC591XX=m CONFIG_LEDS_MAX8997=m CONFIG_LEDS_LM355x=m diff --git a/core/linux-armv7-rc/kernel.its b/core/linux-armv7-rc/kernel.its new file mode 100755 index 000000000..a3ff30eb3 --- /dev/null +++ b/core/linux-armv7-rc/kernel.its @@ -0,0 +1,133 @@ +/dts-v1/; + +/ { + description = "Chrome OS kernel image with one or more FDT blobs"; + #address-cells = <1>; + images { + kernel@1 { + description = "kernel"; + data = /incbin/("arch/arm/boot/zImage"); + type = "kernel_noload"; + arch = "arm"; + os = "linux"; + compression = "none"; + load = <0>; + entry = <0>; + }; + fdt@1 { + description = "exynos5250-snow.dtb"; + data = /incbin/("arch/arm/boot/dts/exynos5250-snow.dtb"); + type = "flat_dt"; + arch = "arm"; + compression = "none"; + hash@1 { + algo = "sha1"; + }; + }; + fdt@2 { + description = "exynos5250-spring.dtb"; + data = /incbin/("arch/arm/boot/dts/exynos5250-spring.dtb"); + type = "flat_dt"; + arch = "arm"; + compression = "none"; + hash@1 { + algo = "sha1"; + }; + }; + fdt@3 { + description = "exynos5800-peach-pi.dtb"; + data = /incbin/("arch/arm/boot/dts/exynos5800-peach-pi.dtb"); + type = "flat_dt"; + arch = "arm"; + compression = "none"; + hash@1{ + algo = "sha1"; + }; + }; + fdt@4 { + description = "exynos5420-peach-pit.dtb"; + data = /incbin/("arch/arm/boot/dts/exynos5420-peach-pit.dtb"); + type = "flat_dt"; + arch = "arm"; + compression = "none"; + hash@1 { + algo = "sha1"; + }; + }; + fdt@5 { + description = "rk3288-veyron-jerry.dtb"; + data = /incbin/("arch/arm/boot/dts/rk3288-veyron-jerry.dtb"); + type = "flat_dt"; + arch = "arm"; + compression = "none"; + hash@1 { + algo = "sha1"; + }; + }; + fdt@6 { + description = "rk3288-veyron-minnie.dtb"; + data = /incbin/("arch/arm/boot/dts/rk3288-veyron-minnie.dtb"); + type = "flat_dt"; + arch = "arm"; + compression = "none"; + hash@1 { + algo = "sha1"; + }; + }; + fdt@7 { + description = "rk3288-veyron-pinky.dtb"; + data = /incbin/("arch/arm/boot/dts/rk3288-veyron-pinky.dtb"); + type = "flat_dt"; + arch = "arm"; + compression = "none"; + hash@1{ + algo = "sha1"; + }; + }; + fdt@8 { + description = "rk3288-veyron-speedy.dtb"; + data = /incbin/("arch/arm/boot/dts/rk3288-veyron-speedy.dtb"); + type = "flat_dt"; + arch = "arm"; + compression = "none"; + hash@1 { + algo = "sha1"; + }; + }; + }; + configurations { + default = "conf@1"; + conf@1 { + kernel = "kernel@1"; + fdt = "fdt@1"; + }; + conf@2 { + kernel = "kernel@1"; + fdt = "fdt@2"; + }; + conf@3 { + kernel = "kernel@1"; + fdt = "fdt@3"; + }; + conf@4 { + kernel = "kernel@1"; + fdt = "fdt@4"; + }; + conf@5 { + kernel = "kernel@1"; + fdt = "fdt@5"; + }; + conf@6 { + kernel = "kernel@1"; + fdt = "fdt@6"; + }; + conf@7 { + kernel = "kernel@1"; + fdt = "fdt@7"; + }; + conf@8 { + kernel = "kernel@1"; + fdt = "fdt@8"; + }; + }; +}; diff --git a/core/linux-armv7-rc/kernel.keyblock b/core/linux-armv7-rc/kernel.keyblock new file mode 100644 index 000000000..9740be4e6 Binary files /dev/null and b/core/linux-armv7-rc/kernel.keyblock differ diff --git a/core/linux-armv7-rc/kernel_data_key.vbprivk b/core/linux-armv7-rc/kernel_data_key.vbprivk new file mode 100644 index 000000000..8d392fb29 Binary files /dev/null and b/core/linux-armv7-rc/kernel_data_key.vbprivk differ