mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-10-02 09:30:43 +09:00
ARM: tegra: add function to enable input clamping on tristate
The HW-defined procedure for booting Tegra requires that CLAMP_INPUTS_WHEN_TRISTATED be enabled before programming the pinmux. Add a function to the pinmux driver to allow boards to do this. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
This commit is contained in:
parent
eceb3f26f4
commit
bb14469ae0
@ -86,6 +86,22 @@
|
||||
#define IO_RESET_SHIFT 8
|
||||
#define RCV_SEL_SHIFT 9
|
||||
|
||||
#if !defined(CONFIG_TEGRA20) && !defined(CONFIG_TEGRA30)
|
||||
/* This register/field only exists on Tegra114 and later */
|
||||
#define APB_MISC_PP_PINMUX_GLOBAL_0 0x40
|
||||
#define CLAMP_INPUTS_WHEN_TRISTATED 1
|
||||
|
||||
void pinmux_set_tristate_input_clamping(void)
|
||||
{
|
||||
u32 *reg = _R(APB_MISC_PP_PINMUX_GLOBAL_0);
|
||||
u32 val;
|
||||
|
||||
val = readl(reg);
|
||||
val |= CLAMP_INPUTS_WHEN_TRISTATED;
|
||||
writel(val, reg);
|
||||
}
|
||||
#endif
|
||||
|
||||
void pinmux_set_func(enum pmux_pingrp pin, enum pmux_func func)
|
||||
{
|
||||
u32 *reg = MUX_REG(pin);
|
||||
|
@ -80,6 +80,11 @@ struct pmux_pingrp_config {
|
||||
#endif
|
||||
};
|
||||
|
||||
#if !defined(CONFIG_TEGRA20) && !defined(CONFIG_TEGRA30)
|
||||
/* Set the pinmux CLAMP_INPUTS_WHEN_TRISTATED bit */
|
||||
void pinmux_set_tristate_input_clamping(void);
|
||||
#endif
|
||||
|
||||
/* Set the mux function for a pin group */
|
||||
void pinmux_set_func(enum pmux_pingrp pin, enum pmux_func func);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user