Update ARM config for OMAP/mvebu/lpae

This commit is contained in:
Peter Robinson 2013-03-24 18:10:58 +00:00
parent e47265e619
commit cfeb4721e8
7 changed files with 189 additions and 45 deletions

21
arm-lpae-ax88796.patch Normal file
View File

@ -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));

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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 <pbrobinson@fedoraproject.org>
- Update ARM config for OMAP/mvebu/lpae
* Fri Mar 22 2013 Dave Jones <davej@redhat.com>
- Fix calculation of current frequency in intel_pstate driver. (rhbz 923942)
- Add missing build-req for perl-Carp