summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* IXP4xx: Fix Goramo Multilink GPIO conversion.Krzysztof Halasa2014-03-261-17/+26
| | | | | | | | | | | | | | | | | | | | | | | | | Commit 098e30f6558f8 "ARM: ixp4xx: stop broadcasting the custom GPIO API" changed the internal gpio code of ixp4xx to be accessible only from common.c, but unfortunately that broke the Goramo MultiLink code, which uses this API. arch/arm/mach-ixp4xx/goramo_mlr.c: In function 'set_scl': arch/arm/mach-ixp4xx/goramo_mlr.c:82: error: implicit declaration of function 'gpio_line_set' arch/arm/mach-ixp4xx/goramo_mlr.c: In function 'output_control': arch/arm/mach-ixp4xx/goramo_mlr.c:111: error: implicit declaration of function 'gpio_line_config' arch/arm/mach-ixp4xx/goramo_mlr.c:111: error: 'IXP4XX_GPIO_OUT' undeclared arch/arm/mach-ixp4xx/goramo_mlr.c: In function 'hss_dcd_irq': arch/arm/mach-ixp4xx/goramo_mlr.c:155: error: implicit declaration of function 'gpio_line_get' arch/arm/mach-ixp4xx/goramo_mlr.c: In function 'gmlr_init': arch/arm/mach-ixp4xx/goramo_mlr.c:416: error: 'IXP4XX_GPIO_OUT' undeclared arch/arm/mach-ixp4xx/goramo_mlr.c:421: error: 'IXP4XX_GPIO_IN' undeclared Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* Revert "ARM: ixp4xx: fix gpio rework"Arnd Bergmann2014-03-262-10/+3
| | | | | | | | This reverts commit 48ba81f6fdb7580a5c474da1b14a338e1358e6ab. A better fix was sent by Krzysztof Halasa. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* Merge branch 'randconfig-fixes' into next/fixes-non-criticalArnd Bergmann2014-03-2253-91/+159
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the first batch of a much longer series of bug fixes found during randconfig testing. This part are all the simple patches that are applicable for the arm-soc tree, while most other fixes will likely go through other maintainers. * randconfig-fixes: (50 commits) ARM: tegra: make debug_ll code build for ARMv6 ARM: sunxi: fix build for THUMB2_KERNEL ARM: exynos: add missing include of linux/module.h ARM: exynos: fix l2x0 saved regs handling ARM: samsung: select CRC32 for SAMSUNG_PM_CHECK ARM: samsung: select ATAGS where necessary ARM: samsung: fix SAMSUNG_PM_DEBUG Kconfig logic ARM: samsung: allow serial driver to be disabled ARM: s5pv210: enable IDE support in MACH_TORBRECK ARM: s5p64x0: fix building with only one soc type ARM: s3c64xx: select power domains only when used ARM: s3c64xx: MACH_SMDK6400 needs HSMMC1 ARM: s3c24xx: osiris dvs needs tps65010 ARM: s3c24xx: fix gta02 build error ARM: s3c24xx: MINI2440 needs I2C for EEPROM_AT24 ARM: integrator: only select pl01x if TTY is enabled ARM: realview: fix sparsemem build ARM: footbridge: make screen_info setup conditional ARM: footbridge: fix build with PCI disabled ARM: footbridge: don't build floppy code for addin mode ... Signed-off-by: Arnd Bergmann <arnd@arndb.de>
| * ARM: tegra: make debug_ll code build for ARMv6Arnd Bergmann2014-03-221-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In a combined ARMv6/v7 kernel, we cannot use the movt/movw instructions to load an immediate, as they are not valid on ARMv6. This changes the file to use an indirect load instead, as lots of other implementations do. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Stephen Warren <swarren@wwwdotorg.org> Acked-by: Stephen Warren <swarren@wwwdotorg.org> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: linux-tegra@vger.kernel.org
| * ARM: sunxi: fix build for THUMB2_KERNELArnd Bergmann2014-03-224-11/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Building an SMP kernel for the sunxi platform with THUMB2 instructions fails with this error at the moment: headsmp.S:7: Error: Thumb encoding does not support an immediate here -- `msr cpsr_fsxc,#0xd3' Since the generic secondary_startup function already does the same thing in a safe way, we can just drop the private sunxi implementation and jump straight to secondary_startup. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
| * ARM: exynos: add missing include of linux/module.hArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | After the restructuring of the module.h and init.h headers, we now need to include this explicitly here. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: exynos: fix l2x0 saved regs handlingArnd Bergmann2014-03-211-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The exynos4_l2x0_cache_init function tries to flush the data cache for the location of the saved l2x0 registers and pass the physical address to the s5p-sleep implementation. However, the s5p-sleep code is optional, and if it is disabled, we get a linker error here when the l2x0_regs_phys variable does not exist. To solve this, use a compile-time conditional to drop this code if we don't want it. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: samsung: select CRC32 for SAMSUNG_PM_CHECKArnd Bergmann2014-03-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The Samsung pm_check code uses the crc32 library code, which can be built as a loadable module, in which case we get a link error building the kernel. A better solution is to use 'select CRC32', which is what all other users of this code do, as it ensures it is always built-in. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: samsung: select ATAGS where necessaryArnd Bergmann2014-03-211-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Most of the Samsung platforms do not yet allow building with DT at all, so we should select CONFIG_ATAGS for now in all cases we also select CONFIG_SAMSUNG_ATAGS. Found during randconfig testing. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: samsung: fix SAMSUNG_PM_DEBUG Kconfig logicArnd Bergmann2014-03-211-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | The suspend debug code for Samsung has multiple dependencies that we should not unconditionally enable. In particular, we rely on the DEBUG_S3C_UART setting, which in turn depends on the samsung UART driver. Signed-off-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: samsung: allow serial driver to be disabledArnd Bergmann2014-03-213-3/+19
| | | | | | | | | | | | | | | | | | | | | | If CONFIG_SERIAL_SAMSUNG is disabled, we run into build errors with some samsung platforms. This adds a couple of #ifdef statements to hopefully deal with this more gracefully. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: s5pv210: enable IDE support in MACH_TORBRECKArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Building MACH_TORBRECK by itself results in a build error because we try to reference the s3c_device_cfcon definition that is hidden inside CONFIG_SAMSUNG_DEV_IDE. This changes the Kconfig logic to ensure that option is enabled when we need it. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: s5p64x0: fix building with only one soc typeArnd Bergmann2014-03-212-6/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The s5p64x0 platform supports two distinct SoCs, s5p6440 and s5p6450, and in the normal configuration, both are enabled. However if we build a kernel that only enables one of the two, the #ifdef logic in common.c breaks down, as some of the functions declared in the header are defined to NULL using the preprocessor but then defined anyway. This patch cleans up the mess and ensures that each function has either exactly one C declaration and one matching C definition, or we have a NULL defined function pointer but no C definition. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: s3c64xx: select power domains only when usedArnd Bergmann2014-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | The power domain code is only available when CONFIG_PM is enabled, so we must not select that unconditionally for s3c64xx. Changing it to 'select PM_GENERIC_DOMAINS if PM' mirrors what we do on other platforms, and fixes a possible randconfig build bug. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: s3c64xx: MACH_SMDK6400 needs HSMMC1Arnd Bergmann2014-03-211-2/+1
| | | | | | | | | | | | | | | | | | | | This board uses both MMC controllers, so we need to enable the Kconfig option to define the platform data. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: s3c24xx: osiris dvs needs tps65010Arnd Bergmann2014-03-211-1/+1
| | | | | | | | | | | | | | | | | | The osiris-dvs driver calls functions exported by the tps65010 driver, so we have to ensure that driver is enabled first. Using 'select' here doesn't work all that well, because it requires I2C to be enabled in turn. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
| * ARM: s3c24xx: fix gta02 build errorArnd Bergmann2014-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The gta02 has always been broken in the case when CONFIG_PCF50633_ADC is not used, since gta02_charger_worker then passes a nonexisting variable into the pcf50633_mbc_usb_curlim_set() function. This addresses the obvious typo by using the variable that is used everywhere else in this file. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: s3c24xx: MINI2440 needs I2C for EEPROM_AT24Arnd Bergmann2014-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | If I2C is disabled, we cannot build the AT24 driver, so we should not select it. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
| * ARM: integrator: only select pl01x if TTY is enabledArnd Bergmann2014-03-211-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | Building the integrator platform without TTY support currently results in a build failure because we always turn on the pl010 or pl011 drivers. Changing this to a conditional 'select' statement enables us to build more random configurations, although it should have little impact for practical configurations. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Russell King <linux@arm.linux.org.uk> Cc: Linus Walleij <linus.walleij@linaro.org>
| * ARM: realview: fix sparsemem buildArnd Bergmann2014-03-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit b713aa0b15 "ARM: fix asm/memory.h build error" broke some configurations on mach-realview with sparsemem enabled, which is missing a definition of PHYS_OFFSET: arch/arm/include/asm/memory.h:268:42: error: 'PHYS_OFFSET' undeclared (first use in this function) #define PHYS_PFN_OFFSET ((unsigned long)(PHYS_OFFSET >> PAGE_SHIFT)) arch/arm/include/asm/dma-mapping.h:104:9: note: in expansion of macro 'PHYS_PFN_OFFSET' return PHYS_PFN_OFFSET + dma_to_pfn(dev, *dev->dma_mask); An easy workaround is for realview to define PHYS_OFFSET itself, in the same way we define it for platforms that don't have a private __virt_to_phys function. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Russell King <linux@arm.linux.org.uk> Cc: Linus Walleij <linus.walleij@linaro.org>
| * ARM: footbridge: make screen_info setup conditionalArnd Bergmann2014-03-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The global screen_info structure is used to communicate data about the console from platform code to the console driver, but is only defined on ARM if either the VGA or dummy consoles are in use. This changes the footbridge code so we don't try to access this structure in case it is not defined, which prevents a possible randconfig build error. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Russell King <linux@arm.linux.org.uk>
| * ARM: footbridge: fix build with PCI disabledArnd Bergmann2014-03-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | The dc21285.c source file cannot be built when CONFIG_PCI is disabled, because it calls a number of PCI core interfaces. This changes the Makefile so we don't include this file in the build if CONFIG_PCI is disabled. No other code references anything defined inside of this file in this case. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Russell King <linux@arm.linux.org.uk>
| * ARM: footbridge: don't build floppy code for addin modeArnd Bergmann2014-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The ARCH_EBSA285_ADDIN platform does not provide the ISA_DMA API, which is required by the floppy driver. Let's ensure that the floppy code can only be built when ISA_DMA is also enabled, by moving the select statement into ARCH_EBSA285_HOST. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Russell King <linux@arm.linux.org.uk>
| * ARM: rpc: autoselect CPU_SA110Arnd Bergmann2014-03-212-1/+2
| | | | | | | | | | | | | | | | | | | | ARCH_RPC no longer supports other CPUs aside from StrongARM110, so we can make the option implicitly selected by the platform and no longer give the option of building a kernel without CPU support. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Russell King <linux@arm.linux.org.uk>
| * ARM: pxa: trizeps4 and trizeps4wl use the same fileArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The trizeps4 and trizeps4wl platforms are both implemented using the same board file. Since the trizeps4wl code is a superset of trizeps4, it makes no sense to enable just the latter, but with the current Kconfig logic, it causes the board file not to be built at all. Selecting MACH_TRIZEPS4 from MACH_TRIZEPS4WL ensures that we are actually building the board file. Found during randconfig testing. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Haojian Zhuang <haojian.zhuang@gmail.com> Cc: Daniel Mack <zonque@gmail.com>
| * ARM: pxa: select I2C_GPIO only if I2C is onArnd Bergmann2014-03-211-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The Arcom/Eurotech VIPER SBC enables the I2C_GPIO driver, but that has a dependency on I2C, and causes build failures if I2C is disabled. To keep existing configurations running while fixing the randconfig problems, this changes the logic to only enable I2C_GPIO if I2C is already enabled. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Haojian Zhuang <haojian.zhuang@gmail.com> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Daniel Mack <zonque@gmail.com>
| * ARM: pxa: remove broken balloon3_gpio_vbus referenceArnd Bergmann2014-03-211-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | balloon3_udc_init() tries to register a balloon3_gpio_vbus device, but this has never been defined in the mainline kernel. To avoid the obvious build failure when this function is enabled, remove the bogus reference here. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Haojian Zhuang <haojian.zhuang@gmail.com> Cc: Daniel Mack <zonque@gmail.com>
| * ARM: pxa: fix pxa_ssp_* declarationsArnd Bergmann2014-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The functions declared in include/linux/pxa2xx_ssp.h are defined in plat-pxa/ssp.c, which can also be built for PLAT_MMP, but may be disabled there. This can lead to both unresolved symbols at link time and to duplicate symbols at compile time for random configurations. Changing the #ifdef in the header file to match the Kconfig symbol that decides if the file is built solves both problems. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Haojian Zhuang <haojian.zhuang@gmail.com> Cc: Daniel Mack <zonque@gmail.com>
| * ARM: pxa: fix colibri buildArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The colibri_ohci_init function performs a register access through the io_p2v() macro, which requires the IOMEM macro to be defined. By explicitly including the asm/io.h header file that contains this macro, we avoid the build error: arch/arm/mach-pxa/colibri-evalboard.c: In function 'colibri_ohci_init': arch/arm/mach-pxa/colibri-evalboard.c:68:2: error: implicit declaration of function 'IOMEM' [-Werror=implicit-function-declaration] UP2OCR = UP2OCR_HXS | UP2OCR_HXOE | UP2OCR_DPPDE | UP2OCR_DMPDE; Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Haojian Zhuang <haojian.zhuang@gmail.com> Cc: Daniel Mack <zonque@gmail.com>
| * ARM: pxa: enable pxafb unconditionally for some boardsArnd Bergmann2014-03-211-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The SAAR and TAVOREVB machines try to call functions from the PXAFB frame buffer driver from their platform code, which only works if that driver is built-in. This patch ensures that both the generic frame buffer code and the specific pxafb driver are always enabled when we build a kernel for one of the two boards. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Haojian Zhuang <haojian.zhuang@gmail.com> Cc: Daniel Mack <zonque@gmail.com>
| * ARM: pxa: don't "select" SMC91X on MACH_XCEPArnd Bergmann2014-03-211-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We normally don't hard-enable Kconfig options just because a board contains a specific piece of hardware. In this case, selecting SMC91X causes a build error, if we don't also enable basic network device driver support. Since the platform has no direct dependency on this driver at link time, we can just remove the 'select' statement. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Haojian Zhuang <haojian.zhuang@gmail.com> Cc: Daniel Mack <zonque@gmail.com>
| * ARM: orion5x: make dns323 independent of PHY supportArnd Bergmann2014-03-212-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The D-Link DNS-323 machine tries to unconditionally select CONFIG_PHYLIB, but that has other dependencies that might not necessarily be enabled, causing random build errors. To work around this, this patch removes the 'select' statement and instead uses a compile-time check to skip the phy_register_fixup_for_uid() call if PHYLIB is not available in the kernel. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Jason Cooper <jason@lakedaemon.net> Cc: Andrew Lunn <andrew@lunn.ch> Cc: Gregory Clement <gregory.clement@free-electrons.com> Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
| * ARM: mvebu: add missing headerArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | The definition for SIGBUS may not be visible without including linux/signal.h, as I found during randconfig testing. Adding an explicit include is certainly the right thing to do. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Jason Cooper <jason@lakedaemon.net> Acked-by: Gregory Clement <gregory.clement@free-electrons.com> Cc: Andrew Lunn <andrew@lunn.ch> Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
| * ARM: omap1: don't rely on tps65010Arnd Bergmann2014-03-212-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code for h2 and osk implicitly assumes that the tps65010 driver is built-in, in order to perform the initial regulator setup. This is fine for most real uses, but it does get into the way of build testing with 'make randconfig', since we don't want platforms to implicitly select device drivers and subsystems such as I2C. This patch by contrast changes the board files to not call into the tps65010 driver when that is not built-in, allowing us to build all configurations including some that will not work properly on this hardware. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Tony Lindgren <tony@atomide.com>
| * ARM: omap1: fix build when !CONFIG_OMAP_32K_TIMERFelipe Balbi2014-03-211-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | If CONFIG_OMAP_32K_TIMER isn't enabled, we will try to use enable_dyn_sleep which wasn't defined anywhere. In order to fix the problem, we always define enable_dyn_sleep as 0 when !CONFIG_OMAP_32K_TIMER. Signed-off-by: Felipe Balbi <balbi@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
| * ARM: msm: export legacy DMA interfacesArnd Bergmann2014-03-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The msm_sdcc MMC driver and the msm_serial_hs uart driver both use the pre-dmaengine interfaces provided by the MSM platform. Since these drivers can be loadable modules, we should export the functions used in the drivers. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: David Brown <davidb@codeaurora.org> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org>
| * ARM: msm: avoid calling debug_ll_addr on !MMUArnd Bergmann2014-03-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MSM7X00A has an open-coded version of debug_ll_io_init so it can use MT_DEVICE_NONSHARED as required by the platform. However, this fails to build on no-MMU kernels because the debug_ll_addr function is not available. Since the iotable_init function doesn't actually do anyting in this configuration, we can simply get away by enclosing the broken function call in an #ifdef, which seems to be the least ugly workaround. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: David Brown <davidb@codeaurora.org> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org>
| * ARM: msm: add missing include of linux/module.hArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | After the restructuring of the module.h and init.h headers, we now need to include this explicitly here. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: David Brown <davidb@codeaurora.org> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org>
| * ARM: lpc32xx: export lpc32xx_return_iram_sizeArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | This symbol is used by the lpc_eth driver, which may be a loadable module. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Roland Stigge <stigge@antcom.de>
| * ARM: ks8695/og: make PCI setup conditionalArnd Bergmann2014-03-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | The 'og' machine tries to always initialized the PCI code, but that may be disabled in Kconfig, leading to a build error. This patch changes the code to use the same Kconfig symbol to decide about calling the ks8695_init_pci function at build time that we use to decide about building the ks8695 PCI support. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Greg Ungerer <gerg@uclinux.org>
| * ARM: ixp4xx: fix gpio reworkArnd Bergmann2014-03-212-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 098e30f6558f8 "ARM: ixp4xx: stop broadcasting the custom GPIO API" changed the internal gpio code of ixp4xx to be accessible only from common.c, but unfortunately that broke the Goramo MultiLink code, which uses this API. This tries to restore the previous state without exposing the API globally again. A better solution might be needed. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Krzysztof Halasa <khc@pm.waw.pl> Cc: Imre Kaloz <kaloz@openwrt.org>
| * ARM: ixp4xx: avoid use of PCIBIOS_MIN_MEM in io.hArnd Bergmann2014-03-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using CONFIG_IXP4XX_INDIRECT_PCI, we run into a recursive header file dependency between mach/io.h and asm/pci.h, resulting in a build failure: mach-ixp4xx/include/mach/io.h: In function 'is_pci_memory': mach-ixp4xx/include/mach/io.h:53:18: error: 'PCIBIOS_MIN_MEM' undeclared (first use in this function) return (addr >= PCIBIOS_MIN_MEM) && (addr <= 0x4FFFFFFF); ^ mach-ixp4xx/include/mach/io.h:53:18: note: each undeclared identifier is reported only once for each function it appears in We can work around this by referencing the pcibios_min_mem variable directly through an extern declaration, rather than using the macro. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Imre Kaloz <kaloz@openwrt.org> Cc: Krzysztof Halasa <khc@pm.waw.pl>
| * ARM: ixp4xx/omixp: always include linux/leds.hArnd Bergmann2014-03-211-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The omixp board code unconditionally defines a gpio-led device, but for some reason includes the header file for this only if CONFIG_LEDS_CLASS is enabled, causing a build error otherwise. Removing the #ifdef fixes the build error with no downsides whatsoever. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Imre Kaloz <kaloz@openwrt.org> Cc: Krzysztof Halasa <khc@pm.waw.pl>
| * ARM: hisi: fix building without CONFIG_HOTPLUG_CPUArnd Bergmann2014-03-212-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | The hisi SMP code always uses the hi3xxx_set_cpu() function defined in the hotplug.c file, so we cannot build without this when CONFIG_SMP is enabled. This patch slightly restructures the code so we always build the parts of hotplug.c that we need but just leave out the CPU disable logic if CONFIG_HOTPLUG_CPU is turned off. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Haojian Zhuang <haojian.zhuang@gmail.com>
| * ARM: ep93xx: export ep93xx_chip_revisionArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | ep93xx_chip_revision is used by the pata_ep93xx driver, which can be a loadable module. Exporting the symbol avoids a link error in this case. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Hartley Sweeten <hsweeten@visionengravers.com> Cc: Ryan Mallon <rmallon@gmail.com>
| * ARM: efm32: select AUTO_ZRELADDRArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | The efm32 platform does not provide a zreladdr-y line its Makefile.boot, so we always have to use CONFIG_AUTO_ZRELADDR in order to successfully build and link a zImage. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Uwe Kleine-König <kernel@pengutronix.de>
| * ARM: davinci: fix Kconfig for DA850_EVMArnd Bergmann2014-03-212-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The DAVINCI_DA850_EVM board uses an unusual method to enable the GPIO_PCA953X and KEYBOARD_GPIO_POLLED symbols, which leads to the dependencies on these symbols being ignored. As GPIO_PCA953X actually requires I2C, that can lead to build failures when I2C is disabled. This patch removes the duplicate symbol definitions and instead enables them from the davinci_all_defconfig file. A different question whether we actually want to automatically enable them at all or rather put them into defconfig, but that should be a separate patch. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Sekhar Nori <nsekhar@ti.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: davinci-linux-open-source@linux.davincidsp.com
| * ARM: davinci: make dm644x-evm phy fixup conditionalArnd Bergmann2014-03-211-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We cannot call phy_register_fixup_for_uid() if CONFIG_PHYLIB is not built into the kernel, and we should not enforce that to be built into vmlinux either, because one might want to disable the entire network stack. This change uses a compile-time condition on CONFIG_PHYLIB to remove the call in the cases where it cannot work. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Sekhar Nori <nsekhar@ti.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: davinci-linux-open-source@linux.davincidsp.com
| * ARM: at91: sama5 always uses DTArnd Bergmann2014-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | It makes no sense for sama5 support to be enabled if we don't also enable USE_OF. Making this automatic in Kconfig avoids a possible randconfig conflict between the old and new clock support code. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Acked-by: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
| * ARM: at91: fix broken "if () else" statementArnd Bergmann2014-03-211-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If CONFIG_PATA_AT91 is disabled, the code in at91_add_device_cf is turned into invalid C statements due to the lack of an expression before the 'else' clause. This moves the first half of the condition inside of the #ifdef, which seems to be what the author intended. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Cc: Andrew Victor <linux@maxim.org.za> Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>