static int __init omap1_init_devices(void) { if (!cpu_class_is_omap1()) return -ENODEV; omap_sram_init(); omap1_clk_late_init(); /* */ omap_init_mbox(); omap_init_rtc(); omap_init_spi100k(); omap_init_sti(); omap_init_audio(); return 0; }
/* * This gets called after board-specific INIT_MACHINE, and initializes most * on-chip peripherals accessible on this board (except for few like USB): * * (a) Does any "standard config" pin muxing needed. Board-specific * code will have muxed GPIO pins and done "nonstandard" setup; * that code could live in the boot loader. * (b) Populating board-specific platform_data with the data drivers * rely on to handle wiring variations. * (c) Creating platform devices as meaningful on this board and * with this kernel configuration. * * Claiming GPIOs, and setting their direction and initial values, is the * responsibility of the device drivers. So is responding to probe(). * * Board-specific knowledge like creating devices or pin setup is to be * kept out of drivers as much as possible. In particular, pin setup * may be handled by the boot loader, and drivers should expect it will * normally have been done by the time they're probed. */ static int __init omap1_init_devices(void) { if (!cpu_class_is_omap1()) return -ENODEV; omap_sram_init(); omap1_clk_late_init(); /* please keep these calls, and their implementations above, * in alphabetical order so they're easier to sort through. */ omap_init_audio(); omap_init_mbox(); omap_init_rtc(); omap_init_spi100k(); omap_init_sti(); omap_init_uwire(); return 0; }