14 #include <linux/module.h>
15 #include <linux/kernel.h>
29 #include <mach/hardware.h>
34 #if defined(CONFIG_SND_SOC) || defined(CONFIG_SND_SOC_MODULE)
37 .
name =
"omap-pcm-audio",
41 static void omap_init_audio(
void)
47 static inline void omap_init_audio(
void) {}
52 #if defined(CONFIG_RTC_DRV_OMAP) || defined(CONFIG_RTC_DRV_OMAP_MODULE)
54 #define OMAP_RTC_BASE 0xfffb4800
56 static struct resource rtc_resources[] = {
76 .resource = rtc_resources,
79 static void omap_init_rtc(
void)
84 static inline void omap_init_rtc(
void) {}
87 static inline void omap_init_mbox(
void) { }
91 #if defined(CONFIG_MMC_OMAP) || defined(CONFIG_MMC_OMAP_MODULE)
96 if (controller_nr == 0) {
115 if (!mmc_controller->
slots[0].nomux)
123 if (!mmc_controller->
slots[1].nomux) {
128 if (mmc_controller->
slots[1].wires == 4) {
147 #define OMAP_MMC_NR_RES 4
152 static int __init omap_mmc_add(
const char *
name,
int id,
unsigned long base,
153 unsigned long size,
unsigned int irq,
154 unsigned rx_req,
unsigned tx_req,
167 res[0].end = base + size - 1;
169 res[1].start =
res[1].end = irq;
171 res[2].start = rx_req;
174 res[3].start = tx_req;
202 for (i = 0; i < nr_controllers; i++) {
203 unsigned long base,
size;
204 unsigned rx_req, tx_req;
205 unsigned int irq = 0;
210 omap1_mmc_mux(mmc_data[i], i);
232 omap_mmc_add(
"mmci-omap", i, base, size, irq,
233 rx_req, tx_req, mmc_data[i]);
242 #if defined(CONFIG_SPI_OMAP_100K) || defined(CONFIG_SPI_OMAP_100K_MODULE)
245 .
name =
"omap1_spi100k",
250 .
name =
"omap1_spi100k",
254 static void omap_init_spi100k(
void)
257 if (omap_spi1.
dev.platform_data)
261 if (omap_spi2.
dev.platform_data)
266 static inline void omap_init_spi100k(
void)
272 #define OMAP1_CAMERA_BASE 0xfffb6800
273 #define OMAP1_CAMERA_IOSIZE 0x1c
275 static struct resource omap1_camera_resources[] = {
290 .name =
"omap1-camera",
293 .dma_mask = &omap1_camera_dma_mask,
296 .num_resources =
ARRAY_SIZE(omap1_camera_resources),
297 .resource = omap1_camera_resources,
309 dev_err(&dev->
dev,
"unable to register device: %d\n", ret);
315 static inline void omap_init_sti(
void) {}
324 #if defined(CONFIG_SPI_OMAP_UWIRE) || defined(CONFIG_SPI_OMAP_UWIRE_MODULE)
326 #define OMAP_UWIRE_BASE 0xfffb3000
328 static struct resource uwire_resources[] = {
330 .
start = OMAP_UWIRE_BASE,
331 .end = OMAP_UWIRE_BASE + 0x20,
337 .
name =
"omap_uwire",
340 .resource = uwire_resources,
343 static void omap_init_uwire(
void)
356 static inline void omap_init_uwire(
void) {}
360 #define OMAP1_RNG_BASE 0xfffe5000
362 static struct resource omap1_rng_resources[] = {
373 .num_resources =
ARRAY_SIZE(omap1_rng_resources),
374 .resource = omap1_rng_resources,
377 static void omap1_init_rng(
void)
407 static int __init omap1_init_devices(
void)
431 #if defined(CONFIG_OMAP_WATCHDOG) || defined(CONFIG_OMAP_WATCHDOG_MODULE)
433 static struct resource wdt_resources[] = {
445 .resource = wdt_resources,
448 static int __init omap_init_wdt(
void)