aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2012-05-08 15:26:20 +0000
committerArnd Bergmann <arnd@arndb.de>2012-08-22 15:14:08 +0200
commitaa8698bd303cfcbd78493b737905cc5606fb006c (patch)
treee3c6a2e436440a40678fa2260a3d832f8fd4fa87
parent37784fff6f8e70e30bb4351f6873cac67889cb51 (diff)
ARM: random randconfig fixes for testing multiplatformtracking-multiplatform-llct-20120822.0
These patches fix or work around problems that existed before the multiplatform support got added. They should be addressed one by one with an appropriate patch. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r--arch/arm/Kconfig1
-rw-r--r--arch/arm/Kconfig.debug1
-rw-r--r--arch/arm/mach-exynos/common.h1
-rw-r--r--arch/arm/mach-ux500/hotplug.c4
-rw-r--r--arch/arm/plat-mxc/Kconfig1
-rw-r--r--arch/arm/plat-omap/debug-leds.c2
-rw-r--r--drivers/gpio/gpio-pxa.c4
-rw-r--r--drivers/i2c/busses/i2c-designware-core.c1
-rw-r--r--drivers/i2c/busses/i2c-designware-platdrv.c2
-rw-r--r--drivers/iio/Kconfig1
-rw-r--r--drivers/leds/leds-lp5523.c4
-rw-r--r--drivers/media/video/au0828/Kconfig2
-rw-r--r--drivers/media/video/smiapp/smiapp-core.c1
-rw-r--r--drivers/mfd/rc5t583.c2
-rw-r--r--drivers/mfd/wm8994-core.c2
-rw-r--r--drivers/mmc/host/dw_mmc.c5
-rw-r--r--drivers/mtd/devices/Kconfig1
-rw-r--r--drivers/net/wireless/ath/carl9170/Kconfig1
-rw-r--r--drivers/net/wireless/ti/wlcore/main.c2
-rw-r--r--drivers/usb/Kconfig10
-rw-r--r--drivers/usb/host/Kconfig1
-rw-r--r--include/linux/phy.h18
-rw-r--r--include/linux/usb/ulpi.h8
-rw-r--r--sound/soc/Kconfig1
-rw-r--r--sound/soc/omap/Kconfig1
25 files changed, 60 insertions, 17 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 6de14670cca5..e51de7bc61b4 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -262,6 +262,7 @@ config ARCH_MULTIPLATFORM
select SPARSE_IRQ
select MULTI_IRQ_HANDLER
select AUTO_ZRELADDR
+ select ARM_PATCH_PHYS_VIRT
depends on MMU
config ARCH_SOCFPGA
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
index f15f82bf3a50..6721f96763bd 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -392,6 +392,7 @@ config OC_ETM
config ARM_KPROBES_TEST
tristate "Kprobes test module"
depends on KPROBES && MODULES
+ depends on CPU_V6 || CPU_V7
help
Perform tests of kprobes API and instruction set simulation.
diff --git a/arch/arm/mach-exynos/common.h b/arch/arm/mach-exynos/common.h
index aed2eeb06517..f91bb4b90494 100644
--- a/arch/arm/mach-exynos/common.h
+++ b/arch/arm/mach-exynos/common.h
@@ -13,6 +13,7 @@
#define __ARCH_ARM_MACH_EXYNOS_COMMON_H
extern struct sys_timer exynos4_timer;
+struct map_desc;
void exynos_init_io(struct map_desc *mach_desc, int size);
void exynos4_init_irq(void);
diff --git a/arch/arm/mach-ux500/hotplug.c b/arch/arm/mach-ux500/hotplug.c
index c76f0f456f04..11b38f52890a 100644
--- a/arch/arm/mach-ux500/hotplug.c
+++ b/arch/arm/mach-ux500/hotplug.c
@@ -23,8 +23,8 @@ static inline void platform_do_lowpower(unsigned int cpu)
/* we put the platform to just WFI */
for (;;) {
- __asm__ __volatile__("dsb\n\t" "wfi\n\t"
- : : : "memory");
+ dsb();
+ wfi();
if (pen_release == cpu_logical_map(cpu)) {
/*
* OK, proper wakeup, we're done
diff --git a/arch/arm/plat-mxc/Kconfig b/arch/arm/plat-mxc/Kconfig
index a54d863e71bd..030d998a7f60 100644
--- a/arch/arm/plat-mxc/Kconfig
+++ b/arch/arm/plat-mxc/Kconfig
@@ -66,6 +66,7 @@ config HAVE_EPIT
config MXC_USE_EPIT
bool "Use EPIT instead of GPT"
depends on HAVE_EPIT
+ depends on BROKEN
help
Use EPIT as the system timer on systems that have it. Normally you
don't have a reason to do so as the EPIT has the same features and
diff --git a/arch/arm/plat-omap/debug-leds.c b/arch/arm/plat-omap/debug-leds.c
index 2450ab4c5915..3d6c4a6411c3 100644
--- a/arch/arm/plat-omap/debug-leds.c
+++ b/arch/arm/plat-omap/debug-leds.c
@@ -62,6 +62,7 @@ static u16 led_state, hw_led_state;
#define GPIO_IDLE GPIO_LED_GREEN
#define GPIO_TIMER GPIO_LED_RED
+#ifdef CONFIG_LEDS
static void h2p2_dbg_leds_event(led_event_t evt)
{
unsigned long flags;
@@ -179,6 +180,7 @@ static void h2p2_dbg_leds_event(led_event_t evt)
done:
spin_unlock_irqrestore(&lock, flags);
}
+#endif
/*-------------------------------------------------------------------------*/
diff --git a/drivers/gpio/gpio-pxa.c b/drivers/gpio/gpio-pxa.c
index c6440a5651e1..50e1f5c798da 100644
--- a/drivers/gpio/gpio-pxa.c
+++ b/drivers/gpio/gpio-pxa.c
@@ -494,6 +494,7 @@ static int pxa_gpio_nums(void)
return count;
}
+#ifdef CONFIG_OF
static struct of_device_id pxa_gpio_dt_ids[] = {
{ .compatible = "mrvl,pxa-gpio" },
{ .compatible = "mrvl,mmp-gpio", .data = (void *)MMP_GPIO },
@@ -513,7 +514,6 @@ const struct irq_domain_ops pxa_irq_domain_ops = {
.map = pxa_irq_domain_map,
};
-#ifdef CONFIG_OF
static int __devinit pxa_gpio_probe_dt(struct platform_device *pdev)
{
int ret, nr_banks, nr_gpios, irq_base;
@@ -659,7 +659,7 @@ static struct platform_driver pxa_gpio_driver = {
.probe = pxa_gpio_probe,
.driver = {
.name = "pxa-gpio",
- .of_match_table = pxa_gpio_dt_ids,
+ .of_match_table = of_match_ptr(pxa_gpio_dt_ids),
},
};
diff --git a/drivers/i2c/busses/i2c-designware-core.c b/drivers/i2c/busses/i2c-designware-core.c
index 1e48bec80edf..368c807ec6e1 100644
--- a/drivers/i2c/busses/i2c-designware-core.c
+++ b/drivers/i2c/busses/i2c-designware-core.c
@@ -33,6 +33,7 @@
#include <linux/io.h>
#include <linux/pm_runtime.h>
#include <linux/delay.h>
+#include <linux/module.h>
#include "i2c-designware-core.h"
/*
diff --git a/drivers/i2c/busses/i2c-designware-platdrv.c b/drivers/i2c/busses/i2c-designware-platdrv.c
index 0506fef8dc00..8e6a78402a3c 100644
--- a/drivers/i2c/busses/i2c-designware-platdrv.c
+++ b/drivers/i2c/busses/i2c-designware-platdrv.c
@@ -199,7 +199,7 @@ static const struct of_device_id dw_i2c_of_match[] = {
MODULE_DEVICE_TABLE(of, dw_i2c_of_match);
#endif
-#ifdef CONFIG_PM
+#ifdef CONFIG_PM_SLEEP
static int dw_i2c_suspend(struct device *dev)
{
struct platform_device *pdev = to_platform_device(dev);
diff --git a/drivers/iio/Kconfig b/drivers/iio/Kconfig
index d4984c8be973..ec8e5898a1da 100644
--- a/drivers/iio/Kconfig
+++ b/drivers/iio/Kconfig
@@ -5,6 +5,7 @@
menuconfig IIO
tristate "Industrial I/O support"
depends on GENERIC_HARDIRQS
+ select ANON_INODES
help
The industrial I/O subsystem provides a unified framework for
drivers for many different types of embedded sensors using a
diff --git a/drivers/leds/leds-lp5523.c b/drivers/leds/leds-lp5523.c
index fbc12acada95..6283e2aa07b3 100644
--- a/drivers/leds/leds-lp5523.c
+++ b/drivers/leds/leds-lp5523.c
@@ -243,7 +243,9 @@ static int lp5523_configure(struct i2c_client *client)
/* Let the programs run for couple of ms and check the engine status */
usleep_range(3000, 6000);
- lp5523_read(client, LP5523_REG_STATUS, &status);
+ ret = lp5523_read(client, LP5523_REG_STATUS, &status);
+ if (ret)
+ return ret;
status &= LP5523_ENG_STATUS_MASK;
if (status == LP5523_ENG_STATUS_MASK) {
diff --git a/drivers/media/video/au0828/Kconfig b/drivers/media/video/au0828/Kconfig
index 23f7fd22f0eb..0a2de7b12a97 100644
--- a/drivers/media/video/au0828/Kconfig
+++ b/drivers/media/video/au0828/Kconfig
@@ -2,11 +2,11 @@
config VIDEO_AU0828
tristate "Auvitek AU0828 support"
depends on I2C && INPUT && DVB_CORE && USB && VIDEO_V4L2
+ depends on DVB_AU8522_DTV
depends on DVB_CAPTURE_DRIVERS
select I2C_ALGOBIT
select VIDEO_TVEEPROM
select VIDEOBUF_VMALLOC
- select DVB_AU8522_DTV if !DVB_FE_CUSTOMISE
select DVB_AU8522_V4L if !DVB_FE_CUSTOMISE
select MEDIA_TUNER_XC5000 if !MEDIA_TUNER_CUSTOMISE
select MEDIA_TUNER_MXL5007T if !MEDIA_TUNER_CUSTOMISE
diff --git a/drivers/media/video/smiapp/smiapp-core.c b/drivers/media/video/smiapp/smiapp-core.c
index bfd47c106134..80b973f3485a 100644
--- a/drivers/media/video/smiapp/smiapp-core.c
+++ b/drivers/media/video/smiapp/smiapp-core.c
@@ -34,6 +34,7 @@
#include <linux/slab.h>
#include <linux/regulator/consumer.h>
#include <linux/v4l2-mediabus.h>
+#include <linux/slab.h>
#include <media/v4l2-device.h>
#include "smiapp.h"
diff --git a/drivers/mfd/rc5t583.c b/drivers/mfd/rc5t583.c
index cdc1df7fa0e9..7637ffe78aac 100644
--- a/drivers/mfd/rc5t583.c
+++ b/drivers/mfd/rc5t583.c
@@ -97,7 +97,7 @@ static int __rc5t583_set_ext_pwrreq1_control(struct device *dev,
en_bit = deepsleep_data[id].ds_pos_bit;
slot_bit = en_bit + 1;
ret = rc5t583_read(dev, deepsleep_data[id].reg_add, &sleepseq_val);
- if (ret < 0) {
+ if (ret) {
dev_err(dev, "Error in reading reg 0x%x\n",
deepsleep_data[id].reg_add);
return ret;
diff --git a/drivers/mfd/wm8994-core.c b/drivers/mfd/wm8994-core.c
index eec74aa55fdf..5529c6638852 100644
--- a/drivers/mfd/wm8994-core.c
+++ b/drivers/mfd/wm8994-core.c
@@ -405,7 +405,7 @@ static __devinit int wm8994_device_init(struct wm8994 *wm8994, int irq)
struct regmap_config *regmap_config;
const struct reg_default *regmap_patch = NULL;
const char *devname;
- int ret, i, patch_regs;
+ int ret, i, uninitialized_var(patch_regs);
int pulls = 0;
dev_set_drvdata(wm8994->dev, wm8994);
diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
index 72dc3cde646d..79573eb085c8 100644
--- a/drivers/mmc/host/dw_mmc.c
+++ b/drivers/mmc/host/dw_mmc.c
@@ -11,7 +11,6 @@
* (at your option) any later version.
*/
-#include <linux/blkdev.h>
#include <linux/clk.h>
#include <linux/debugfs.h>
#include <linux/device.h>
@@ -1760,7 +1759,7 @@ static void dw_mci_work_routine_card(struct work_struct *work)
}
}
-static int __init dw_mci_init_slot(struct dw_mci *host, unsigned int id)
+static int __devinit dw_mci_init_slot(struct dw_mci *host, unsigned int id)
{
struct mmc_host *mmc;
struct dw_mci_slot *slot;
@@ -1935,7 +1934,7 @@ static bool mci_wait_reset(struct device *dev, struct dw_mci *host)
return false;
}
-int dw_mci_probe(struct dw_mci *host)
+int __devinit dw_mci_probe(struct dw_mci *host)
{
int width, i, ret = 0;
u32 fifo_size;
diff --git a/drivers/mtd/devices/Kconfig b/drivers/mtd/devices/Kconfig
index 4cdb2af7bf44..315c3512dff4 100644
--- a/drivers/mtd/devices/Kconfig
+++ b/drivers/mtd/devices/Kconfig
@@ -264,6 +264,7 @@ config MTD_DOCG3
tristate "M-Systems Disk-On-Chip G3"
select BCH
select BCH_CONST_PARAMS
+ select BITREVERSE
---help---
This provides an MTD device driver for the M-Systems DiskOnChip
G3 devices.
diff --git a/drivers/net/wireless/ath/carl9170/Kconfig b/drivers/net/wireless/ath/carl9170/Kconfig
index 267d5dcf82dc..1f1ba8fd689e 100644
--- a/drivers/net/wireless/ath/carl9170/Kconfig
+++ b/drivers/net/wireless/ath/carl9170/Kconfig
@@ -1,6 +1,7 @@
config CARL9170
tristate "Linux Community AR9170 802.11n USB support"
depends on USB && MAC80211 && EXPERIMENTAL
+ select BITREVERSE
select FW_LOADER
select CRC32
help
diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c
index 72548609f711..1faa6ae3dda4 100644
--- a/drivers/net/wireless/ti/wlcore/main.c
+++ b/drivers/net/wireless/ti/wlcore/main.c
@@ -1426,6 +1426,7 @@ int wl1271_rx_filter_alloc_field(struct wl12xx_rx_filter *filter,
return 0;
}
+#endif
int wl1271_rx_filter_get_fields_size(struct wl12xx_rx_filter *filter)
{
@@ -1458,6 +1459,7 @@ void wl1271_rx_filter_flatten_fields(struct wl12xx_rx_filter *filter,
}
}
+#ifdef CONFIG_PM
/*
* Allocates an RX filter returned through f
* which needs to be freed using rx_filter_free()
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
index a7773a3e02b1..040f1fdda9f7 100644
--- a/drivers/usb/Kconfig
+++ b/drivers/usb/Kconfig
@@ -55,6 +55,11 @@ config USB_ARCH_HAS_XHCI
boolean
default PCI
+config USB_COMMON
+ tristate
+ default y
+ depends on USB || USB_GADGET
+
menuconfig USB_SUPPORT
bool "USB support"
depends on HAS_IOMEM
@@ -65,11 +70,6 @@ menuconfig USB_SUPPORT
if USB_SUPPORT
-config USB_COMMON
- tristate
- default y
- depends on USB || USB_GADGET
-
# Host-side USB depends on having a host controller
# NOTE: dummy_hcd is always an option, but it's ignored here ...
# NOTE: SL-811 option should be board-specific ...
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index 075d2eca8108..6c662c509049 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -145,6 +145,7 @@ config USB_EHCI_FSL
config USB_EHCI_MXC
bool "Support for Freescale i.MX on-chip EHCI USB controller"
depends on USB_EHCI_HCD && ARCH_MXC
+ depends on !USB_EHCI_HCD_OMAP
select USB_EHCI_ROOT_HUB_TT
---help---
Variation of ARC USB block used in some Freescale chips.
diff --git a/include/linux/phy.h b/include/linux/phy.h
index 93b3cf77f564..d8e3d411b2d1 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -548,12 +548,30 @@ int phy_start_interrupts(struct phy_device *phydev);
void phy_print_status(struct phy_device *phydev);
void phy_device_free(struct phy_device *phydev);
+#if IS_ENABLED(CONFIG_PHYLIB)
int phy_register_fixup(const char *bus_id, u32 phy_uid, u32 phy_uid_mask,
int (*run)(struct phy_device *));
int phy_register_fixup_for_id(const char *bus_id,
int (*run)(struct phy_device *));
int phy_register_fixup_for_uid(u32 phy_uid, u32 phy_uid_mask,
int (*run)(struct phy_device *));
+#else
+static inline int phy_register_fixup(const char *bus_id, u32 phy_uid, u32 phy_uid_mask,
+ int (*run)(struct phy_device *))
+{
+ return 0;
+}
+static inline int phy_register_fixup_for_id(const char *bus_id,
+ int (*run)(struct phy_device *))
+{
+ return 0;
+}
+static inline int phy_register_fixup_for_uid(u32 phy_uid, u32 phy_uid_mask,
+ int (*run)(struct phy_device *))
+{
+ return 0;
+}
+#endif
int phy_scan_fixups(struct phy_device *phydev);
int phy_init_eee(struct phy_device *phydev, bool clk_stop_enable);
diff --git a/include/linux/usb/ulpi.h b/include/linux/usb/ulpi.h
index 6f033a415ecb..687386298eae 100644
--- a/include/linux/usb/ulpi.h
+++ b/include/linux/usb/ulpi.h
@@ -181,8 +181,16 @@
/*-------------------------------------------------------------------------*/
+#ifdef CONFIG_USB_ULPI
struct usb_phy *otg_ulpi_create(struct usb_phy_io_ops *ops,
unsigned int flags);
+#else
+static inline struct usb_phy *otg_ulpi_create(struct usb_phy_io_ops *ops,
+ unsigned int flags)
+{
+ return NULL;
+}
+#endif
#ifdef CONFIG_USB_ULPI_VIEWPORT
/* access ops for controllers with a viewport register */
diff --git a/sound/soc/Kconfig b/sound/soc/Kconfig
index c5de0a84566f..7af6f7e1ca56 100644
--- a/sound/soc/Kconfig
+++ b/sound/soc/Kconfig
@@ -7,6 +7,7 @@ menuconfig SND_SOC
select SND_PCM
select AC97_BUS if SND_SOC_AC97_BUS
select SND_JACK if INPUT=y || INPUT=SND
+ depends on I2C || !I2C
select REGMAP_I2C if I2C
select REGMAP_SPI if SPI_MASTER
---help---
diff --git a/sound/soc/omap/Kconfig b/sound/soc/omap/Kconfig
index 57a2fa751085..90237682d301 100644
--- a/sound/soc/omap/Kconfig
+++ b/sound/soc/omap/Kconfig
@@ -112,6 +112,7 @@ config SND_OMAP_SOC_OMAP_ABE_TWL6040
config SND_OMAP_SOC_OMAP_HDMI
tristate "SoC Audio support for Texas Instruments OMAP HDMI"
depends on SND_OMAP_SOC && OMAP4_DSS_HDMI && OMAP2_DSS
+ depends on BROKEN
select SND_OMAP_SOC_HDMI
select SND_SOC_OMAP_HDMI_CODEC
select OMAP4_DSS_HDMI_AUDIO