Fix remaining sparse warnings in arch/arm/mach-omap2/. These fixes
mostly consist of:
- tagging appropriate integer<->pointer casts with __force
- marking private structures and functions as static; adding function
prototypes in .h files for public functions
- assigning NULL to pointers, not 0
- adding prototypes for *_init() functions in the appropriate header
files, and getting rid of the corresponding open-coded extern
prototypes in other C files
Also clean up checkpatch issues - this mostly involves converting some
asm/ includes to linux/ includes.
While here, shrink some bitfields in struct omap_pwm_led_platform_data
down to the smallest possible type.
---
arch/arm/mach-omap2/devices.c | 10 +++++-----
arch/arm/mach-omap2/id.c | 9 ++++-----
arch/arm/mach-omap2/io.c | 3 ---
arch/arm/mach-omap2/mux.c | 14 ++++++--------
arch/arm/mach-omap2/serial.c | 21 ++++++++++++---------
arch/arm/mach-omap2/usb-ehci.c | 2 +-
include/asm-arm/arch-omap/board-3430sdp.h | 1 +
include/asm-arm/arch-omap/board.h | 6 +++---
include/asm-arm/arch-omap/cpu.h | 6 +++++-
include/asm-arm/arch-omap/mmc.h | 4 ++++
include/asm-arm/arch-omap/omapfb.h | 1 +
include/asm-arm/arch-omap/system.h | 4 ++--
include/asm-arm/arch-omap/timex.h | 2 ++
include/asm-arm/arch-omap/usb.h | 3 +++
14 files changed, 49 insertions(+), 37 deletions(-)
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c
index 4041fe5..d02e9e5 100644
--- a/arch/arm/mach-omap2/devices.c
+++ b/arch/arm/mach-omap2/devices.c
@@ -13,9 +13,9 @@
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/platform_device.h>
+#include <linux/io.h>
#include <asm/hardware.h>
-#include <asm/io.h>
#include <asm/mach-types.h>
#include <asm/mach/map.h>
@@ -149,7 +149,7 @@ static struct resource omap2_mcspi1_resources[] = {
},
};
-struct platform_device omap2_mcspi1 = {
+static struct platform_device omap2_mcspi1 = {
.name = "omap2_mcspi",
.id = 1,
.num_resources = ARRAY_SIZE(omap2_mcspi1_resources),
@@ -171,7 +171,7 @@ static struct resource omap2_mcspi2_resources[] = {
},
};
-struct platform_device omap2_mcspi2 = {
+static struct platform_device omap2_mcspi2 = {
.name = "omap2_mcspi",
.id = 2,
.num_resources = ARRAY_SIZE(omap2_mcspi2_resources),
@@ -194,7 +194,7 @@ static struct resource omap2_mcspi3_resources[] = {
},
};
-struct platform_device omap2_mcspi3 = {
+static struct platform_device omap2_mcspi3 = {
.name = "omap2_mcspi",
.id = 3,
.num_resources = ARRAY_SIZE(omap2_mcspi3_resources),
@@ -218,7 +218,7 @@ static struct resource omap2_mcspi4_resources[] = {
},
};
-struct platform_device omap2_mcspi4 = {
+static struct platform_device omap2_mcspi4 = {
.name = "omap2_mcspi",
.id = 4,
.num_resources = ARRAY_SIZE(omap2_mcspi4_resources),
diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
index dff4b16..835452b 100644
--- a/arch/arm/mach-omap2/id.c
+++ b/arch/arm/mach-omap2/id.c
@@ -14,18 +14,17 @@
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
-
-#include <asm/io.h>
+#include <linux/io.h>
#include <asm/arch/control.h>
#include <asm/arch/cpu.h>
#if defined(CONFIG_ARCH_OMAP2420)
-#define TAP_BASE io_p2v(0x48014000)
+#define TAP_BASE (__force void __iomem *)io_p2v(0x48014000)
#elif defined(CONFIG_ARCH_OMAP2430)
-#define TAP_BASE io_p2v(0x4900A000)
+#define TAP_BASE (__force void __iomem *)io_p2v(0x4900A000)
#elif defined(CONFIG_ARCH_OMAP34XX)
-#define TAP_BASE io_p2v(0x4830A000)
+#define TAP_BASE (__force void __iomem *)io_p2v(0x4830A000)
#endif
#define OMAP_TAP_IDCODE 0x0204
diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
index 2bb808e..2af0cdc 100644
--- a/arch/arm/mach-omap2/io.c
+++ b/arch/arm/mach-omap2/io.c
@@ -38,9 +38,6 @@
#include <asm/arch/clockdomain.h>
#include "clockdomains.h"
-extern void omap2_check_revision(void);
-extern void omapfb_reserve_sdram(void);
-
/*
* The machine specific code may provide the extra mapping besides the
* default mapping provided here.
diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
index fb639f5..7d56516 100644
--- a/arch/arm/mach-omap2/mux.c
+++ b/arch/arm/mach-omap2/mux.c
@@ -26,7 +26,7 @@
#include <linux/module.h>
#include <linux/init.h>
#include <asm/system.h>
-#include <asm/io.h>
+#include <linux/io.h>
#include <linux/spinlock.h>
#include <asm/arch/control.h>
@@ -365,7 +365,7 @@ MUX_CFG_34XX("AA12_3430_USB3HS_TLL_D7", 0x172,
#endif /* CONFIG_ARCH_OMAP34XX */
#if defined(CONFIG_OMAP_MUX_DEBUG) || defined(CONFIG_OMAP_MUX_WARNINGS)
-void __init_or_module omap2_cfg_debug(const struct pin_config *cfg, u16 reg)
+static void __init_or_module omap2_cfg_debug(const struct pin_config *cfg, u16
reg)
{
u16 orig;
u8 warn = 0, debug = 0;
@@ -409,11 +409,11 @@ int __init_or_module omap24xx_cfg_reg(const struct
pin_config *cfg)
return 0;
}
#else
-#define omap24xx_cfg_reg 0
+#define omap24xx_cfg_reg NULL
#endif
#ifdef CONFIG_ARCH_OMAP34XX
-int __init_or_module omap34xx_cfg_reg(const struct pin_config *cfg)
+static int __init_or_module omap34xx_cfg_reg(const struct pin_config *cfg)
{
static DEFINE_SPINLOCK(mux_spin_lock);
unsigned long flags;
@@ -428,7 +428,7 @@ int __init_or_module omap34xx_cfg_reg(const struct
pin_config *cfg)
return 0;
}
#else
-#define omap34xx_cfg_reg 0
+#define omap34xx_cfg_reg NULL
#endif
int __init omap2_mux_init(void)
@@ -437,9 +437,7 @@ int __init omap2_mux_init(void)
arch_mux_cfg.pins = omap24xx_pins;
arch_mux_cfg.size = OMAP24XX_PINS_SZ;
arch_mux_cfg.cfg_reg = omap24xx_cfg_reg;
- }
-
- if (cpu_is_omap34xx()) {
+ } else if (cpu_is_omap34xx()) {
arch_mux_cfg.pins = omap34xx_pins;
arch_mux_cfg.size = OMAP34XX_PINS_SZ;
arch_mux_cfg.cfg_reg = omap34xx_cfg_reg;
diff --git a/arch/arm/mach-omap2/serial.c b/arch/arm/mach-omap2/serial.c
index bb79f43..c953c85 100644
--- a/arch/arm/mach-omap2/serial.c
+++ b/arch/arm/mach-omap2/serial.c
@@ -28,7 +28,7 @@ static struct clk *uart_fck[OMAP_MAX_NR_PORTS];
static struct plat_serial8250_port serial_platform_data[] = {
{
- .membase = (char *)IO_ADDRESS(OMAP_UART1_BASE),
+ .membase = (__force void __iomem
*)IO_ADDRESS(OMAP_UART1_BASE),
.mapbase = (unsigned long)OMAP_UART1_BASE,
.irq = 72,
.flags = UPF_BOOT_AUTOCONF,
@@ -36,7 +36,7 @@ static struct plat_serial8250_port serial_platform_data[] = {
.regshift = 2,
.uartclk = OMAP24XX_BASE_BAUD * 16,
}, {
- .membase = (char *)IO_ADDRESS(OMAP_UART2_BASE),
+ .membase = (__force void __iomem
*)IO_ADDRESS(OMAP_UART2_BASE),
.mapbase = (unsigned long)OMAP_UART2_BASE,
.irq = 73,
.flags = UPF_BOOT_AUTOCONF,
@@ -44,7 +44,7 @@ static struct plat_serial8250_port serial_platform_data[] = {
.regshift = 2,
.uartclk = OMAP24XX_BASE_BAUD * 16,
}, {
- .membase = (char *)IO_ADDRESS(OMAP_UART3_BASE),
+ .membase = (__force void __iomem
*)IO_ADDRESS(OMAP_UART3_BASE),
.mapbase = (unsigned long)OMAP_UART3_BASE,
.irq = 74,
.flags = UPF_BOOT_AUTOCONF,
@@ -67,7 +67,7 @@ static inline void serial_write_reg(struct
plat_serial8250_port *p, int offset,
int value)
{
offset <<= p->regshift;
- __raw_writeb(value, (unsigned long)(p->membase + offset));
+ __raw_writeb(value, p->membase + offset);
}
/*
@@ -87,12 +87,15 @@ void omap_serial_enable_clocks(int enable)
{
int i;
for (i = 0; i < OMAP_MAX_NR_PORTS; i++) {
- if (uart_ick[i])
- enable ? clk_enable(uart_ick[i]) :
+ if (uart_ick[i] && uart_fck[i]) {
+ if (enable) {
+ clk_enable(uart_ick[i]);
+ clk_enable(uart_fck[i]);
+ } else {
clk_disable(uart_ick[i]);
- if (uart_fck[i])
- enable ? clk_enable(uart_fck[i]) :
clk_disable(uart_fck[i]);
+ }
+ }
}
}
@@ -117,7 +120,7 @@ void __init omap_serial_init(void)
struct plat_serial8250_port *p = serial_platform_data + i;
if (!(info->enabled_uarts & (1 << i))) {
- p->membase = 0;
+ p->membase = NULL;
p->mapbase = 0;
continue;
}
diff --git a/arch/arm/mach-omap2/usb-ehci.c b/arch/arm/mach-omap2/usb-ehci.c
index e48e773..e178a0d 100644
--- a/arch/arm/mach-omap2/usb-ehci.c
+++ b/arch/arm/mach-omap2/usb-ehci.c
@@ -48,7 +48,7 @@ static struct platform_device ehci_device = {
.dev = {
.dma_mask = &ehci_dmamask,
.coherent_dma_mask = 0xffffffff,
- .platform_data = 0x0,
+ .platform_data = NULL,
},
.num_resources = ARRAY_SIZE(ehci_resources),
.resource = ehci_resources,
diff --git a/include/asm-arm/arch-omap/board-3430sdp.h
b/include/asm-arm/arch-omap/board-3430sdp.h
index 8c166c2..d583008 100644
--- a/include/asm-arm/arch-omap/board-3430sdp.h
+++ b/include/asm-arm/arch-omap/board-3430sdp.h
@@ -30,6 +30,7 @@
#define __ASM_ARCH_OMAP_3430SDP_H
extern void sdp3430_usb_init(void);
+extern void sdp3430_flash_init(void);
#define DEBUG_BASE 0x08000000 /* debug board */
diff --git a/include/asm-arm/arch-omap/board.h
b/include/asm-arm/arch-omap/board.h
index 3763f3e..0783e60 100644
--- a/include/asm-arm/arch-omap/board.h
+++ b/include/asm-arm/arch-omap/board.h
@@ -128,9 +128,9 @@ struct omap_pwm_led_platform_data {
struct omap_gpio_switch_config {
char name[12];
u16 gpio;
- int flags:4;
- int type:4;
- int key_code:24; /* Linux key code */
+ u8 flags:4;
+ u8 type:4;
+ unsigned int key_code:24; /* Linux key code */
};
struct omap_uart_config {
diff --git a/include/asm-arm/arch-omap/cpu.h b/include/asm-arm/arch-omap/cpu.h
index 2626fbd..0f1cf78 100644
--- a/include/asm-arm/arch-omap/cpu.h
+++ b/include/asm-arm/arch-omap/cpu.h
@@ -26,6 +26,8 @@
#ifndef __ASM_ARCH_OMAP_CPU_H
#define __ASM_ARCH_OMAP_CPU_H
+#include <linux/init.h>
+
struct omap_chip_id {
u8 oc;
};
@@ -395,6 +397,8 @@ int omap_chip_is(struct omap_chip_id oci);
#define is_device_type_gp() (get_device_type() == DEVICE_TYPE_GP)
#define is_device_type_bad() (get_device_type() == DEVICE_TYPE_BAD)
-#endif
+void __init omap2_check_revision(void);
+
+#endif /* defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3) */
#endif
diff --git a/include/asm-arm/arch-omap/mmc.h b/include/asm-arm/arch-omap/mmc.h
index 6dff38e..55eb955 100644
--- a/include/asm-arm/arch-omap/mmc.h
+++ b/include/asm-arm/arch-omap/mmc.h
@@ -71,4 +71,8 @@ extern void omap_set_mmc_info(int host, const struct
omap_mmc_platform_data *inf
/* called from board-specific card detection service routine */
extern void omap_mmc_notify_cover_event(struct device *dev, int slot, int
is_closed);
+#if defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE)
+void __init hsmmc_init(void);
+#endif
+
#endif
diff --git a/include/asm-arm/arch-omap/omapfb.h
b/include/asm-arm/arch-omap/omapfb.h
index 55132ad..722eeec 100644
--- a/include/asm-arm/arch-omap/omapfb.h
+++ b/include/asm-arm/arch-omap/omapfb.h
@@ -376,6 +376,7 @@ extern struct lcd_ctrl omap1_lcd_ctrl;
extern struct lcd_ctrl omap2_disp_ctrl;
#endif
+extern void omapfb_reserve_sdram(void);
extern void omapfb_register_panel(struct lcd_panel *panel);
extern void omapfb_write_first_pixel(struct omapfb_device *fbdev, u16 pixval);
extern void omapfb_notify_clients(struct omapfb_device *fbdev,
diff --git a/include/asm-arm/arch-omap/system.h
b/include/asm-arm/arch-omap/system.h
index 5bdac69..4faeb9f 100644
--- a/include/asm-arm/arch-omap/system.h
+++ b/include/asm-arm/arch-omap/system.h
@@ -9,12 +9,12 @@
#include <asm/mach-types.h>
#include <asm/hardware.h>
+#include <asm/arch/prcm.h>
+
#ifndef CONFIG_MACH_VOICEBLUE
#define voiceblue_reset() do {} while (0)
#endif
-extern void omap_prcm_arch_reset(char mode);
-
static inline void arch_idle(void)
{
cpu_do_idle();
diff --git a/include/asm-arm/arch-omap/timex.h
b/include/asm-arm/arch-omap/timex.h
index 21f2e36..f1808cd 100644
--- a/include/asm-arm/arch-omap/timex.h
+++ b/include/asm-arm/arch-omap/timex.h
@@ -38,4 +38,6 @@
#define CLOCK_TICK_RATE (HZ * 100000UL)
#endif
+extern struct sys_timer omap_timer;
+
#endif /* __ASM_ARCH_OMAP_TIMEX_H */
diff --git a/include/asm-arm/arch-omap/usb.h b/include/asm-arm/arch-omap/usb.h
index 2147d18..580a718 100644
--- a/include/asm-arm/arch-omap/usb.h
+++ b/include/asm-arm/arch-omap/usb.h
@@ -27,6 +27,9 @@
#define UDC_BASE OMAP2_UDC_BASE
#define OMAP_OHCI_BASE OMAP2_OHCI_BASE
+void __init usb_musb_init(void);
+void __init usb_ehci_init(void);
+
#endif
/*-------------------------------------------------------------------------*/
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html