Help! mpc8247 porting kernel 2.6.25 problem.

张世乐 slzhang1980 at gmail.com
Tue Apr 22 15:10:54 EST 2008


Thank you, Doctor Scott. I'm very grateful to you for you kindly help.

I'll try the way you suggested soon.

And, my code for light the led run as follows:

void set_led_a_red(void)
{
	/*PDIRC: 0xfc010d40*/
	/*PPARC: 0xfc010d44*/
	/*PODRC: 0xfc010d4c*/
	/*PDATC: 0xfc010d50*/
	*((unsigned long *)(0xfb010d40)) |= 0x000000d4;
	*((unsigned long *)(0xfb010d44)) &= ~0x000000d4;
	*((unsigned long *)(0xfb010d4c)) &= ~0x000000d4;
	*((unsigned long *)(0xfb010d50)) |= 0x00000004;
	*((unsigned long *)(0xfb010d50)) &= ~0x00000010;
}
...

I put is in the file arch/power/kernel/setup_32.c, is this OK?
And I call it in the setup_common_caches as follows
...
bl        set_led_a_red
mtspr  SPRN_HID0, r8
bl        set_led_a_green

I've tried to compile the kernel with enable the early debug prink. but it
output nothing. maybe I make some foolish mistake in configurate the
CPM UART early debug transmit descriptor address.

Thanks again. It really very kind of you to give me some suggestions.

2008/4/22 Scott Wood <scottwood at freescale.com>:
> On Mon, Apr 21, 2008 at 11:06:28AM +0800, 张世乐 wrote:
>  > Uncompressing Kernel Image ... OK
>  > Booting using the fdt at 0x600000
>  >
>  > [nothing output and hanging here]
>  >
>  > I use the led on the board to trace the kernel fund it stop in the function
>  >
>  > setup_common_caches  in arch/powerpc/kernel/cpu_setup_6xx.S
>  >
>  > Can you give me some ideas?
>
>  That's probably not where it's actually stopping, but rather where caches
>  are enabled without the MMU, thus making it difficult to access devices.
>  You can try placing a dcbf after each write to the LED register, though
>  this may perturb nearby registers.
>
>  Have you tried enabling early debug printk?
>
>  -Scott
>


More information about the Linuxppc-embedded mailing list