コード例 #1
0
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;
}
コード例 #2
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
}
コード例 #3
0
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();
}
コード例 #4
0
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();
}
コード例 #5
0
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;
}
コード例 #6
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);
}
コード例 #7
0
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);
}
コード例 #8
0
ファイル: board-dalmore.c プロジェクト: thypon/bowser-kernel
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();
}
コード例 #9
0
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();
}
コード例 #10
0
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
}
コード例 #11
0
ファイル: board-pluto.c プロジェクト: Shaky156/Tegra-Note-7
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();
}
コード例 #12
0
ファイル: board-aruba.c プロジェクト: 0709oNEY/at100-kernel
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();
}
コード例 #13
0
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;
}
コード例 #14
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();
}
コード例 #15
0
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();
}
コード例 #16
0
ファイル: board-macallan.c プロジェクト: thypon/bowser-kernel
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();
}
コード例 #17
0
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");
}
コード例 #18
0
ファイル: board-acer-t20.c プロジェクト: Dm47021/Holo-a200
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();
}
コード例 #19
0
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();
}
コード例 #20
0
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;
}
コード例 #21
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();
}
コード例 #22
0
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);
}
コード例 #23
0
ファイル: board-dt.c プロジェクト: 303750856/linux-3.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);
}
コード例 #24
0
ファイル: board-cardhu.c プロジェクト: clemsyn/rel-15r7
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
}
コード例 #25
0
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();
}
コード例 #26
0
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);
}
コード例 #27
0
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;
}
コード例 #28
0
ファイル: board-kai.c プロジェクト: Klozz/Grouper-3.4
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();
}
コード例 #29
0
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");
}
コード例 #30
0
void __init olympus_clks_init(void)
{
    tegra_clk_init_from_table(olympus_clk_init_table);
}