static void __init ipcam_init(void) { pxa168_set_vdd_iox(VDD_IO0, VDD_IO_3P3V); pxa168_set_vdd_iox(VDD_IO1, VDD_IO_3P3V); pxa168_set_vdd_iox(VDD_IO2, VDD_IO_3P3V); pxa168_set_vdd_iox(VDD_IO3, VDD_IO_3P3V); pxa168_set_vdd_iox(VDD_IO4, VDD_IO_3P3V); pxa168_mfp_set_fastio_drive(MFP_DS02X); mfp_config(ARRAY_AND_SIZE(ipcam_pin_config)); /* on-chip devices */ pxa168_add_uart(3); pxa168_add_ssp(0); pxa168_add_twsi(0, &pwri2c_info, ARRAY_AND_SIZE(ipcam_i2c_board_info)); pxa168_add_twsi(1, &pwri2c_info, ARRAY_AND_SIZE(pwri2c_board_info)); #ifdef CONFIG_USB_GADGET_PXA_U2O pxa168_add_u2o(&ipcam_u2o_info); #endif #ifdef CONFIG_USB_EHCI_PXA_U2H pxa168_add_u2h(&ipcam_u2h_info); #endif #if defined(CONFIG_MMC_PXA_SDH) ipcam_init_mmc(); #endif pxa168_add_mfu(&pxa168_eth_data); /* off-chip devices */ #if defined(CONFIG_PXA168_CAMERA) && defined(CONFIG_VIDEO_OV7740) pxa168_add_cam(); #endif #if defined(CONFIG_VIDEO_OV529) pxa168_add_ov529(&ov529_encoder_data); #endif ipcam_init_spi(); }
static void __init aspenite_init(void) { mfp_config(ARRAY_AND_SIZE(aspenite_pin_config)); pxa168_set_vdd_iox(VDD_IO0, VDD_IO_3P3V); pxa168_set_vdd_iox(VDD_IO1, VDD_IO_3P3V); pxa168_set_vdd_iox(VDD_IO2, VDD_IO_3P3V); pxa168_set_vdd_iox(VDD_IO3, VDD_IO_3P3V); pxa168_set_vdd_iox(VDD_IO4, VDD_IO_3P3V); pxa168_mfp_set_fastio_drive(MFP_DS02X); /* on-chip devices */ pxa168_add_uart(1); #if defined(CONFIG_BT_HCIUART) && defined(CONFIG_WLAN_8688_SDIO) pxa168_add_uart(3); #endif aspenite_add_nand(); pxa168_add_ssp(0); #if defined(CONFIG_MTD_M25P80) && defined(CONFIG_SPI_PXA2XX) pxa168_add_ssp(1); pxa168_add_spi(2, &pxa_ssp_master_info); spi_flashinit(); #endif pxa168_add_twsi(0, &pwri2c_info, ARRAY_AND_SIZE(aspenite_i2c_board_info)); pxa168_add_twsi(1, &pwri2c_info, ARRAY_AND_SIZE(pwri2c_board_info)); if (is_android()) pxa168_add_keypad(&aspenite_android_keypad_info); else pxa168_add_keypad(&aspenite_keypad_info); #ifdef CONFIG_USB_GADGET_PXA_U2O pxa168_add_u2o(&aspenite_u2o_info); #endif #ifdef CONFIG_USB_OTG pxa168_add_u2ootg(&aspenite_u2o_info); pxa168_add_u2oehci(&aspenite_u2o_info); #endif #ifdef CONFIG_USB_EHCI_PXA_U2H pxa168_add_u2h(&aspenite_u2h_info); #endif pxa168_add_mfu(&pxa168_eth_data); #ifdef CONFIG_PCI pxa168_add_pcie(&pxa168_pcie_data); #endif #if defined(CONFIG_MMC_PXA_SDH) pxa168_add_sdh(0, &aspenite_sdh_platform_data_MMC1); #if defined(CONFIG_WLAN_8688_SDIO) pxa168_add_sdh(1, &aspenite_sdh_platform_data_MMC2); #if defined(CONFIG_BT_HCIUART) aspenite_bt_init(); #endif #endif #if defined(CONFIG_MMC3) pxa168_add_sdh(2, &aspenite_sdh_platform_data_MMC3); #endif #endif #if defined(CONFIG_CIR) pxa168_cir_init(); /*init the gpio */ #endif #if defined(CONFIG_PXA168_CF) #if defined(CONFIG_PXA168_CF_USE_GPIO_CARDDETECT) pxa168_cf_init(); #else pxa168_add_cf(); #endif #endif pxa168_add_freq(); if (machine_is_aspenite()) { pxa168_add_fb(&aspenite_lcd_info); pxa168_add_fb_ovly(&aspenite_lcd_ovly_info); } /* off-chip devices */ if (machine_is_zylonite2()) { pxa168_add_fb(&zylonite2_lcd_info); platform_device_register(&smc91x_device); } #if defined(CONFIG_PXA168_CAMERA) pxa168_add_cam(); #endif #if defined(CONFIG_PXA_ICR) pxa168_add_icr(); #endif #if defined(CONFIG_BATTERY_PXA168) pxa168_add_battery(); #endif }