1
0
Fork 0
remarkable-uboot/arch/arm/cpu/armv7
Lokesh Vutla 0b1b60c779 ARM: OMAP5: Fix warm reset with USB cable connected
Warm reset on OMAP5 freezes when USB cable is connected.
Fix requires PRM_RSTTIME.RSTTIME1 to be programmed
with the time for which reset should be held low for the
voltages and the oscillator to reach stable state.

There are 3 parameters to be considered for calculating
the time, which are mostly board and PMIC dependent.
-1- Time taken by the Oscillator to shut + restart
-2- PMIC OTP times
-3- Voltage rail ramp times, which inturn depends on the
PMIC slew rate and value of the voltage ramp needed.

In order to keep the code in u-boot simple, have a way
for boards to specify a pre computed time directly using
the 'CONFIG_OMAP_PLATFORM_RESET_TIME_MAX_USEC'
option. If boards fail to specify the time, use a default
as specified by 'CONFIG_DEFAULT_OMAP_RESET_TIME_MAX_USEC' instead.
Using the default value translates into some ~22ms and should work in
all cases.
However in order to avoid this large delay hiding other bugs,
its recommended that all boards look at their respective data
sheets and specify a pre computed and optimal value using
'CONFIG_OMAP_PLATFORM_RESET_TIME_MAX_USEC'

In order to help future board additions to compute this
config option value, add a README at doc/README.omap-reset-time
which explains how to compute the value. Also update the toplevel
README with the additional option and pointers to
doc/README.omap-reset-time.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
[rnayak@ti.com: Updated changelog and added the README]
Signed-off-by: Rajendra Nayak <rnayak@ti.com>
2013-05-10 08:25:55 -04:00
..
am33xx am33xx: add pll and clock support for TI814x CPSW 2013-05-10 08:25:54 -04:00
exynos Exynos: pwm: Remove dead code of function exynos5_get_pwm_clk 2013-04-01 14:02:08 +09:00
highbank arm: Remove additional config flags 2012-10-04 14:51:50 +02:00
mx5 imx: mx5: lowlevel_init: Simplify code 2013-04-12 07:55:04 +02:00
mx6 mx6: Fix get_board_rev() for the mx6 solo case 2013-04-03 11:36:34 +02:00
omap-common ARM: OMAP5: Fix warm reset with USB cable connected 2013-05-10 08:25:55 -04:00
omap3 omap3: Display MHz instead of mHz on the console 2013-04-12 15:29:23 -04:00
omap4 OMAP4: Fix bug in omap4460_volts struct 2013-04-10 13:05:32 -04:00
omap5 ARM: OMAP5: Fix warm reset with USB cable connected 2013-05-10 08:25:55 -04:00
rmobile arm: rmobile: bugfix: wrong register saving in lowlevel_init 2012-10-08 11:15:04 -07:00
s5p-common exynos: Correct use of 64-bit division 2013-04-17 10:00:40 +09:00
s5pc1xx armv7: add appropriate headers for assembly functions 2012-05-15 08:31:26 +02:00
socfpga arm: Make all linker scripts compatible with per-symbol sections 2013-04-12 07:55:09 +02:00
tegra-common Tegra20: Move some include files to arch-tegra for sharing with Tegra30 2012-10-15 11:54:06 -07:00
tegra20 tegra: usb: move implementation into right directory 2013-03-14 11:06:41 -07:00
tegra30 Tegra30: Add CPU (armv7) files 2013-01-16 13:40:07 -07:00
tegra114 Tegra114: Add CPU (armv7) files 2013-02-11 10:35:25 -07:00
u8500 arm: Move lastinc to arch_global_data 2013-02-01 15:07:50 -05:00
zynq net: gem: Fix gem driver on 1Gbps LAN 2013-04-30 11:39:19 +02:00
Makefile ti814x_evm: add ti814x evm board support 2013-03-24 12:49:12 -04:00
cache_v7.c ARM: mmu: Set domain permissions to client access 2013-03-28 09:10:58 +01:00
config.mk imx: Fix automatic make targets for imx images 2013-04-12 07:55:06 +02:00
cpu.c arm: bugfix: save_boot_params_default accesses uninitalized stack when -O0 2012-09-01 14:58:22 +02:00
lowlevel_init.S armv7: Make lowlevel_init.S's lowlevel_init do ABI compatible stack 2012-09-01 14:58:19 +02:00
start.S Tegra: Restore cp15 VBAR _start vector write for ARMv7 2013-04-15 11:01:37 -07:00
syslib.c ARMV7: Vexpress: fix build errors 2010-12-08 23:44:21 +01:00