Unified builds (multi-dtb) uImages for Snow/Spring

kernel.its now builds one uImage with dtb for both systems (3 dtbs actually as snow now has 2 dtbs).  uBoot should select the right one - it does on the Spring.
THIS NEEDS TESTING ON SNOW.
This commit is contained in:
Justin Settle 2013-11-07 21:57:45 -05:00
parent b6851a619d
commit 1654eb914e
7 changed files with 244 additions and 233 deletions

View file

@ -4,28 +4,26 @@
buildarch=4
pkgbase=linux-chromebook-next
pkgname=("${pkgbase}" "${pkgbase}-samsung" "${pkgbase}-hp")
pkgname=('linux-chromebook-next' 'linux-headers-chromebook-next')
pkgver=20131105
_kernelname=${pkgbase#linux}
_desc="ChromiumOS kernel with ArchLinux ARM tweaks"
_kernelname=${pkgname#linux}
pkgdesc="ChromiumOS kernel with ArchLinux ARM tweaks"
_basever=3.8
pkgrel=1
arch=('armv7h')
url="http://git.chromium.org/gitweb/?p=chromiumos/third_party/kernel-next.git;a=summary"
url="https://chromium.googlesource.com/chromiumos/third_party/kernel-next/+/chromeos-3.8"
license=('GPL2')
makedepends=('uboot-mkimage' 'dtc' 'git')
options=('!strip')
source=("config"
'kernel-snow.its'
'kernel-spring.its')
md5sums=('0824ea75b4e1d4c7f1faa4a9f7722afa'
'1afa2f66d5cbb9199f1d8f501079b80e'
'28ea64945020bc779cd18e016de4354b')
'kernel.its')
md5sums=('d962608f0bab66f73bef0f8c178573ed'
'2d4ae6b8e9881ada57fef36346e51054')
_gitroot='https://git.chromium.org/git/chromiumos/third_party/kernel-next.git'
_gitroot='https://chromium.googlesource.com/chromiumos/third_party/kernel-next.git'
_gitname='chromeos-3.8'
_gitbranch='chromeos-3.8'
_gitcommit='98d6fa96'
_gitcommit='0a9be90'
prepare() {
cd "${srcdir}/"
@ -47,15 +45,14 @@ prepare() {
cp "${srcdir}/config" .config
# .its files for FIT Images
cp "${srcdir}/kernel-snow.its" arch/arm/boot/kernel-snow.its
cp "${srcdir}/kernel-spring.its" arch/arm/boot/kernel-spring.its
cp "${srcdir}/kernel.its" arch/arm/boot/kernel.its
}
build() {
cd "${srcdir}/${_gitname}"
# get kernel version
make prepare
#make prepare
# load configuration
# Configure the kernel. Replace the line below with one of your choice.
@ -79,38 +76,15 @@ build() {
# build!
make ${MAKEFLAGS} zImage modules dtbs
}
_package-samsung() {
pkgdesc="${_desc} - Samsung Chromebook (Snow)"
provides=('linux-chromebook-uImage')
conflicts=('linux-chromebook-hp')
mkdir -p "${pkgdir}/boot"
cd "${srcdir}/${_gitname}"
cd arch/arm/boot
mkimage -f kernel-snow.its "${pkgdir}/boot/vmlinux.uimg"
mkimage -f kernel.its vmlinux.uimg
}
_package-hp() {
pkgdesc="${_desc} - HP Chromebook 11 (Spring)"
provides=('linux-chromebook-uImage')
conflicts=('linux-chromebook-samsung')
mkdir -p "${pkgdir}/boot"
cd "${srcdir}/${_gitname}"
cd arch/arm/boot
mkimage -f kernel-spring.its "${pkgdir}/boot/vmlinux.uimg"
}
_package() {
pkgdesc="${_desc}"
depends=('coreutils' 'linux-firmware' 'linux-chromebook-uImage')
package_linux-chromebook-next() {
pkgdesc="The Linux Kernel and modules - ARM Chromebook kernel and modules"
depends=('coreutils' 'linux-firmware' 'module-init-tools>=3.16')
optdepends=('crda: to set the correct wireless channels of your country')
provides=('kernel26' 'linux=${pkgver}' 'aufs_friendly')
conflicts=('linux-omap' 'linux-imx6' 'linux-armada370')
provides=('linux26' "linux=${pkgver}")
install=${pkgname}.install
cd "${srcdir}/${_gitname}"
@ -124,6 +98,7 @@ _package() {
mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot/dtbs}
make INSTALL_MOD_PATH="${pkgdir}" modules_install
cp arch/arm/boot/vmlinux.uimg "${pkgdir}/boot/vmlinux.uimg"
# set correct depmod command for install
sed \
@ -151,17 +126,17 @@ _package() {
mv "$pkgdir/lib" "$pkgdir/usr"
}
_package-headers() {
pkgdesc="Header files and scripts for building modules for ${_desc}"
provides=('linux-headers=${pkgver}')
conflicts=('linux-headers-omap' 'linux-headers-imx6')
package_linux-headers-chromebook-next() {
pkgdesc="Header files and scripts for building modules for linux kernel - SAMSUNG ARM Chromebook"
provides=("linux-headers=${pkgver}")
conflicts=('linux-headers-omap' 'linux-headers-trimslice')
install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}"
cd "${pkgdir}/usr/lib/modules/${_kernver}"
ln -sf ../../../src/linux-${_kernver} build
cd "${srcdir}/${_srcname}"
cd "${srcdir}/${_gitname}"
install -D -m644 Makefile \
"${pkgdir}/usr/src/linux-${_kernver}/Makefile"
install -D -m644 kernel/Makefile \
@ -172,17 +147,17 @@ _package-headers() {
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include"
for i in acpi asm-generic config crypto drm generated linux math-emu \
media net pcmcia scsi sound trace uapi video xen; do
media net pcmcia scsi sound trace video xen; do
cp -a include/${i} "${pkgdir}/usr/src/linux-${_kernver}/include/"
done
# copy arch includes for external modules
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH
cp -a arch/$KARCH/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/mach-mvebu
cp -a arch/$KARCH/mach-mvebu/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/mach-mvebu/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/plat-orion
cp -a arch/$KARCH/plat-orion/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/plat-orion/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/mach-exynos
cp -a arch/$KARCH/mach-exynos/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/mach-exynos/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/plat-samsung
cp -a arch/$KARCH/plat-samsung/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/plat-samsung/
# copy files necessary for later builds, like nvidia and vmware
cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}"
@ -203,22 +178,13 @@ _package-headers() {
cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel/"
# add headers for lirc package
# pci (Which the chromebook doesn't have
# for i in bt8xx cx88 saa7134; do
# mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/pci/${i}"
# cp -a drivers/media/pci/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/pci/${i}"
# done
# usb
for i in cpia2 em28xx pwc sn9c102; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/${i}"
cp -a drivers/media/usb/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/${i}"
done
# i2c
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c"
cp drivers/media/i2c/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/"
for i in cx25840; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/${i}"
cp -a drivers/media/i2c/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/${i}"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video"
cp drivers/media/video/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/"
for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
cp -a drivers/media/video/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
done
# add docbook makefile
@ -240,29 +206,25 @@ _package-headers() {
# add dvb headers for external modules
# in reference to:
# http://bugs.archlinux.org/task/9912
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-core"
cp drivers/media/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-core/"
# and...
# http://bugs.archlinux.org/task/11194
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
cp include/config/dvb/*.h "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core"
cp drivers/media/dvb/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/"
# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
# in reference to:
# http://bugs.archlinux.org/task/13146
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/"
cp drivers/media/dvb-frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/"
cp drivers/media/i2c/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
cp drivers/media/dvb/frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
cp drivers/media/video/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
# add dvb headers
# in reference to:
# http://bugs.archlinux.org/task/20402
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/dvb-usb"
cp drivers/media/usb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/dvb-usb/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends"
cp drivers/media/dvb-frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/tuners"
cp drivers/media/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/tuners/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb"
cp drivers/media/dvb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends"
cp drivers/media/dvb/frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners"
cp drivers/media/common/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/"
# add xfs and shmem for aufs building
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs"
@ -293,9 +255,3 @@ _package-headers() {
# remove unneeded architectures
rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,x86,xtensa}
}
for _p in ${pkgname[@]}; do
eval "package_${_p}() {
_package${_p#${pkgbase}}
}"
done

View file

@ -63,7 +63,7 @@ CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_HARDIRQS_SW_RESEND=y
CONFIG_GENERIC_IRQ_CHIP=y
CONFIG_IRQ_DOMAIN=y
CONFIG_IRQ_DOMAIN_DEBUG=y
# CONFIG_IRQ_DOMAIN_DEBUG is not set
CONFIG_KTIME_SCALAR=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
@ -330,7 +330,8 @@ CONFIG_SAMSUNG_DMADEV=y
# Power management
#
# CONFIG_SAMSUNG_PM_DEBUG is not set
# CONFIG_SAMSUNG_PM_CHECK is not set
CONFIG_SAMSUNG_PM_CHECK=y
CONFIG_SAMSUNG_PM_CHECK_CHUNKSIZE=64
CONFIG_S5P_PM=y
CONFIG_S5P_SLEEP=y
CONFIG_DEBUG_S3C_UART=3
@ -348,12 +349,13 @@ CONFIG_SOC_EXYNOS5250=y
CONFIG_SOC_EXYNOS5420=y
# CONFIG_SOC_EXYNOS5440 is not set
CONFIG_EXYNOS5_SETUP_FIMD1=y
CONFIG_ARM_EXYNOS5420_ASV=y
# CONFIG_ARM_EXYNOS5420_ASV is not set
#
# Flattened Device Tree based board for EXYNOS SoCs
#
CONFIG_MACH_EXYNOS5_DT=y
CONFIG_SNOW_BITFIX=y
# CONFIG_ARCH_VT8500 is not set
#
@ -430,10 +432,10 @@ CONFIG_MCPM=y
CONFIG_BIG_LITTLE=y
CONFIG_BL_SWITCHER=y
CONFIG_BL_SWITCHER_DUMMY_IF=y
# CONFIG_VMSPLIT_3G is not set
CONFIG_VMSPLIT_2G=y
CONFIG_VMSPLIT_3G=y
# CONFIG_VMSPLIT_2G is not set
# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0x80000000
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_NR_CPUS=8
CONFIG_HOTPLUG_CPU=y
CONFIG_LOCAL_TIMERS=y
@ -1853,16 +1855,20 @@ CONFIG_POWER_SUPPLY=y
# CONFIG_BATTERY_DS2781 is not set
# CONFIG_BATTERY_DS2782 is not set
CONFIG_BATTERY_SBS=m
# CONFIG_BATTERY_BQ27x00 is not set
CONFIG_BATTERY_BQ27x00=m
CONFIG_BATTERY_BQ27X00_I2C=y
CONFIG_BATTERY_BQ27X00_PLATFORM=y
# CONFIG_BATTERY_MAX17040 is not set
# CONFIG_BATTERY_MAX17042 is not set
# CONFIG_BATTERY_S3C_ADC is not set
CONFIG_CHARGER_CROS_EC=y
# CONFIG_CHARGER_ISP1704 is not set
# CONFIG_CHARGER_MAX8903 is not set
# CONFIG_CHARGER_LP8727 is not set
CONFIG_CHARGER_GPIO=y
# CONFIG_CHARGER_MANAGER is not set
# CONFIG_CHARGER_BQ2415X is not set
# CONFIG_CHARGER_BQ24735 is not set
# CONFIG_CHARGER_SMB347 is not set
CONFIG_CHARGER_TPS65090=y
# CONFIG_POWER_RESET is not set
@ -1932,7 +1938,7 @@ CONFIG_SENSORS_LM90=y
# CONFIG_SENSORS_MAX6642 is not set
# CONFIG_SENSORS_MAX6650 is not set
# CONFIG_SENSORS_MCP3021 is not set
CONFIG_SENSORS_NTC_THERMISTOR=m
CONFIG_SENSORS_NTC_THERMISTOR=y
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_PC87427 is not set
# CONFIG_SENSORS_PCF8591 is not set
@ -2090,6 +2096,7 @@ CONFIG_MFD_TPS65090=y
# CONFIG_MFD_VIPERBOARD is not set
# CONFIG_MFD_RETU is not set
# CONFIG_MFD_AS3711 is not set
# CONFIG_MFD_AS3722 is not set
CONFIG_REGULATOR=y
# CONFIG_REGULATOR_DEBUG is not set
# CONFIG_REGULATOR_DUMMY is not set
@ -2139,7 +2146,6 @@ CONFIG_VIDEO_TUNER=m
CONFIG_V4L2_MEM2MEM_DEV=m
CONFIG_VIDEOBUF_GEN=m
CONFIG_VIDEOBUF_VMALLOC=m
CONFIG_VIDEOBUF_DMA_CONTIG=m
CONFIG_VIDEOBUF_DVB=m
CONFIG_VIDEOBUF2_CORE=m
CONFIG_VIDEOBUF2_MEMOPS=m
@ -2321,23 +2327,13 @@ CONFIG_VIDEO_EM28XX_DVB=m
CONFIG_VIDEO_EM28XX_RC=m
CONFIG_TTPCI_EEPROM=m
CONFIG_V4L_PLATFORM_DRIVERS=y
CONFIG_VIDEO_TIMBERDALE=m
# CONFIG_VIDEO_TIMBERDALE is not set
CONFIG_SOC_CAMERA=m
# CONFIG_SOC_CAMERA_PLATFORM is not set
CONFIG_VIDEO_SH_MOBILE_CSI2=m
CONFIG_VIDEO_SH_MOBILE_CEU=m
CONFIG_VIDEO_SAMSUNG_S5P_FIMC=y
# CONFIG_VIDEO_S5P_FIMC is not set
# CONFIG_VIDEO_S5P_MIPI_CSIS is not set
CONFIG_VIDEO_EXYNOS_FIMC_LITE=m
CONFIG_VIDEO_SAMSUNG_S5P_TV=y
CONFIG_VIDEO_SAMSUNG_S5P_HDMI=m
# CONFIG_VIDEO_SAMSUNG_S5P_HDMI_DEBUG is not set
CONFIG_VIDEO_SAMSUNG_S5P_HDMIPHY=m
CONFIG_VIDEO_SAMSUNG_S5P_SII9234=m
CONFIG_VIDEO_SAMSUNG_S5P_SDO=m
CONFIG_VIDEO_SAMSUNG_S5P_MIXER=m
# CONFIG_VIDEO_SAMSUNG_S5P_MIXER_DEBUG is not set
# CONFIG_VIDEO_SH_MOBILE_CSI2 is not set
# CONFIG_VIDEO_SH_MOBILE_CEU is not set
# CONFIG_VIDEO_SAMSUNG_S5P_FIMC is not set
# CONFIG_VIDEO_SAMSUNG_S5P_TV is not set
CONFIG_V4L_MEM2MEM_DRIVERS=y
# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
# CONFIG_VIDEO_SAMSUNG_S5P_G2D is not set
@ -2400,7 +2396,6 @@ CONFIG_VIDEO_WM8775=m
#
# Video decoders
#
CONFIG_VIDEO_ADV7180=m
CONFIG_VIDEO_SAA711X=m
CONFIG_VIDEO_TVP5150=m
@ -2599,7 +2594,6 @@ CONFIG_DVB_AF9033=m
# Graphics support
#
CONFIG_DRM=y
CONFIG_DRM_USB=m
CONFIG_DRM_KMS_HELPER=y
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
@ -2613,32 +2607,21 @@ CONFIG_DRM_EXYNOS_IOMMU=y
CONFIG_DRM_EXYNOS_DEBUG=y
CONFIG_DRM_EXYNOS_DMABUF=y
CONFIG_DRM_EXYNOS_FIMD=y
CONFIG_DRM_EXYNOS_HDMI=y
CONFIG_DRM_EXYNOS_DP=y
# CONFIG_DRM_EXYNOS_VIDI is not set
# CONFIG_DRM_EXYNOS_G2D is not set
# CONFIG_DRM_EXYNOS_IPP is not set
CONFIG_DRM_UDL=m
# CONFIG_DRM_UDL is not set
CONFIG_DRM_PTN3460=y
CONFIG_DRM_PS8622=y
CONFIG_DRM_ANX7808=y
#
# ARM GPU Configuration
#
CONFIG_MALI_T6XX=y
# CONFIG_MALI_GATOR_SUPPORT is not set
CONFIG_MALI_T6XX_DVFS=y
# CONFIG_MALI_T6XX_RT_PM is not set
# CONFIG_MALI_T6XX_ENABLE_TRACE is not set
CONFIG_MALI_T6XX_DEBUG_SYS=y
CONFIG_MALI_EXPERT=y
# CONFIG_MALI_DEBUG_SHADER_SPLIT_FS is not set
CONFIG_MALI_PLATFORM_FAKE=y
CONFIG_MALI_PLATFORM_THIRDPARTY=y
CONFIG_MALI_PLATFORM_THIRDPARTY_NAME="chromebook"
# CONFIG_MALI_DEBUG is not set
# CONFIG_MALI_NO_MALI is not set
# CONFIG_MALI_TRACE_TIMELINE is not set
# CONFIG_MALI_SYSTEM_TRACE is not set
# CONFIG_MALI_T6XX is not set
# CONFIG_MALI_PLATFORM_THIRDPARTY is not set
# CONFIG_VGASTATE is not set
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
@ -2649,13 +2632,12 @@ CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
CONFIG_FB_SYS_FILLRECT=m
CONFIG_FB_SYS_COPYAREA=m
CONFIG_FB_SYS_IMAGEBLIT=m
# CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set
# CONFIG_FB_FOREIGN_ENDIAN is not set
CONFIG_FB_SYS_FOPS=m
# CONFIG_FB_SYS_FOPS is not set
# CONFIG_FB_WMT_GE_ROPS is not set
CONFIG_FB_DEFERRED_IO=y
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_BACKLIGHT is not set
@ -2669,8 +2651,8 @@ CONFIG_FB_MODE_HELPERS=y
# CONFIG_FB_UVESA is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_TMIO is not set
CONFIG_FB_SMSCUFX=m
CONFIG_FB_UDL=m
# CONFIG_FB_SMSCUFX is not set
# CONFIG_FB_UDL is not set
# CONFIG_FB_VIRTUAL is not set
# CONFIG_FB_METRONOME is not set
# CONFIG_FB_BROADSHEET is not set
@ -3445,7 +3427,7 @@ CONFIG_ARM_EXYNOS5_BUS_DEVFREQ=y
CONFIG_ARM_EXYNOS5420_BUS_DEVFREQ=y
# CONFIG_EXTCON is not set
# CONFIG_MEMORY is not set
CONFIG_IIO=m
CONFIG_IIO=y
# CONFIG_IIO_BUFFER is not set
# CONFIG_IIO_TRIGGER is not set
@ -3783,6 +3765,10 @@ CONFIG_DEBUG_FS=y
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
CONFIG_LOCKUP_DETECTOR=y
CONFIG_HARDLOCKUP_DETECTOR_OTHER_CPU=y
CONFIG_HARDLOCKUP_DETECTOR=y
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=1
# CONFIG_PANIC_ON_OOPS is not set
@ -3919,6 +3905,7 @@ CONFIG_SECURITY_PATH=y
# CONFIG_EVM is not set
CONFIG_DEFAULT_SECURITY_DAC=y
CONFIG_DEFAULT_SECURITY=""
CONFIG_XOR_BLOCKS=y
CONFIG_CRYPTO=y
#

View file

@ -0,0 +1,63 @@
/dts-v1/;
/ {
description = "Chrome OS kernel image with one or more FDT blobs";
#address-cells = <1>;
images {
kernel@1{
description = "kernel";
data = /incbin/("zImage");
type = "kernel_noload";
arch = "arm";
os = "linux";
compression = "none";
load = <0>;
entry = <0>;
};
fdt@1{
description = "exynos5250-snow-rev4.dtb";
data = /incbin/("dts/exynos5250-snow-rev4.dtb");
type = "flat_dt";
arch = "arm";
compression = "none";
hash@1{
algo = "sha1";
};
};
fdt@2{
description = "exynos5250-spring.dtb";
data = /incbin/("dts/exynos5250-spring.dtb");
type = "flat_dt";
arch = "arm";
compression = "none";
hash@1{
algo = "sha1";
};
};
fdt@3{
description = "exynos5250-snow-rev5.dtb";
data = /incbin/("dts/exynos5250-snow-rev5.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";
};
};
};

View file

@ -0,0 +1,18 @@
# arg 1: the new package version
# arg 2: the old package versio
KERNEL_VERSION=3.8.11-ARCH
post_install () {
# updating module dependencies
echo ">>> Updating module dependencies. Please wait ..."
depmod ${KERNEL_VERSION}
sync
}
post_upgrade() {
# updating module dependencies
echo ">>> Updating module dependencies. Please wait ..."
depmod ${KERNEL_VERSION}
sync
}

View file

@ -4,28 +4,26 @@
buildarch=4
pkgbase=linux-chromebook
pkgname=("${pkgbase}" "${pkgbase}-samsung" "${pkgbase}-hp")
pkgname=('linux-chromebook' 'linux-headers-chromebook')
pkgver=20131105
_kernelname=${pkgbase#linux}
_desc="ChromiumOS kernel with ArchLinux ARM tweaks"
_kernelname=${pkgname#linux}
pkgdesc="ChromiumOS kernel with ArchLinux ARM tweaks"
_basever=3.4
pkgrel=1
arch=('armv7h')
url="http://git.chromium.org/gitweb/?p=chromiumos/third_party/kernel.git;a=summary"
url="https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-3.4"
license=('GPL2')
makedepends=('uboot-mkimage' 'dtc' 'git')
options=('!strip')
source=("config"
'kernel-snow.its'
'kernel-spring.its')
md5sums=('35c8f119a257c070c13b84b184b00125'
'1ee7e0f62516ba3af19022c25636011c'
'd3f18ac62c0f83a5060060d8fece3c3f')
'kernel.its')
md5sums=('5e255ae340bad3a32d9f1d1559fe3995'
'56f8343875b928b6aa4e83921e5df25f')
_gitroot='https://git.chromium.org/git/chromiumos/third_party/kernel.git'
_gitroot='https://chromium.googlesource.com/chromiumos/third_party/kernel.git'
_gitname='chromeos-3.4'
_gitbranch='chromeos-3.4'
_gitcommit='e9459bc8'
_gitcommit='90b982e'
prepare() {
cd "${srcdir}/"
@ -47,8 +45,7 @@ prepare() {
cp "${srcdir}/config" .config
# .its files for FIT Images
cp "${srcdir}/kernel-snow.its" arch/arm/boot/kernel-snow.its
cp "${srcdir}/kernel-spring.its" arch/arm/boot/kernel-spring.its
cp "${srcdir}/kernel.its" arch/arm/boot/kernel.its
}
build() {
@ -79,38 +76,15 @@ build() {
# build!
make ${MAKEFLAGS} zImage modules dtbs
}
_package-samsung() {
pkgdesc="The Linux Kernel - ${_desc} - Samsung Chromebook (Snow)"
provides=('linux-chromebook-uImage')
conflicts=('linux-chromebook-hp')
mkdir -p "${pkgdir}/boot"
cd "${srcdir}/${_gitname}"
cd arch/arm/boot
mkimage -f kernel-snow.its "${pkgdir}/boot/vmlinux.uimg"
mkimage -f kernel.its vmlinux.uimg
}
_package-hp() {
pkgdesc="The Linux Kernel - ${_desc} - HP Chromebook 11 (Spring)"
provides=('linux-chromebook-uImage')
conflicts=('linux-chromebook-samsung')
mkdir -p "${pkgdir}/boot"
cd "${srcdir}/${_gitname}"
cd arch/arm/boot
mkimage -f kernel-spring.its "${pkgdir}/boot/vmlinux.uimg"
}
_package() {
pkgdesc="The Linux Kernel modules - ${_desc}"
depends=('coreutils' 'linux-firmware' 'linux-chromebook-uImage')
package_linux-chromebook() {
pkgdesc="The Linux Kernel and modules - ARM Chromebook kernel and modules"
depends=('coreutils' 'linux-firmware' 'module-init-tools>=3.16')
optdepends=('crda: to set the correct wireless channels of your country')
provides=('kernel26' 'linux=${pkgver}' 'aufs_friendly')
conflicts=('linux-omap' 'linux-imx6' 'linux-armada370')
provides=('linux26' "linux=${pkgver}")
install=${pkgname}.install
cd "${srcdir}/${_gitname}"
@ -124,6 +98,7 @@ _package() {
mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot/dtbs}
make INSTALL_MOD_PATH="${pkgdir}" modules_install
cp arch/arm/boot/vmlinux.uimg "${pkgdir}/boot/vmlinux.uimg"
# set correct depmod command for install
sed \
@ -151,17 +126,17 @@ _package() {
mv "$pkgdir/lib" "$pkgdir/usr"
}
_package-headers() {
pkgdesc="Header files and scripts for building modules for Chromebook kernel - ${_desc}"
provides=('linux-headers=${pkgver}')
conflicts=('linux-headers-omap' 'linux-headers-imx6')
package_linux-headers-chromebook() {
pkgdesc="Header files and scripts for building modules for linux kernel - SAMSUNG ARM Chromebook"
provides=("linux-headers=${pkgver}")
conflicts=('linux-headers-omap' 'linux-headers-trimslice')
install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}"
cd "${pkgdir}/usr/lib/modules/${_kernver}"
ln -sf ../../../src/linux-${_kernver} build
cd "${srcdir}/${_srcname}"
cd "${srcdir}/${_gitname}"
install -D -m644 Makefile \
"${pkgdir}/usr/src/linux-${_kernver}/Makefile"
install -D -m644 kernel/Makefile \
@ -172,17 +147,17 @@ _package-headers() {
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include"
for i in acpi asm-generic config crypto drm generated linux math-emu \
media net pcmcia scsi sound trace uapi video xen; do
media net pcmcia scsi sound trace video xen; do
cp -a include/${i} "${pkgdir}/usr/src/linux-${_kernver}/include/"
done
# copy arch includes for external modules
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH
cp -a arch/$KARCH/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/mach-mvebu
cp -a arch/$KARCH/mach-mvebu/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/mach-mvebu/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/plat-orion
cp -a arch/$KARCH/plat-orion/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/plat-orion/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/mach-exynos
cp -a arch/$KARCH/mach-exynos/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/mach-exynos/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/plat-samsung
cp -a arch/$KARCH/plat-samsung/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/plat-samsung/
# copy files necessary for later builds, like nvidia and vmware
cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}"
@ -203,22 +178,13 @@ _package-headers() {
cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel/"
# add headers for lirc package
# pci (Which the chromebook doesn't have
# for i in bt8xx cx88 saa7134; do
# mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/pci/${i}"
# cp -a drivers/media/pci/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/pci/${i}"
# done
# usb
for i in cpia2 em28xx pwc sn9c102; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/${i}"
cp -a drivers/media/usb/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/${i}"
done
# i2c
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c"
cp drivers/media/i2c/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/"
for i in cx25840; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/${i}"
cp -a drivers/media/i2c/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/${i}"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video"
cp drivers/media/video/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/"
for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
cp -a drivers/media/video/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
done
# add docbook makefile
@ -240,29 +206,25 @@ _package-headers() {
# add dvb headers for external modules
# in reference to:
# http://bugs.archlinux.org/task/9912
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-core"
cp drivers/media/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-core/"
# and...
# http://bugs.archlinux.org/task/11194
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
cp include/config/dvb/*.h "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core"
cp drivers/media/dvb/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/"
# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
# in reference to:
# http://bugs.archlinux.org/task/13146
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/"
cp drivers/media/dvb-frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/"
cp drivers/media/i2c/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
cp drivers/media/dvb/frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
cp drivers/media/video/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
# add dvb headers
# in reference to:
# http://bugs.archlinux.org/task/20402
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/dvb-usb"
cp drivers/media/usb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/dvb-usb/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends"
cp drivers/media/dvb-frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/tuners"
cp drivers/media/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/tuners/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb"
cp drivers/media/dvb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends"
cp drivers/media/dvb/frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners"
cp drivers/media/common/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/"
# add xfs and shmem for aufs building
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs"
@ -293,9 +255,3 @@ _package-headers() {
# remove unneeded architectures
rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,x86,xtensa}
}
for _p in ${pkgname[@]}; do
eval "package_${_p}() {
_package${_p#${pkgbase}}
}"
done

View file

@ -432,7 +432,7 @@ CONFIG_MULTI_IRQ_HANDLER=y
CONFIG_ARM_ERRATA_766421=y
CONFIG_ARM_ERRATA_773022=y
CONFIG_ARM_ERRATA_774769=y
# CONFIG_ARM_ERRATA_798181 is not set
CONFIG_ARM_ERRATA_798181=y
CONFIG_ARM_GIC=y
#
@ -2706,6 +2706,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
# CONFIG_SND_SOC_ALL_CODECS is not set
CONFIG_SND_SOC_WM_HUBS=y
CONFIG_SND_SOC_MAX98088=y
CONFIG_SND_SOC_MAX98090=y
CONFIG_SND_SOC_MAX98095=y
CONFIG_SND_SOC_WM8994=y
# CONFIG_SOUND_PRIME is not set
@ -3514,9 +3515,11 @@ CONFIG_CIFS=m
# CONFIG_CIFS_STATS is not set
# CONFIG_CIFS_WEAK_PW_HASH is not set
# CONFIG_CIFS_UPCALL is not set
# CONFIG_CIFS_XATTR is not set
CONFIG_CIFS_XATTR=y
CONFIG_CIFS_POSIX=y
# CONFIG_CIFS_DEBUG2 is not set
# CONFIG_CIFS_DFS_UPCALL is not set
# CONFIG_CIFS_ACL is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set

View file

@ -15,8 +15,28 @@
entry = <0>;
};
fdt@1{
description = "exynos5250-snow.dtb";
data = /incbin/("exynos5250-snow.dtb");
description = "exynos5250-snow-rev4.dtb";
data = /incbin/("exynos5250-snow-rev4.dtb");
type = "flat_dt";
arch = "arm";
compression = "none";
hash@1{
algo = "sha1";
};
};
fdt@2{
description = "exynos5250-spring.dtb";
data = /incbin/("exynos5250-spring.dtb");
type = "flat_dt";
arch = "arm";
compression = "none";
hash@1{
algo = "sha1";
};
};
fdt@3{
description = "exynos5250-snow-rev5.dtb";
data = /incbin/("exynos5250-snow-rev5.dtb");
type = "flat_dt";
arch = "arm";
compression = "none";
@ -31,5 +51,13 @@
kernel = "kernel@1";
fdt = "fdt@1";
};
conf@2{
kernel = "kernel@1";
fdt = "fdt@2";
};
conf@3{
kernel = "kernel@1";
fdt = "fdt@3";
};
};
};