void __init shuttle_pinmux_init(void)
{
	tegra_pinmux_config_table(shuttle_pinmux, ARRAY_SIZE(shuttle_pinmux));
	tegra_drive_pinmux_config_table(shuttle_drive_pinmux,
		ARRAY_SIZE(shuttle_drive_pinmux));
	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
}
void __init adam_pinmux_init(void)
{
    tegra_pinmux_config_table(adam_pinmux, ARRAY_SIZE(adam_pinmux));
    tegra_drive_pinmux_config_table(adam_drive_pinmux,
                                    ARRAY_SIZE(adam_drive_pinmux));
    tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
}
void __init seaboard_pinmux_init(void)
{
	/*
	 * PINGROUP_SPIC contains two pins:
	 * + PX2, DISABLE_CHRGR (output)
	 * + PX3, WM8903 codec IRQ (input)
	 *
	 * The pinmux module can only configure TRISTATE vs. NORMAL on a
	 * per-group rather than per-pin basis. The group must be NORMAL
	 * since at least one pin is an output. However, we must ensure that
	 * the WM8903 IRQ is never driven, since the WM8903 itself is driving
	 * it, and we don't want multiple drivers. To ensure this, configure
	 * PX3 as a GPIO here, and set is as an input, before the pinmux table
	 * is written, which is when the pins will be un-tristated.
	 */
	tegra_gpio_enable(TEGRA_GPIO_WM8903_IRQ);
	gpio_request(TEGRA_GPIO_WM8903_IRQ, "wm8903");
	gpio_direction_input(TEGRA_GPIO_WM8903_IRQ);

	/* Ensure the reset line stays high. */
	gpio_request(TEGRA_GPIO_RESET, "reset");
	gpio_direction_output(TEGRA_GPIO_RESET, 1);
	tegra_gpio_enable(TEGRA_GPIO_RESET);

	tegra_pinmux_config_table(seaboard_pinmux, ARRAY_SIZE(seaboard_pinmux));

	tegra_drive_pinmux_config_table(seaboard_drive_pinmux,
					ARRAY_SIZE(seaboard_drive_pinmux));

	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
}
void __init harmony_pinmux_init(void)
{
	tegra_pinmux_config_table(harmony_pinmux, ARRAY_SIZE(harmony_pinmux));
	tegra_drive_pinmux_config_table(harmony_drive_pinmux,
                                        ARRAY_SIZE(harmony_drive_pinmux));

	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
}
int __init n1_pinmux_init(void)
{
	tegra_pinmux_config_table(n1_pinmux, ARRAY_SIZE(n1_pinmux));
	tegra_drive_pinmux_config_table(n1_drive_pinmux,
					ARRAY_SIZE(n1_drive_pinmux));
	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
	return 0;
}
Beispiel #6
0
void __init trimslice_pinmux_init(void)
{
	if (!of_machine_is_compatible("nvidia,tegra20"))
		platform_add_devices(pinmux_devices,
					ARRAY_SIZE(pinmux_devices));
	tegra_pinmux_config_table(trimslice_pinmux, ARRAY_SIZE(trimslice_pinmux));
	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
}
void __init olympus_pinmux_init(void)
{
	tegra_pinmux_config_table(olympus_pinmux, ARRAY_SIZE(olympus_pinmux));
	tegra_drive_pinmux_config_table(olympus_drive_pinmux,
		ARRAY_SIZE(olympus_drive_pinmux));

	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
}
int __init enterprise_pinmux_init(void)
{
	tegra_pinmux_config_table(enterprise_pinmux, ARRAY_SIZE(enterprise_pinmux));
	tegra_drive_pinmux_config_table(enterprise_drive_pinmux,
					ARRAY_SIZE(enterprise_drive_pinmux));
	tegra_pinmux_config_table(enterprise_unused_pinmux,
				ARRAY_SIZE(enterprise_unused_pinmux));

	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
	enterprise_set_unused_pin_gpio(enterprise_unused_gpio_pins,
			ARRAY_SIZE(enterprise_unused_gpio_pins));
	return 0;
}
int __init enterprise_pinmux_init(void)
{
	struct board_info board_info;
	tegra_get_board_info(&board_info);

	tegra_pinmux_config_table( m470_pinmux_common, 
                                        ARRAY_SIZE( m470_pinmux_common)); 
        tegra_drive_pinmux_config_table( m470_drive_pinmux,
					ARRAY_SIZE( m470_drive_pinmux));
	tegra_pinmux_config_table( m470_unused_pinmux_common, 
                                        ARRAY_SIZE( m470_unused_pinmux_common)); 				
	tegra_gpio_config( m470_gpio_table, ARRAY_SIZE( m470_gpio_table));	
	enterprise_set_unused_pin_gpio( m470_unused_gpio_pins,
			ARRAY_SIZE( m470_unused_gpio_pins));
	tegra_pinmux_gpio_init( m470_gpio_init_table, ARRAY_SIZE( m470_gpio_init_table));

	return 0;
}
void __init trimslice_pinmux_init(void)
{
	tegra_pinmux_config_table(trimslice_pinmux, ARRAY_SIZE(trimslice_pinmux));
	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
}