From cfeb4721e8744f5bb2e8719ab253c5b4471b89b0 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mar 24 2013 18:10:58 +0000 Subject: Update ARM config for OMAP/mvebu/lpae --- diff --git a/arm-lpae-ax88796.patch b/arm-lpae-ax88796.patch new file mode 100644 index 0000000..3b9c326 --- /dev/null +++ b/arm-lpae-ax88796.patch @@ -0,0 +1,21 @@ +X-Git-Url: http://git.linaro.org/gitweb?p=people%2Fahs3%2Farndale-acpi.git;a=blobdiff_plain;f=drivers%2Fnet%2Fethernet%2F8390%2Fax88796.c;fp=drivers%2Fnet%2Fethernet%2F8390%2Fax88796.c;h=763e575c82bc5d24e1927ad685dfbdd7a0eaa19e;hp=70dba5d01ad3cc8178318f9976a5922894a86859;hb=fe8e7c500d3d25234759351096d457b6e557ebd9;hpb=af28003b46fa7b2c5d7b52e0d4bc8f725a6305f1 + +diff --git a/drivers/net/ethernet/8390/ax88796.c b/drivers/net/ethernet/8390/ax88796.c +index 70dba5d..763e575 100644 +--- a/drivers/net/ethernet/8390/ax88796.c ++++ b/drivers/net/ethernet/8390/ax88796.c +@@ -828,7 +828,14 @@ static int ax_probe(struct platform_device *pdev) + struct ei_device *ei_local; + struct ax_device *ax; + struct resource *irq, *mem, *mem2; ++#ifndef CONFIG_ARM_LPAE ++ /* LPAE breaks this code as __aeabi_uldivmod for 64-bit ++ * is not supported in lib1funcs.s yet ++ */ + resource_size_t mem_size, mem2_size = 0; ++#else ++ u32 mem_size, mem2_size = 0; ++#endif + int ret = 0; + + dev = ax__alloc_ei_netdev(sizeof(struct ax_device)); diff --git a/arm-omap-fix-usb-mvebu-conflict.patch b/arm-omap-fix-usb-mvebu-conflict.patch new file mode 100644 index 0000000..7ef7661 --- /dev/null +++ b/arm-omap-fix-usb-mvebu-conflict.patch @@ -0,0 +1,85 @@ +--- linux-3.9.0-0.rc3.git1.4.fc19.x86_64/drivers/usb/host/ehci-hcd.c.orig 2013-03-23 18:52:52.576674960 +0000 ++++ linux-3.9.0-0.rc3.git1.4.fc19.x86_64/drivers/usb/host/ehci-hcd.c 2013-03-24 12:46:49.149621810 +0000 +@@ -1252,7 +1252,7 @@ + + #ifdef CONFIG_USB_EHCI_HCD_OMAP + #include "ehci-omap.c" +-#define PLATFORM_DRIVER ehci_hcd_omap_driver ++#define OMAP_PLATFORM_DRIVER ehci_hcd_omap_driver + #endif + + #ifdef CONFIG_PPC_PS3 +@@ -1272,7 +1272,7 @@ + + #ifdef CONFIG_PLAT_ORION + #include "ehci-orion.c" +-#define PLATFORM_DRIVER ehci_orion_driver ++#define ORION_PLATFORM_DRIVER ehci_orion_driver + #endif + + #ifdef CONFIG_USB_W90X900_EHCI +@@ -1384,6 +1384,12 @@ + goto clean0; + #endif + ++#ifdef ORION_PLATFORM_DRIVER ++ retval = platform_driver_register(&ORION_PLATFORM_DRIVER); ++ if (retval < 0) ++ goto clean1; ++#endif ++ + #ifdef PS3_SYSTEM_BUS_DRIVER + retval = ps3_ehci_driver_register(&PS3_SYSTEM_BUS_DRIVER); + if (retval < 0) +@@ -1401,10 +1407,20 @@ + if (retval < 0) + goto clean4; + #endif ++ ++#ifdef OMAP_PLATFORM_DRIVER ++ retval = platform_driver_register(&OMAP_PLATFORM_DRIVER); ++ if (retval < 0) ++ goto clean5; ++#endif + return retval; + ++#ifdef OMAP_PLATFORM_DRIVER ++ /* platform_driver_unregister(&OMAP_PLATFORM_DRIVER); */ ++clean5: ++#endif + #ifdef XILINX_OF_PLATFORM_DRIVER +- /* platform_driver_unregister(&XILINX_OF_PLATFORM_DRIVER); */ ++ platform_driver_unregister(&XILINX_OF_PLATFORM_DRIVER); + clean4: + #endif + #ifdef OF_PLATFORM_DRIVER +@@ -1415,6 +1431,10 @@ + ps3_ehci_driver_unregister(&PS3_SYSTEM_BUS_DRIVER); + clean2: + #endif ++#ifdef ORION_PLATFORM_DRIVER ++ platform_driver_unregister(&ORION_PLATFORM_DRIVER); ++clean1: ++#endif + #ifdef PLATFORM_DRIVER + platform_driver_unregister(&PLATFORM_DRIVER); + clean0: +@@ -1431,12 +1451,18 @@ + + static void __exit ehci_hcd_cleanup(void) + { ++#ifdef OMAP_PLATFORM_DRIVER ++ platform_driver_unregister(&OMAP_PLATFORM_DRIVER); ++#endif + #ifdef XILINX_OF_PLATFORM_DRIVER + platform_driver_unregister(&XILINX_OF_PLATFORM_DRIVER); + #endif + #ifdef OF_PLATFORM_DRIVER + platform_driver_unregister(&OF_PLATFORM_DRIVER); + #endif ++#ifdef ORION_PLATFORM_DRIVER ++ platform_driver_unregister(&ORION_PLATFORM_DRIVER); ++#endif + #ifdef PLATFORM_DRIVER + platform_driver_unregister(&PLATFORM_DRIVER); + #endif diff --git a/config-arm-generic b/config-arm-generic index 03d9392..2397c37 100644 --- a/config-arm-generic +++ b/config-arm-generic @@ -48,9 +48,8 @@ CONFIG_LOCAL_TIMERS=y CONFIG_ATAGS=y CONFIG_ATAGS_PROC=y -CONFIG_PL330_DMA=y +CONFIG_PL330_DMA=m CONFIG_AMBA_PL08X=y -CONFIG_PL330_DMA=y # CONFIG_XIP_KERNEL is not set # CONFIG_PID_IN_CONTEXTIDR is not set diff --git a/config-armv7 b/config-armv7 index 7142ed9..ffaf72e 100644 --- a/config-armv7 +++ b/config-armv7 @@ -31,6 +31,7 @@ CONFIG_CPU_IDLE_CALXEDA=y CONFIG_EDAC_HIGHBANK_MC=m CONFIG_EDAC_HIGHBANK_L2=m CONFIG_SATA_HIGHBANK=m +CONFIG_ARM_HIGHBANK_CPUFREQ=m # versatile CONFIG_VEXPRESS_CONFIG=y @@ -48,10 +49,6 @@ CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y CONFIG_MACH_ARMADA_370_XP=y CONFIG_MACH_ARMADA_370=y CONFIG_MACH_ARMADA_XP=y -CONFIG_ARCH_DOVE=y -# CONFIG_MACH_DOVE_DB is not set -# CONFIG_MACH_CM_A510 is not set -CONFIG_MACH_DOVE_DT=y CONFIG_CACHE_TAUROS2=y CONFIG_MV_XOR=y @@ -73,8 +70,6 @@ CONFIG_MVNETA=m CONFIG_GPIO_MVEBU=y CONFIG_MVEBU_CLK_CORE=y CONFIG_MVEBU_CLK_GATING=y -CONFIG_DOVE_THERMAL=m -CONFIG_MMC_SDHCI_DOVE=m CONFIG_MMC_MVSDIO=m # omap @@ -141,13 +136,18 @@ CONFIG_REGULATOR_TWL4030=y CONFIG_BACKLIGHT_PANDORA=m CONFIG_USB_EHCI_HCD_OMAP=y CONFIG_USB_OHCI_HCD_OMAP3=y +CONFIG_OMAP_CONTROL_USB=m +CONFIG_NOP_USB_XCEIV=m +CONFIG_TWL4030_USB=m +CONFIG_TWL6030_USB=m +CONFIG_USB_MUSB_AM35X=m CONFIG_MMC_OMAP=y CONFIG_MMC_OMAP_HS=y CONFIG_RTC_DRV_MAX8907=m CONFIG_RTC_DRV_TWL92330=y CONFIG_RTC_DRV_TWL4030=y CONFIG_RTC_DRV_OMAP=y -CONFIG_DMA_OMAP=m +CONFIG_DMA_OMAP=y CONFIG_OMAP_IOVMM=m CONFIG_HWSPINLOCK_OMAP=m CONFIG_OMAP_IOMMU=y @@ -181,7 +181,7 @@ CONFIG_CRYPTO_DEV_OMAP_SHAM=m CONFIG_CRYPTO_DEV_OMAP_AES=m CONFIG_HW_RANDOM_OMAP=m -CONFIG_DRM_TILCDC=m +# CONFIG_DRM_TILCDC is not set CONFIG_DRM_OMAP=m CONFIG_DRM_OMAP_NUM_CRTCS=2 CONFIG_OMAP2_VRAM=y @@ -383,12 +383,10 @@ CONFIG_REGULATOR_LP8755=m # CONFIG_TOUCHSCREEN_EETI is not set # CONFIG_TOUCHSCREEN_EGALAX is not set # CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set -CONFIG_VIRTUALIZATION=y + +# CONFIG_VIRTUALIZATION is not set # CONFIG_CHARGER_MANAGER is not set # CONFIG_POWER_RESET_QNAP is not set # CONFIG_POWER_RESET_RESTART is not set # CONFIG_ARM_PSCI is not set -# CONFIG_ARM_HIGHBANK_CPUFREQ is not set -# CONFIG_RFKILL_REGULATOR is not set - -CONFIG_XZ_DEC_ARM=y +# CONFIG_OMAP2_DSS_DEBUG is not set diff --git a/config-armv7-generic b/config-armv7-generic index 77faa72..6012c32 100644 --- a/config-armv7-generic +++ b/config-armv7-generic @@ -156,7 +156,7 @@ CONFIG_SERIAL_AMBA_PL011_CONSOLE=y CONFIG_RTC_DRV_PL030=y CONFIG_RTC_DRV_PL031=y -CONFIG_PL330_DMA=y +CONFIG_PL330_DMA=m CONFIG_AMBA_PL08X=y CONFIG_ARM_SP805_WATCHDOG=m CONFIG_I2C_VERSATILE=m @@ -276,6 +276,22 @@ CONFIG_PERF_EVENTS=y # CONFIG_PID_IN_CONTEXTIDR is not set # CONFIG_DEPRECATED_PARAM_STRUCT is not set +# these modules all fail with missing __bad_udelay +# http://www.spinics.net/lists/arm/msg15615.html provides some background +# CONFIG_SUNGEM is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_RADEON is not set +# CONFIG_DRM_RADEON is not set +# CONFIG_ATM_HE is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SFC is not set + +# these all currently fail due to missing symbols __bad_udelay or +# error: implicit declaration of function ‘iowrite32be’ +# CONFIG_SND_ALI5451 is not set +# CONFIG_DRM_NOUVEAU is not set +# CONFIG_MLX4_EN is not set + # Debug options. We need to deal with them at some point like x86 # CONFIG_COMMON_CLK_DEBUG is not set # CONFIG_DEBUG_USER is not set diff --git a/config-armv7-lpae b/config-armv7-lpae index 847de97..324a31e 100644 --- a/config-armv7-lpae +++ b/config-armv7-lpae @@ -1,26 +1,10 @@ # ARM unified arch kernel CONFIG_CPU_V7=y -# CONFIG_ARCH_MULTI_V4 is not set -# CONFIG_ARCH_MULTI_V4T is not set -# CONFIG_ARCH_MULTI_V6 is not set -CONFIG_ARCH_MULTI_V6_V7=y -CONFIG_ARCH_MULTI_V7=y -# CONFIG_ARCH_BCM is not set -# CONFIG_ARCH_HIGHBANK is not set -# CONFIG_ARCH_MVEBU is not set -# CONFIG_ARCH_MXC is not set -# CONFIG_ARCH_OMAP2PLUS is not set -# CONFIG_ARCH_PICOXCELL is not set -# CONFIG_ARCH_SOCFPGA is not set -# CONFIG_ARCH_SUNXI is not set -# CONFIG_ARCH_VEXPRESS_CA9X4 is not set -CONFIG_ARCH_VEXPRESS_DT=y +CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_VIRT=y -# CONFIG_ARCH_WM8850 is not set -# CONFIG_ARCH_ZYNQ is not set -CONFIG_VEXPRESS_EXTENDED_MEMORY_MAP=y -CONFIG_ARCH_VEXPRESS_CA15X4=y -# CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA is not set + +# CONFIG_ARCH_EXYNOS4 is not set +CONFIG_ARCH_EXYNOS5=y CONFIG_ARM_LPAE=y CONFIG_VIRTIO_CONSOLE=m @@ -51,7 +35,42 @@ CONFIG_XEN_GNTDEV=y CONFIG_XEN_GRANT_DEV_ALLOC=m CONFIG_XEN_WDT=m -# CONFIG_ARCH_OMAP2 is not set -# CONFIG_ARCH_OMAP3 is not set -# CONFIG_ARCH_OMAP4 is not set -CONFIG_ARCH_OMAP5=y +CONFIG_S3C_BOOT_ERROR_RESET=y +CONFIG_S3C_BOOT_UART_FORCE_FIFO=y +CONFIG_S3C_LOWLEVEL_UART_PORT=0 +CONFIG_S3C_GPIO_SPACE=8 +CONFIG_S3C_ADC=y +CONFIG_S3C24XX_PWM=y +# CONFIG_SAMSUNG_PM_DEBUG is not set +# CONFIG_SAMSUNG_PM_CHECK is not set +CONFIG_SOC_EXYNOS5250=y +CONFIG_SOC_EXYNOS5440=y +CONFIG_MACH_EXYNOS5_DT=y +CONFIG_ARM_PSCI=y +CONFIG_ARM_EXYNOS_CPUFREQ=y +CONFIG_SERIAL_SAMSUNG=y +CONFIG_I2C_S3C2410=m +CONFIG_PINCTRL_EXYNOS=y +CONFIG_S3C2410_WATCHDOG=m +CONFIG_VIDEO_SAMSUNG_S5P_G2D=m +CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m +CONFIG_VIDEO_SAMSUNG_S5P_MFC=m +CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m +CONFIG_FB_S3C=m +CONFIG_SND_SOC_SAMSUNG=m +CONFIG_USB_EHCI_S5P=y +CONFIG_USB_OHCI_EXYNOS=y +CONFIG_MMC_SDHCI_S3C=m +CONFIG_RTC_DRV_S3C=m +CONFIG_PWM_SAMSUNG=m +CONFIG_S3C_BOOT_WATCHDOG=y +CONFIG_SAMSUNG_GPIO_EXTRA=8 +CONFIG_SERIAL_SAMSUNG_CONSOLE=y +CONFIG_BATTERY_S3C_ADC=m +CONFIG_SENSORS_S3C=m +CONFIG_SENSORS_S3C_RAW=y +CONFIG_FB_S3C_DEBUG_REGWRITE=y +CONFIG_SND_SOC_SAMSUNG_SMDK_SPDIF=m +CONFIG_USB_EHCI_S5P=y +CONFIG_SAMSUNG_USBPHY=y +CONFIG_MMC_SDHCI_S3C_DMA=y diff --git a/kernel.spec b/kernel.spec index 1f41ace..840d492 100644 --- a/kernel.spec +++ b/kernel.spec @@ -252,8 +252,8 @@ Summary: The Linux kernel # kernel up (unified kernel target), unified LPAE, tegra are only built on armv7 hfp %ifnarch armv7hl %define with_lpae 0 -%define with_tegra 0 %endif +%define with_tegra 0 # if requested, only build base kernel %if %{with_baseonly} @@ -706,14 +706,15 @@ Patch14010: lis3-improve-handling-of-null-rate.patch # ARM Patch21000: arm-export-read_current_timer.patch -# IMX +# lpae +Patch21001: arm-lpae-ax88796.patch + +# ARM omap +Patch21002: arm-omap-fix-usb-mvebu-conflict.patch # ARM tegra Patch21004: arm-tegra-nvec-kconfig.patch Patch21005: arm-tegra-usb-no-reset-linux33.patch -# https://patchwork.kernel.org/patch/2106061/ - -# versatile #rhbz 754518 Patch21235: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch @@ -1307,6 +1308,8 @@ ApplyPatch vmbugon-warnon.patch # ARM # ApplyPatch arm-export-read_current_timer.patch +ApplyPatch arm-lpae-ax88796.patch +# ApplyPatch arm-omap-fix-usb-mvebu-conflict.patch # ApplyPatch arm-tegra-nvec-kconfig.patch ApplyPatch arm-tegra-usb-no-reset-linux33.patch @@ -2292,6 +2295,9 @@ fi # ||----w | # || || %changelog +* Sun Mar 24 2013 Peter Robinson +- Update ARM config for OMAP/mvebu/lpae + * Fri Mar 22 2013 Dave Jones - Fix calculation of current frequency in intel_pstate driver. (rhbz 923942) - Add missing build-req for perl-Carp