iadd support for building highbank, imx and kirkwood kernel images on arm

This commit is contained in:
Dennis Gilmore 2011-12-09 13:29:38 -06:00
parent 2569ae132a
commit 534352f358
6 changed files with 233 additions and 1 deletions

View File

@ -10,7 +10,9 @@ CONFIGFILES = \
$(CFG)-x86_64.config $(CFG)-x86_64-debug.config \
$(CFG)-s390x.config \
$(CFG)-arm.config $(CFG)-armv5tel.config \
$(CFG)-armv5tel-kirkwood.config $(CFG)-armv7l-imx.config \
$(CFG)-armv7l-omap.config $(CFG)-armv7l-tegra.config \
$(CFG)-armv7hl-imx.config $(CFG)-armv7hl-highbank.config \
$(CFG)-armv7hl-omap.config $(CFG)-armv7hl-tegra.config \
$(CFG)-ppc.config $(CFG)-ppc-smp.config \
$(CFG)-sparc64.config \
@ -43,6 +45,15 @@ temp-armv7l-omap-generic: config-arm-omap-generic temp-arm-generic
temp-armv7l-tegra: config-arm-tegra temp-arm-generic
perl merge.pl $^ > $@
temp-armv5tel-kirkwood: config-arm-kirkwood temp-arm-generic
perl merge.pl $^ > $@
temp-armv7l-imx: config-arm-imx temp-arm-generic
perl merge.pl $^ > $@
temp-armv7l-highbank: config-arm-highbank temp-arm-generic
perl merge.pl $^ > $@
temp-x86-32: config-x86-32-generic config-x86-generic
perl merge.pl $^ > $@
@ -112,12 +123,27 @@ kernel-$(VERSION)-arm.config: /dev/null temp-arm-generic
kernel-$(VERSION)-armv5tel.config: /dev/null temp-arm-generic
perl merge.pl $^ arm > $@
kernel-$(VERSION)-armv5tel-kirkwood.config: /dev/null temp-armv5tel-kirkwood
perl merge.pl $^ arm > $@
kernel-$(VERSION)-armv7l-imx.config: /dev/null temp-armv7l-imx
perl merge.pl $^ arm > $@
kernel-$(VERSION)-armv7l-highbank.config: /dev/null temp-armv7l-highbank
perl merge.pl $^ arm > $@
kernel-$(VERSION)-armv7l-omap.config: /dev/null temp-armv7l-omap-generic
perl merge.pl $^ arm > $@
kernel-$(VERSION)-armv7l-tegra.config: /dev/null temp-armv7l-tegra
perl merge.pl $^ arm > $@
kernel-$(VERSION)-armv7hl-imx.config: /dev/null temp-armv7l-imx
perl merge.pl $^ arm > $@
kernel-$(VERSION)-armv7hl-highbank.config: /dev/null temp-armv7l-highbank
perl merge.pl $^ arm > $@
kernel-$(VERSION)-armv7hl-omap.config: /dev/null temp-armv7l-omap-generic
perl merge.pl $^ arm > $@

3
config-arm-highbank Normal file
View File

@ -0,0 +1,3 @@
ONFIG_ARCH_HIGHBANK=y
CONFIG_VFP=y
CONFIG_NEON=y

75
config-arm-imx Normal file
View File

@ -0,0 +1,75 @@
CONFIG_ARCH_MXC=y
CONFIG_ARCH_MX51=y
CONFIG_MACH_MX51_BABBAGE=y
CONFIG_MACH_MX51_3DS=y
CONFIG_MACH_EUKREA_CPUIMX51=y
CONFIG_VFP=y
CONFIG_NEON=y
CONFIG_MACH_MX31ADS=y
CONFIG_MACH_MX31LILLY=y
CONFIG_MACH_MX31LITE=y
CONFIG_MACH_PCM037=y
CONFIG_MACH_MX31_3DS=y
CONFIG_MACH_MX31MOBOARD=y
CONFIG_MACH_QONG=y
CONFIG_MACH_ARMADILLO5X0=y
CONFIG_MACH_KZM_ARM11_01=y
CONFIG_MACH_BUG=y
CONFIG_MACH_PCM043=y
CONFIG_MACH_MX35_3DS=y
CONFIG_MACH_EUKREA_CPUIMX35=y
CONFIG_MACH_VPR200=y
CONFIG_SOC_IMX6Q=y
CONFIG_MXC_IRQ_PRIOR=y
CONFIG_MXC_PWM=m
CONFIG_MXC_DEBUG_BOARD=y
# CONFIG_CPU_BPREDICT_DISABLE is not set
# CONFIG_CACHE_L2X0 is not set
CONFIG_ARM_DMA_MEM_BUFFERABLE=y
CONFIG_ARM_ERRATA_411920=y
CONFIG_PL310_ERRATA_588369=y
CONFIG_PL310_ERRATA_727915=y
CONFIG_ARM_ERRATA_364296=y
CONFIG_HW_PERF_EVENTS=y
CONFIG_RFKILL_GPIO=m
CONFIG_PATA_IMX=m
CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_BROADCOM=y
CONFIG_NET_VENDOR_FREESCALE=y
CONFIG_FEC=y
CONFIG_KEYBOARD_IMX=m
CONFIG_SERIAL_IMX=y
CONFIG_HW_RANDOM_MXC_RNGA=m
CONFIG_I2C_IMX=m
CONFIG_GPIO_GENERIC_PLATFORM=y
CONFIG_GPIO_MCP23S08=m
CONFIG_DVB_TDA1004X=m
CONFIG_DVB_PLL=m
CONFIG_SND_IMX_SOC=m
CONFIG_USB_EHCI_MXC=y
CONFIG_USB_IMX21_HCD=m
CONFIG_MMC_SDHCI_ESDHC_IMX=m
CONFIG_MMC_MXC=m
CONFIG_RTC_MXC=m
CONFIG_BACKLIGHT_PWM=m
CONFIG_LEDS_PWM=m
CONFIG_MACH_PCM037_EET=y
# CONFIG_MACH_MX31_3DS_MXC_NAND_USE_BBT is not set
CONFIG_MXC_USE_EPIT=y
CONFIG_ARM_THUMBEE=y
CONFIG_ARM_ERRATA_430973=y
CONFIG_ARM_ERRATA_458693=y
CONFIG_ARM_ERRATA_460075=y
CONFIG_ARM_ERRATA_743622=y
CONFIG_ARM_ERRATA_754322=y
CONFIG_CAN_FLEXCAN=m
CONFIG_MTD_NAND_MXC=m
CONFIG_INPUT_PWM_BEEPER=m
CONFIG_SERIAL_IMX_CONSOLE=y
CONFIG_IMX2_WDT=m
CONFIG_SND_SOC_PHYCORE_AC97=m
CONFIG_SND_SOC_EUKREA_TLV320=m

43
config-arm-kirkwood Normal file
View File

@ -0,0 +1,43 @@
CONFIG_ARCH_KIRKWOOD=y
CONFIG_MACH_DB88F6281_BP=y
CONFIG_MACH_RD88F6192_NAS=y
CONFIG_MACH_RD88F6281=y
CONFIG_MACH_MV88F6281GTW_GE=y
CONFIG_MACH_SHEEVAPLUG=y
CONFIG_MACH_ESATA_SHEEVAPLUG=y
CONFIG_MACH_GURUPLUG=y
CONFIG_MACH_DOCKSTAR=y
CONFIG_MACH_TS219=y
CONFIG_MACH_TS41X=y
CONFIG_MACH_OPENRD_BASE=y
CONFIG_MACH_OPENRD_CLIENT=y
CONFIG_MACH_OPENRD_ULTIMATE=y
CONFIG_MACH_NETSPACE_V2=y
CONFIG_MACH_INETSPACE_V2=y
CONFIG_MACH_NETSPACE_MAX_V2=y
CONFIG_MACH_D2NET_V2=y
CONFIG_MACH_NET2BIG_V2=y
CONFIG_MACH_NET5BIG_V2=y
CONFIG_MACH_T5325=y
# CONFIG_CPU_FEROCEON_OLD_ID is not set
CONFIG_CACHE_FEROCEON_L2=y
CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH=y
CONFIG_MTD_NAND_ORION=m
CONFIG_MV643XX_ETH=m
CONFIG_I2C_MV64XXX=m
CONFIG_GPIO_GENERIC_PLATFORM=y
CONFIG_GPIO_MCP23S08=m
CONFIG_ORION_WATCHDOG=m
CONFIG_SND_KIRKWOOD_SOC=m
CONFIG_SND_KIRKWOOD_SOC_OPENRD=m
CONFIG_SND_KIRKWOOD_SOC_T5325=m
CONFIG_MMC_MVSDIO=m
CONFIG_LEDS_NS2=m
CONFIG_LEDS_NETXBIG=m
CONFIG_RTC_DRV_MV=m
CONFIG_MV_XOR=y
CONFIG_CRYPTO_DEV_MV_CESA=m

View File

@ -128,6 +128,12 @@ Summary: The Linux kernel
%define with_omap %{?_without_omap: 0} %{?!_without_omap: 1}
# kernel-tegra (only valid for arm)
%define with_tegra %{?_without_tegra: 0} %{?!_without_tegra: 1}
# kernel-kirkwood (only valid for arm)
%define with_kirkwood %{?_without_kirkwood: 0} %{?!_without_kirkwood: 1}
# kernel-imx (only valid for arm)
%define with_imx %{?_without_imx: 0} %{?!_without_imx: 1}
# kernel-highbank (only valid for arm)
%define with_highbank %{?_without_highbank: 0} %{?!_without_highbank: 1}
#
# Additional options for user-friendly one-off kernel building:
#
@ -258,10 +264,17 @@ Summary: The Linux kernel
%define with_pae 0
%endif
# kernel-tegra and omap is only built on armv7 hard and softfp
# kernel-tegra, omap, imx and highbank are only built on armv7 hard and softfp
%ifnarch armv7hl armv7l
%define with_tegra 0
%define with_omap 0
%define with_imx 0
%define with_highbank 0
%endif
# kernel-kirkwood is only built for armv5
%ifnarch armv5tel
%define with_kirkwood 0
%endif
# if requested, only build base kernel
@ -583,6 +596,9 @@ Source90: config-sparc64-generic
Source100: config-arm-generic
Source110: config-arm-omap-generic
Source111: config-arm-tegra
Source112: config-arm-kirkwood
Source113: config-arm-imx
Source114: config-arm-highbank
Source200: config-backports
@ -716,6 +732,7 @@ Patch20000: utrace.patch
# Flattened devicetree support
Patch21000: arm-omap-dt-compat.patch
Patch21001: arm-smsc-support-reading-mac-address-from-device-tree.patch
Patch21002: pci-fix-ats-compile.patch
Patch21080: sysfs-msi-irq-per-device.patch
@ -1001,6 +1018,23 @@ This variant of the kernel has numerous debugging options enabled.
It should only be installed when trying to gather additional information
on kernel bugs, as some of these options impact performance noticably.
%define variant_summary The Linux kernel compiled for marvell kirkwood boards
%kernel_variant_package kirkwood
%description kirkwood
This package includes a version of the Linux kernel with support for
marvell kirkwood based systems, i.e., guruplug, sheevaplug
%define variant_summary The Linux kernel compiled for freescale boards
%kernel_variant_package imx
%description imx
This package includes a version of the Linux kernel with support for
freescale based systems, i.e., efika smartbook.
%define variant_summary The Linux kernel compiled for Calxeda boards
%kernel_variant_package highbank
%description highbank
This package includes a version of the Linux kernel with support for
Calxeda based systems, i.e., HP arm servers.
%define variant_summary The Linux kernel compiled for TI-OMAP boards
%kernel_variant_package omap
@ -1279,6 +1313,7 @@ ApplyPatch linux-2.6-i386-nx-emulation.patch
#
ApplyPatch arm-omap-dt-compat.patch
ApplyPatch arm-smsc-support-reading-mac-address-from-device-tree.patch
ApplyPatch pci-fix-ats-compile.patch
#
# bugfixes to drivers and filesystems
@ -1806,6 +1841,18 @@ BuildKernel %make_target %kernel_image PAEdebug
BuildKernel %make_target %kernel_image PAE
%endif
%if %{with_kirkwood}
BuildKernel %make_target %kernel_image kirkwood
%endif
%if %{with_imx}
BuildKernel %make_target %kernel_image imx
%endif
%if %{with_highbank}
BuildKernel %make_target %kernel_image highbank
%endif
%if %{with_omap}
BuildKernel %make_target %kernel_image omap
%endif
@ -2071,6 +2118,15 @@ fi}\
%kernel_variant_post -v PAEdebug -r (kernel|kernel-smp)
%kernel_variant_preun PAEdebug
%kernel_variant_preun kirkwood
%kernel_variant_post -v kirkwood
%kernel_variant_preun imx
%kernel_variant_post -v imx
%kernel_variant_preun highbank
%kernel_variant_post -v highbank
%kernel_variant_preun omap
%kernel_variant_post -v omap
@ -2207,6 +2263,9 @@ fi
%kernel_variant_files %{with_debug} debug
%kernel_variant_files %{with_pae} PAE
%kernel_variant_files %{with_pae_debug} PAEdebug
%kernel_variant_files %{with_kirkwood} kirkwood
%kernel_variant_files %{with_imx} imx
%kernel_variant_files %{with_highbank} highbank
%kernel_variant_files %{with_omap} omap
%kernel_variant_files %{with_tegra} tegra

26
pci-fix-ats-compile.patch Normal file
View File

@ -0,0 +1,26 @@
I get this compile failure on parisc:
drivers/pci/ats.c: In function 'ats_alloc_one':
drivers/pci/ats.c:29: error: implicit declaration of function 'kzalloc'
drivers/pci/ats.c:29: warning: assignment makes pointer from integer without a cast
drivers/pci/ats.c: In function 'ats_free_one':
drivers/pci/ats.c:45: error: implicit declaration of function 'kfree'
Because ats.c is missing linux/slab.h as an include. This patch fixes it
Signed-off-by: James Bottomley <JBottomley@xxxxxxxxxxxxx>
---
diff --git a/drivers/pci/ats.c b/drivers/pci/ats.c
index 7ec56fb..b0dd08e 100644
--- a/drivers/pci/ats.c
+++ b/drivers/pci/ats.c
@@ -13,6 +13,7 @@
#include <linux/export.h>
#include <linux/pci-ats.h>
#include <linux/pci.h>
+#include <linux/slab.h>
#include "pci.h"