diff options
author | Chandan Uddaraju <chandanu@quicinc.com> | 2009-12-17 14:28:28 -0800 |
---|---|---|
committer | Chandan Uddaraju <chandanu@quicinc.com> | 2009-12-17 15:30:24 -0800 |
commit | 852cd2ce16458c42bb7e49cdb150d9d7fee72221 (patch) | |
tree | 2987cc72a676a1bcafcc179b08dbcb7aeb08740c | |
parent | 2b0315b56f74e8d16da273f6f765333c8ae3b53f (diff) | |
download | lk-852cd2ce16458c42bb7e49cdb150d9d7fee72221.tar.gz |
[msm7627]: Replace thread_sleep calls and disable keypad initialization for nandwrite
Disable keypad initialization for nandwrite. Replace thread_sleep calls with
mdelay.
-rwxr-xr-x | platform/msm7k/acpuclock.c | 21 | ||||
-rw-r--r-- | platform/msm_shared/timer.c | 15 | ||||
-rw-r--r-- | target/msm7627_ffa/init.c | 2 | ||||
-rw-r--r-- | target/msm7627_surf/init.c | 2 |
4 files changed, 30 insertions, 10 deletions
diff --git a/platform/msm7k/acpuclock.c b/platform/msm7k/acpuclock.c index 0516a574..1c545f9f 100755 --- a/platform/msm7k/acpuclock.c +++ b/platform/msm7k/acpuclock.c @@ -84,6 +84,9 @@ uint32_t const clk_sel_reg_val[] = { DIV_4 << 1 | 0, }; +void mdelay(unsigned msecs); + + void acpu_clock_init(void) { unsigned i; @@ -97,14 +100,11 @@ void acpu_clock_init(void) /* Increase VDD level to the final value. */ writel((1 << 7) | (VDD_LEVEL << 3), VDD_SVS_PLEVEL_ADDR); +#if (!ENABLE_NANDWRITE) thread_sleep(1); - - /* Increase AXI bus speed. */ - //axi_clock_init(MIN_AXI_HZ); - - /* Turn on PLL1 and PLL2. */ - //pll_request(PLL1, 1); - //pll_request(PLL2, 1); +#else + mdelay(1); +#endif /* Read clock source select bit. */ i = readl(A11S_CLK_SEL_ADDR) & 1; @@ -116,9 +116,10 @@ void acpu_clock_init(void) * strongly ordered, so it should be fine. */ writel(clk_sel_reg_val[i], A11S_CLK_SEL_ADDR); +#if (!ENABLE_NANDWRITE) thread_sleep(1); +#else + mdelay(1); +#endif } - - /* Turn off PLL1. */ - //pll_request(PLL1, 0); } diff --git a/platform/msm_shared/timer.c b/platform/msm_shared/timer.c index ac1f1d9a..31cc6fff 100644 --- a/platform/msm_shared/timer.c +++ b/platform/msm_shared/timer.c @@ -140,3 +140,18 @@ void platform_uninit_timer(void) writel(0, DGT_CLEAR); wait_for_timer_op(); } + +void mdelay(unsigned msecs) +{ + msecs *= 33; + + writel(0, GPT_CLEAR); + writel(0, GPT_ENABLE); + while(readl(GPT_COUNT_VAL) != 0) ; + + writel(GPT_ENABLE_EN, GPT_ENABLE); + while(readl(GPT_COUNT_VAL) < msecs) ; + + writel(0, GPT_ENABLE); + writel(0, GPT_CLEAR); +} diff --git a/target/msm7627_ffa/init.c b/target/msm7627_ffa/init.c index 8f5ab84a..9a397792 100644 --- a/target/msm7627_ffa/init.c +++ b/target/msm7627_ffa/init.c @@ -87,8 +87,10 @@ void target_init(void) dprintf(INFO, "target_init()\n"); +#if (!ENABLE_NANDWRITE) keys_init(); keypad_init(); +#endif if (target_is_emmc_boot()) return; diff --git a/target/msm7627_surf/init.c b/target/msm7627_surf/init.c index ef043c12..8a57d569 100644 --- a/target/msm7627_surf/init.c +++ b/target/msm7627_surf/init.c @@ -87,8 +87,10 @@ void target_init(void) dprintf(INFO, "target_init()\n"); +#if (!ENABLE_NANDWRITE) keys_init(); keypad_init(); +#endif if (target_is_emmc_boot()) return; |