static int __init dalmore_touch_init(void) { tegra_clk_init_from_table(touch_clk_init_table); if (display_board_info.board_id == BOARD_E1582) rm31080ts_dalmore_data.platform_id = RM_PLATFORM_P005; else rm31080ts_dalmore_data.platform_id = RM_PLATFORM_D010; mdelay(20); rm31080a_dalmore_spi_board[0].irq = gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI); touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI, TOUCH_GPIO_RST_RAYDIUM_SPI, &rm31080ts_dalmore_data, &rm31080a_dalmore_spi_board[0], ARRAY_SIZE(rm31080a_dalmore_spi_board)); return 0; }
static void __init tegra_grouper_init(void) { grouper_misc_init(); tegra_thermal_init(&thermal_data); tegra_clk_init_from_table(grouper_clk_init_table); grouper_pinmux_init(); grouper_misc_reset(); grouper_booting_info(); grouper_i2c_init(); grouper_spi_init(); grouper_usb_init(); #ifdef CONFIG_CPU_FREQ_GOV_ONDEMAND_2_PHASE set_two_phase_freq(1000000); #endif #ifdef CONFIG_TEGRA_EDP_LIMITS if (grouper_query_pmic_id()) grouper_ti_edp_init(); else grouper_edp_init(); #endif grouper_uart_init(); grouper_audio_init(); platform_add_devices(grouper_devices, ARRAY_SIZE(grouper_devices)); tegra_ram_console_debug_init(); grouper_sdhci_init(); if (grouper_query_pmic_id()) { grouper_ti_regulator_init(); grouper_ti_suspend_init(); } else { grouper_regulator_init(); grouper_suspend_init(); } grouper_touch_init(); grouper_gps_init(); grouper_modem_init(); grouper_keys_init(); grouper_panel_init(); grouper_nfc_init(); grouper_sensors_init(); grouper_setup_bluesleep(); grouper_pins_state_init(); grouper_emc_init(); // tegra_release_bootloader_fb(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif }
void __init tegra_init_early(void) { #ifndef CONFIG_SMP /* For SMP system, initializing the reset handler here is too late. For non-SMP systems, the function that calls the reset handler initializer is not called, so do it here for non-SMP. */ tegra_cpu_reset_handler_init(); #endif tegra_init_fuse(); tegra_gpio_resume_init(); tegra_init_clock(); tegra_init_pinmux(); tegra_clk_init_from_table(common_clk_init_table); tegra_init_power(); tegra_init_cache(true); tegra_init_ahb_gizmo_settings(); }
static void __init tegra_p1852_init(void) { tegra_init_board_info(); tegra_clk_init_from_table(p1852_clk_init_table); p1852_pinmux_init(); p1852_i2c_init(); p1852_i2s_audio_init(); p1852_gpio_init(); p1852_uart_init(); p1852_usb_init(); p1852_sdhci_init(); p1852_spi_init(); platform_add_devices(p1852_devices, ARRAY_SIZE(p1852_devices)); p1852_panel_init(); p1852_nor_init(); p1852_pcie_init(); }
static int __init tegratab_touch_init(void) { struct board_info board_info; tegra_get_display_board_info(&board_info); tegra_clk_init_from_table(touch_clk_init_table); rm31080ts_tegratab_data.platform_id = RM_PLATFORM_D010; mdelay(20); rm31080a_tegratab_spi_board[0].irq = gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI); touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI, TOUCH_GPIO_RST_RAYDIUM_SPI, &rm31080ts_tegratab_data, &rm31080a_tegratab_spi_board[0], ARRAY_SIZE(rm31080a_tegratab_spi_board)); return 0; }
static void __init tegra_cardhu_init(void) { tegra_thermal_init(&thermal_data, throttle_list, ARRAY_SIZE(throttle_list)); tegra_clk_init_from_table(cardhu_clk_init_table); cardhu_pinmux_init(); cardhu_misc_init(); tegra_booting_info(); cardhu_i2c_init(); cardhu_spi_init(); cardhu_usb_init(); #ifdef CONFIG_TEGRA_EDP_LIMITS cardhu_edp_init(); #endif cardhu_uart_init(); platform_add_devices(cardhu_devices, ARRAY_SIZE(cardhu_devices)); tegra_ram_console_debug_init(); cardhu_sdhci_init(); cardhu_regulator_init(); cardhu_dtv_init(); cardhu_suspend_init(); cardhu_touch_init(); cardhu_gps_init(); cardhu_modem_init(); cardhu_keys_init(); cardhu_panel_init(); //cardhu_pmon_init(); cardhu_sensors_init(); //cardhu_audio_init(); cardhu_setup_bluesleep(); cardhu_sata_init(); //audio_wired_jack_init(); cardhu_pins_state_init(); cardhu_emc_init(); tegra_release_bootloader_fb(); #ifdef CONFIG_PN544_NFC cardhu_nfc_init(); #endif //cardhu_pci_init(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif //tegra_serial_debug_init(TEGRA_UARTD_BASE, INT_WDT_CPU, NULL, -1, -1); }
static void __init tegra_roth_init(void) { tegra_clk_init_from_table(roth_clk_init_table); tegra_clk_vefify_parents(); tegra_soc_device_init("roth"); tegra_enable_pinmux(); roth_pinmux_init(); roth_i2c_init(); roth_spi_init(); roth_usb_init(); roth_uart_init(); roth_led_init(); roth_audio_init(); platform_add_devices(roth_devices, ARRAY_SIZE(roth_devices)); tegra_ram_console_debug_init(); tegra_io_dpd_init(); roth_regulator_init(); roth_sdhci_init(); roth_suspend_init(); roth_emc_init(); roth_edp_init(); roth_touch_init(); /* roth will pass a null board id to panel_init */ roth_panel_init(0); roth_kbc_init(); roth_pmon_init(); #ifdef CONFIG_BT_BLUESLEEP roth_setup_bluesleep(); roth_setup_bt_rfkill(); #elif defined CONFIG_BLUEDROID_PM roth_setup_bluedroid_pm(); #endif tegra_release_bootloader_fb(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif tegra_serial_debug_init(TEGRA_UARTD_BASE, INT_WDT_CPU, NULL, -1, -1); roth_sensors_init(); roth_soctherm_init(); roth_fan_init(); roth_revision_init(); roth_issp_init(); /* Enable HDMI hotplug as a wakesource */ tegra_set_wake_gpio(4, TEGRA_GPIO_HDMI_HPD); }
static void __init tegra_dalmore_init(void) { struct board_info board_info; tegra_get_display_board_info(&board_info); tegra_clk_init_from_table(dalmore_clk_init_table); tegra_clk_verify_parents(); tegra_soc_device_init("dalmore"); tegra_enable_pinmux(); dalmore_pinmux_init(); dalmore_i2c_init(); dalmore_spi_init(); dalmore_usb_init(); dalmore_xusb_init(); dalmore_uart_init(); dalmore_audio_init(); platform_add_devices(dalmore_devices, ARRAY_SIZE(dalmore_devices)); tegra_ram_console_debug_init(); tegra_io_dpd_init(); dalmore_regulator_init(); dalmore_sdhci_init(); dalmore_suspend_init(); dalmore_emc_init(); dalmore_edp_init(); dalmore_touch_init(); if (board_info.board_id == BOARD_E1582) roth_panel_init(board_info.board_id); else dalmore_panel_init(); dalmore_kbc_init(); dalmore_pmon_init(); #if defined(CONFIG_BT_BLUESLEEP) || defined(CONFIG_BT_BLUESLEEP_MODULE) dalmore_setup_bluesleep(); dalmore_setup_bt_rfkill(); #elif defined CONFIG_BLUEDROID_PM dalmore_setup_bluedroid_pm(); #endif dalmore_modem_init(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif dalmore_sensors_init(); dalmore_soctherm_init(); tegra_register_fuse(); }
static void __init tegra_enterprise_init(void) { tegra_thermal_init(&thermal_data, throttle_list, ARRAY_SIZE(throttle_list)); tegra_clk_init_from_table(enterprise_clk_init_table); enterprise_pinmux_init(); enterprise_i2c_init(); enterprise_uart_init(); enterprise_usb_init(); platform_add_devices(enterprise_devices, ARRAY_SIZE(enterprise_devices)); tegra_ram_console_debug_init(); enterprise_regulator_init(); tegra_io_dpd_init(); enterprise_sdhci_init(); #ifdef CONFIG_TEGRA_EDP_LIMITS enterprise_edp_init(); #endif /* enterprise_kbc_init(); */ /* ZTE: modified by pengtao for gpio-key 20120528*/ zteenterprise_keys_init(); // ZTE: added by pengtao for gpio-key 20120528 enterprise_touch_init(); enterprise_audio_init(); enterprise_gps_init(); enterprise_baseband_init(); enterprise_panel_init(); enterprise_setup_bluesleep(); enterprise_emc_init(); enterprise_sensors_init(); enterprise_suspend_init(); enterprise_bpc_mgmt_init(); tegra_release_bootloader_fb(); enterprise_nfc_init(); batt_init(); #ifdef CONFIG_ZTE_CMMB enterprise_cmmb_init(); #endif #ifndef CONFIG_ZTE_CMMB cmmb_gpio_init(); #endif #ifdef CONFIG_SIRF_GPS create_sirf_proc_file(); #endif zte_hver_proc_init(); }
static void __init tegra_cardhu_init(void) { tegra_thermal_init(&thermal_data); tegra_clk_init_from_table(cardhu_clk_init_table); cardhu_pinmux_init(); cardhu_misc_init(); tegra_booting_info( ); cardhu_i2c_init(); cardhu_spi_init(); cardhu_usb_init(); #ifdef CONFIG_TEGRA_EDP_LIMITS cardhu_edp_init(); #endif cardhu_uart_init(); snprintf(cardhu_chipid, sizeof(cardhu_chipid), "%016llx", tegra_chip_uid()); cardhu_tsensor_init(); platform_add_devices(cardhu_devices, ARRAY_SIZE(cardhu_devices)); cardhu_sdhci_init(); cardhu_regulator_init(); cardhu_gpio_switch_regulator_init(); cardhu_suspend_init(); cardhu_power_off_init(); cardhu_touch_init(); cardhu_gps_init(); cardhu_modem_init(); cardhu_kbc_init(); cardhu_scroll_init(); cardhu_keys_init(); cardhu_panel_init(); cardhu_pmon_init(); cardhu_sensors_init(); cardhu_setup_bluesleep(); cardhu_sata_init(); //audio_wired_jack_init(); cardhu_pins_state_init(); cardhu_emc_init(); tegra_release_bootloader_fb(); cardhu_nfc_init(); cardhu_pci_init(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif }
static void __init tegra_pluto_init(void) { pluto_sysedp_init(); tegra_clk_init_from_table(pluto_clk_init_table); tegra_clk_verify_parents(); tegra_soc_device_init("tegra_pluto"); tegra_enable_pinmux(); pluto_pinmux_init(); pluto_i2c_init(); pluto_spi_init(); pluto_usb_init(); pluto_uart_init(); pluto_audio_init(); platform_add_devices(pluto_devices, ARRAY_SIZE(pluto_devices)); tegra_ram_console_debug_init(); tegra_io_dpd_init(); pluto_sdhci_init(); pluto_regulator_init(); pluto_dtv_init(); pluto_suspend_init(); pluto_touch_init(); pluto_emc_init(); pluto_edp_init(); pluto_panel_init(); pluto_pmon_init(); pluto_kbc_init(); #ifdef CONFIG_BT_BLUESLEEP pluto_setup_bluesleep(); pluto_setup_bt_rfkill(); #elif defined CONFIG_BLUEDROID_PM pluto_setup_bluedroid_pm(); #endif pluto_modem_init(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif pluto_sensors_init(); tegra_serial_debug_init(TEGRA_UARTD_BASE, INT_WDT_CPU, NULL, -1, -1); pluto_soctherm_init(); tegra_register_fuse(); pluto_sysedp_core_init(); pluto_sysedp_psydepl_init(); }
static void __init tegra_aruba_init(void) { tegra_clk_init_from_table(aruba_clk_init_table); aruba_pinmux_init(); platform_add_devices(aruba_devices, ARRAY_SIZE(aruba_devices)); aruba_sdhci_init(); aruba_i2c_init(); aruba_regulator_init(); aruba_touch_init(); aruba_keys_init(); aruba_usb_init(); aruba_panel_init(); aruba_sensors_init(); aruba_bt_rfkill(); aruba_sata_init(); tegra_release_bootloader_fb(); }
static int __init ardbeg_touch_init(void) { tegra_get_board_info(&board_info); if (tegra_get_touch_vendor_id() == MAXIM_TOUCH) { pr_info("%s init maxim touch\n", __func__); #if defined(CONFIG_TOUCHSCREEN_MAXIM_STI) || \ defined(CONFIG_TOUCHSCREEN_MAXIM_STI_MODULE) if (tegra_get_touch_panel_id() == TOUCHPANEL_TN7) maxim_sti_spi_board.platform_data = &maxim_sti_pdata_rd; (void)touch_init_maxim_sti(&maxim_sti_spi_board); #endif } else if (tegra_get_touch_vendor_id() == RAYDIUM_TOUCH) { pr_info("%s init raydium touch\n", __func__); tegra_clk_init_from_table(touch_clk_init_table); if (board_info.board_id == BOARD_PM374) { rm31080a_norrin_spi_board[0].irq = gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI); touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI, TOUCH_GPIO_RST_RAYDIUM_SPI, &rm31080ts_norrin_data, &rm31080a_norrin_spi_board[0], ARRAY_SIZE(rm31080a_norrin_spi_board)); } else if (board_info.board_id == BOARD_P1761) { rm31080a_ardbeg_spi_board[0].irq = gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI); touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI, TOUCH_GPIO_RST_RAYDIUM_SPI, &rm31080ts_tn8_data, &rm31080a_tn8_spi_board[0], ARRAY_SIZE(rm31080a_tn8_spi_board)); } else { rm31080a_ardbeg_spi_board[0].irq = gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI); touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI, TOUCH_GPIO_RST_RAYDIUM_SPI, &rm31080ts_ardbeg_data, &rm31080a_ardbeg_spi_board[0], ARRAY_SIZE(rm31080a_ardbeg_spi_board)); } } return 0; }
static void __init tegra_harmony_init(void) { tegra_init_suspend(&harmony_suspend); harmony_pinmux_init(); tegra_clk_init_from_table(harmony_clk_init_table); tegra_sdhci_device1.dev.platform_data = &sdhci_pdata1; tegra_sdhci_device2.dev.platform_data = &sdhci_pdata2; tegra_sdhci_device4.dev.platform_data = &sdhci_pdata4; tegra_ehci3_device.dev.platform_data = &tegra_ehci_pdata; platform_add_devices(harmony_devices, ARRAY_SIZE(harmony_devices)); harmony_power_init(); harmony_panel_init(); harmony_i2c_init(); }
static void __init tegra_ventana_init(void) { struct board_info BoardInfo; tegra_clk_init_from_table(ventana_clk_init_table); ventana_pinmux_init(); ventana_i2c_init(); ventana_uart_init(); tegra_ehci2_device.dev.platform_data = &ventana_ehci2_ulpi_platform_data; platform_add_devices(ventana_devices, ARRAY_SIZE(ventana_devices)); tegra_ram_console_debug_init(); ventana_sdhci_init(); ventana_charge_init(); ventana_regulator_init(); ventana_charger_init(); tegra_get_board_info(&BoardInfo); /* boards with sku > 0 have atmel touch panels */ if (BoardInfo.sku) { pr_info("Initializing Atmel touch driver\n"); ventana_touch_init_atmel(); } else { pr_info("Initializing Panjit touch driver\n"); ventana_touch_init_panjit(); } #ifdef CONFIG_KEYBOARD_GPIO ventana_keys_init(); #endif ventana_usb_init(); ventana_gps_init(); ventana_panel_init(); ventana_sensors_init(); ventana_bt_rfkill(); ventana_power_off_init(); ventana_emc_init(); ventana_setup_bluesleep(); tegra_release_bootloader_fb(); }
static void __init tegra_macallan_init(void) { struct board_info board_info; macallan_sysedp_init(); tegra_get_display_board_info(&board_info); tegra_clk_init_from_table(macallan_clk_init_table); tegra_clk_verify_parents(); tegra_soc_device_init("macallan"); tegra_enable_pinmux(); macallan_pinmux_init(); macallan_i2c_init(); macallan_spi_init(); macallan_usb_init(); macallan_uart_init(); macallan_audio_init(); platform_add_devices(macallan_devices, ARRAY_SIZE(macallan_devices)); tegra_ram_console_debug_init(); tegra_io_dpd_init(); macallan_regulator_init(); macallan_sdhci_init(); macallan_suspend_init(); macallan_emc_init(); macallan_edp_init(); macallan_touch_init(); macallan_panel_init(); macallan_kbc_init(); macallan_pmon_init(); #if defined CONFIG_TI_ST || defined CONFIG_TI_ST_MODULE macallan_bt_st(); macallan_tegra_setup_st_host_wake(); #endif macallan_modem_init(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif macallan_sensors_init(); macallan_soctherm_init(); tegra_register_fuse(); macallan_sysedp_core_init(); macallan_sysedp_psydepl_init(); }
static void __init tegra_ardbeg_early_init(void) { ardbeg_sysedp_init(); tegra_clk_init_from_table(ardbeg_clk_init_table); tegra_clk_verify_parents(); if (of_machine_is_compatible("nvidia,laguna")) tegra_soc_device_init("laguna"); else if (of_machine_is_compatible("nvidia,tn8")) tegra_soc_device_init("tn8"); else if (of_machine_is_compatible("nvidia,ardbeg_sata")) tegra_soc_device_init("ardbeg_sata"); else if (of_machine_is_compatible("nvidia,norrin")) tegra_soc_device_init("norrin"); else if (of_machine_is_compatible("nvidia,bowmore")) tegra_soc_device_init("bowmore"); else if (of_machine_is_compatible("nvidia,loki")) tegra_soc_device_init("loki"); else tegra_soc_device_init("ardbeg"); }
static void __init acer_t20_init(void) { tegra_clk_init_from_table(ventana_clk_init_table); ventana_pinmux_init(); ventana_i2c_init(); ventana_uart_init(); tegra_ehci2_device.dev.platform_data = &ventana_ehci2_ulpi_platform_data; platform_add_devices(ventana_devices, ARRAY_SIZE(ventana_devices)); ventana_sdhci_init(); acer_t20_charge_init(); acer_t20_regulator_init(); #ifdef CONFIG_TOUCHSCREEN_ATMEL_768E touch_init_atmel_mXT768e(); #endif #ifdef CONFIG_KEYBOARD_GPIO picasso_keys_init(); #endif #ifdef CONFIG_ROTATELOCK rotationlock_init(); #endif acer_board_info(); ventana_usb_init(); ventana_gps_init(); ventana_panel_init(); ventana_sensors_init(); ventana_bt_rfkill(); ventana_power_off_init(); acer_t20_emc_init(); ventana_setup_bluesleep(); #if defined(CONFIG_ACER_VIBRATOR) vib_init(); #endif tegra_release_bootloader_fb(); }
static void __init tegra_roth_init(void) { tegra_clk_init_from_table(roth_clk_init_table); tegra_clk_verify_parents(); tegra_soc_device_init("roth"); roth_i2c_init(); roth_usb_init(); roth_uart_init(); roth_led_init(); roth_audio_init(); platform_add_devices(roth_devices, ARRAY_SIZE(roth_devices)); tegra_io_dpd_init(); roth_regulator_init(); roth_sdhci_init(); roth_suspend_init(); roth_emc_init(); roth_edp_init(); isomgr_init(); roth_touch_init(); /* roth will pass a null board id to panel_init */ roth_panel_init(0); roth_kbc_init(); roth_pmon_init(); #ifdef CONFIG_BT_BLUESLEEP roth_setup_bluesleep(); roth_setup_bt_rfkill(); #elif defined CONFIG_BLUEDROID_PM roth_setup_bluedroid_pm(); #endif #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif tegra_serial_debug_init(TEGRA_UARTD_BASE, INT_WDT_CPU, NULL, -1, -1); roth_sensors_init(); roth_soctherm_init(); roth_fan_init(); tegra_register_fuse(); roth_issp_init(); }
static int __init tegranote7c_touch_init(void) { if (get_androidboot_mode_charger()) return 0; #if defined(CONFIG_TOUCHSCREEN_MAXIM_STI) || \ defined(CONFIG_TOUCHSCREEN_MAXIM_STI_MODULE) (void)touch_init_maxim_sti(&maxim_sti_spi_board); #else tegra_clk_init_from_table(touch_clk_init_table); rm31080ts_tegranote7c_data.platform_id = RM_PLATFORM_D010; mdelay(20); rm31080a_tegranote7c_spi_board[0].irq = gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI); touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI, TOUCH_GPIO_RST_RAYDIUM_SPI, &rm31080ts_tegranote7c_data, &rm31080a_tegranote7c_spi_board[0], ARRAY_SIZE(rm31080a_tegranote7c_spi_board)); #endif return 0; }
static void __init tegra_whistler_init(void) { int modem_id = tegra_get_modem_id(); tegra_clk_init_from_table(whistler_clk_init_table); whistler_pinmux_init(); whistler_i2c_init(); whistler_uart_init(); platform_add_devices(whistler_devices, ARRAY_SIZE(whistler_devices)); tegra_ram_console_debug_init(); whistler_sdhci_init(); whistler_regulator_init(); whistler_panel_init(); whistler_sensors_init(); whistler_touch_init(); whistler_kbc_init(); whistler_usb_init(); whistler_emc_init(); if (modem_id == 0x1) whistler_baseband_init(); whistler_setup_bluesleep(); tegra_release_bootloader_fb(); }
static void __init tegra_lx_init(void) { lx_setup_reboot(); tegra_thermal_init(&thermal_data, throttle_list, ARRAY_SIZE(throttle_list)); tegra_clk_init_from_table(lx_clk_init_table); lx_pinmux_init(); lx_uart_init(); lx_i2c_init(); lx_regulator_init(); lx_sdhci_init(); lx_usb_init(); platform_add_devices(lx_devices, ARRAY_SIZE(lx_devices)); tegra_ram_console_debug_init(); #ifdef CONFIG_TEGRA_EDP_LIMITS lx_edp_init(); #endif lx_kbc_init(); //lx_touch_init(); lx_gps_init(); if(is_tegra_bootmode()) { lx_baseband_init(); } lx_panel_init(); lx_audio_init(); #if defined(CONFIG_BCM4330_RFKILL) lx_bt_rfkill(); #endif //lx_setup_bluesleep(); lx_emc_init(); lx_sensors_init(); lx_suspend_init(); lx_bpc_mgmt_init(); tegra_release_bootloader_fb(); lx_sensor_input_init(); tegra_serial_debug_init(TEGRA_UARTD_BASE, INT_WDT_CPU, NULL, -1, -1); }
static void __init tegra_dt_init(void) { struct device_node *node; node = of_find_matching_node_by_address(NULL, tegra_dt_gic_match, TEGRA_ARM_INT_DIST_BASE); if (node) irq_domain_add_simple(node, INT_GIC_BASE); tegra_clk_init_from_table(tegra_dt_clk_init_table); if (of_machine_is_compatible("nvidia,harmony")) harmony_pinmux_init(); else if (of_machine_is_compatible("nvidia,seaboard")) seaboard_pinmux_init(); /* * Finished with the static registrations now; fill in the missing * devices */ of_platform_populate(NULL, tegra_dt_match_table, tegra20_auxdata_lookup, NULL); }
static void __init tegra_cardhu_init(void) { tegra_thermal_init(&thermal_data); tegra_clk_init_from_table(cardhu_clk_init_table); cardhu_pinmux_init(); cardhu_i2c_init(); cardhu_spi_init(); cardhu_usb_init(); #ifdef CONFIG_TEGRA_EDP_LIMITS cardhu_edp_init(); #endif cardhu_uart_init(); platform_add_devices(cardhu_devices, ARRAY_SIZE(cardhu_devices)); tegra_ram_console_debug_init(); cardhu_sdhci_init(); cardhu_regulator_init(); cardhu_dtv_init(); cardhu_suspend_init(); cardhu_touch_init(); cardhu_gps_init(); cardhu_modem_init(); cardhu_kbc_init(); cardhu_scroll_init(); cardhu_keys_init(); cardhu_panel_init(); cardhu_pmon_init(); cardhu_sensors_init(); cardhu_setup_bluesleep(); cardhu_sata_init(); //audio_wired_jack_init(); cardhu_pins_state_init(); cardhu_emc_init(); tegra_release_bootloader_fb(); cardhu_nfc_init(); cardhu_pci_init(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif }
void __init tegra_init_early(void) { #ifndef CONFIG_SMP /* For SMP system, initializing the reset handler here is too late. For non-SMP systems, the function that calls the reset handler initializer is not called, so do it here for non-SMP. */ tegra_cpu_reset_handler_init(); #endif /*tegra_fbmem = 800@18012000*/ tegra_bootloader_fb_size = 819200; tegra_bootloader_fb_start = 0x18012000; tegra_init_fuse(); tegra_init_clock(); tegra_gpio_resume_init(); tegra_init_pinmux(); tegra_clk_init_from_table(common_clk_init_table); tegra_init_power(); tegra_init_cache(true); tegra_init_ahb_gizmo_settings(); tegra_init_debug_uart_rate(); }
static void __init tegra_dt_init(void) { int i; tegra_clk_init_from_table(tegra_dt_clk_init_table); for (i = 0; i < ARRAY_SIZE(pinmux_configs); i++) { if (of_machine_is_compatible(pinmux_configs[i].machine)) { pinmux_configs[i].init(); break; } } WARN(i == ARRAY_SIZE(pinmux_configs), "Unknown platform! Pinmuxing not initialized\n"); /* * Finished with the static registrations now; fill in the missing * devices */ of_platform_populate(NULL, tegra_dt_match_table, tegra20_auxdata_lookup, NULL); }
static int __init roth_touch_init(void) { struct board_info board_info; int touch_panel_id = tegra_get_touch_panel_id(); tegra_get_board_info(&board_info); if (touch_panel_id == PANEL_TPK || touch_panel_id == PANEL_WINTEK) { int err; err = gpio_request(TOUCH_GPIO_CLK, "touch-gpio-clk"); if (err < 0) pr_err("%s: gpio_request failed %d\n", __func__, err); else { err = gpio_direction_output(TOUCH_GPIO_CLK, 0); if (err < 0) pr_err("%s: set output failed %d\n", __func__, err); gpio_free(TOUCH_GPIO_CLK); } tegra_pinmux_set_pullupdown(TOUCH_GPIO_CLK_PG, TEGRA_PUPD_NORMAL); tegra_pinmux_set_tristate(TOUCH_GPIO_CLK_PG, TEGRA_TRI_TRISTATE); rm31080ts_roth_data.name_of_clock = NULL; rm31080ts_roth_data.name_of_clock_con = NULL; } else tegra_clk_init_from_table(touch_clk_init_table); rm31080a_roth_spi_board[0].irq = gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI); touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI, TOUCH_GPIO_RST_RAYDIUM_SPI, &rm31080ts_roth_data, &rm31080a_roth_spi_board[0], ARRAY_SIZE(rm31080a_roth_spi_board)); return 0; }
static void __init tegra_kai_init(void) { tegra_clk_init_from_table(kai_clk_init_table); tegra_enable_pinmux(); tegra_smmu_init(); tegra_soc_device_init("kai"); kai_pinmux_init(); kai_i2c_init(); kai_spi_init(); kai_usb_init(); #ifdef CONFIG_TEGRA_EDP_LIMITS kai_edp_init(); #endif kai_uart_init(); kai_audio_init(); platform_add_devices(kai_devices, ARRAY_SIZE(kai_devices)); tegra_ram_console_debug_init(); tegra_io_dpd_init(); kai_sdhci_init(); kai_regulator_init(); kai_suspend_init(); kai_touch_init(); kai_keys_init(); kai_panel_init(); kai_tegra_setup_tibluesleep(); kai_bt_st(); kai_sensors_init(); kai_pins_state_init(); kai_emc_init(); tegra_release_bootloader_fb(); kai_modem_init(); #ifdef CONFIG_TEGRA_WDT_RECOVERY tegra_wdt_recovery_init(); #endif tegra_serial_debug_init(TEGRA_UARTD_BASE, INT_WDT_CPU, NULL, -1, -1); tegra_register_fuse(); }
static void __init tegra_macallan_early_init(void) { tegra_clk_init_from_table(macallan_clk_init_table); tegra_clk_verify_parents(); tegra_soc_device_init("macallan"); }
void __init olympus_clks_init(void) { tegra_clk_init_from_table(olympus_clk_init_table); }