why we set CAMDIVN and CLKDIVN
xiangfu
xiangfu at openmoko.org
Thu Jun 19 07:33:58 CEST 2008
i find :
set CLKDIVN is to make FCLK:HCLK:PCLK = 1:3:6
HDIVN [2:1] 00 : HCLK = FCLK/1.
01 : HCLK = FCLK/2.
10 : HCLK = FCLK/4 when CAMDIVN[9] = 0.
HCLK= FCLK/8 when CAMDIVN[9] = 1.
11 : HCLK = FCLK/3 when CAMDIVN[8] = 0.
HCLK = FCLK/6 when CAMDIVN[8] = 1.
PDIVN [0] 0: PCLK has the clock same as the HCLK/1. 0
1: PCLK has the clock same as the HCLK/2.
----i still don't know why we set CAMDIVN
----i still can't run the C function by add "stack_setup".
xiangfu wrote:
> # define CLKDIVN 0x4C000014 /* clock divisor register */
> # define CLKDIVN_val 7 /* FCLK:HCLK:PCLK = 1:3:6 */
> /* FCLK:HCLK:PCLK = 1:2:4 */
-- i should delete this line " /* FCLK:HCLK:PCLK = 1:2:4 */ " : )
> ldr r0, =CLKDIVN
> mov r1, #CLKDIVN_val
> str r1, [r0]
>
> /* Make sure we get FCLK:HCLK:PCLK = 1:3:6 */
> # define CAMDIVN 0x4C000018
> ldr r0, =CAMDIVN
> mov r1, #0
> str r1, [r0]
> ----i don't know why we set CAMDIVN and CLKDIVN
>
> ----i still can't run the C function by add "stack_setup".
>
>
More information about the openmoko-kernel
mailing list