fusee: Fix KFUSE clock.

This commit is contained in:
hexkyz 2018-12-07 22:18:01 +00:00 committed by GitHub
parent ef373d954f
commit 00aa283a54
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -15,6 +15,7 @@
*/ */
#include "car.h" #include "car.h"
#include "timers.h"
#include "utils.h" #include "utils.h"
static inline uint32_t get_clk_source_reg(CarDevice dev) { static inline uint32_t get_clk_source_reg(CarDevice dev) {
@ -121,8 +122,16 @@ void clkrst_disable(CarDevice dev) {
void clkrst_reboot(CarDevice dev) { void clkrst_reboot(CarDevice dev) {
clkrst_disable(dev); clkrst_disable(dev);
if (dev == CARDEVICE_KFUSE) {
/* Workaround for KFUSE clock. */
clk_enable(dev);
udelay(100);
rst_disable(dev);
udelay(200);
} else {
clkrst_enable(dev); clkrst_enable(dev);
} }
}
void clkrst_enable_fuse_regs(bool enable) { void clkrst_enable_fuse_regs(bool enable) {
volatile tegra_car_t *car = car_get_regs(); volatile tegra_car_t *car = car_get_regs();