Skip to contentSkip to conversation

Freescale MPC52xx support for 2.6 - Base part

PATCH In review Sylvain Munaut 2 participants 5 messages Jul 8, 2004 – Jul 9, 2004

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 Freescale MPC52xx support for 2.6 - Base part

This patch adds support for the Freescale MPC5200 and it's LITE5200 platform. Only basic boot support is included here.

The complete patch set is composed of two parts parts : - [1/2] The base/core part ( include/asm-ppc & arch/ppc )
- [2/2] The serial driver part ( include/linux & driver/serial )
They have to be applied in order.

Due to the size of the patch (>80k), it's not inlined or attached. It's available from either :

- bksend generated patch : http://www.246tNt.com/linux-2.5-mpc52xx-pending-main.bksend
- diff -urN style patch : http://www.246tNt.com/linux-2.5-mpc52xx-pending-main.diff
- bk tree ( contains both patchs ) : bk://bkbits.246tNt.com/linux-2.5-mpc52xx-pending

diffstat is included :

===================================================================

[email protected], 2004-07-08 16:11:09+02:00, [email protected]
Add basic support for the Freescale MPC52xx embedded CPU and the LITE5200 platform.

Documentation/powerpc/mpc52xx.txt   |   48 +++
arch/ppc/Kconfig                    |   28 +-
arch/ppc/boot/common/misc-common.c  |   10
arch/ppc/boot/simple/Makefile       |    7
arch/ppc/boot/simple/mpc52xx_tty.c  |  138 +++++++++++
arch/ppc/configs/lite5200_defconfig |  436 ++++++++++++++++++++++++++++++++++++
arch/ppc/kernel/cputable.c          |    4
arch/ppc/platforms/Makefile         |    1
arch/ppc/platforms/lite5200.c       |  152 ++++++++++++
arch/ppc/platforms/lite5200.h       |   23 +
arch/ppc/platforms/mpc5200.c        |   29 ++
arch/ppc/syslib/Makefile            |    1
arch/ppc/syslib/mpc52xx_pic.c       |  252 ++++++++++++++++++++
arch/ppc/syslib/mpc52xx_setup.c     |  228 ++++++++++++++++++
include/asm-ppc/mpc52xx.h           |  380 +++++++++++++++++++++++++++++++
include/asm-ppc/mpc52xx_psc.h       |  191 +++++++++++++++
include/asm-ppc/ocp_ids.h           |    1
include/asm-ppc/ppcboot.h           |    7
18 files changed, 1921 insertions(+), 15 deletions(-)
#1 lore raw

A few comments:

cputable.c:
* the 8280/52xx, maybe we should just have G2_LE, (same core exists in 8272, 8249, etc.)

mpc52xx_setup.c:
* what is cpu_52xx[]?

ppcboot.h:
* was bi_immr_base not sufficient?

- kumar

Quoted 60 lines · Sylvain Munaut

This patch adds support for the Freescale MPC5200 and it's LITE5200 platform. Only basic boot support is included here.

The complete patch set is composed of two parts parts :
- [1/2] The base/core part ( include/asm-ppc & arch/ppc )
- [2/2] The serial driver part ( include/linux & driver/serial ) They have to be applied in order.

Due to the size of the patch (>80k), it's not inlined or attached. It's available from either :

- bksend generated patch :
http://www.246tNt.com/linux-2.5-mpc52xx-pending-main.bksend
- diff -urN style patch :
http://www.246tNt.com/linux-2.5-mpc52xx-pending-main.diff
- bk tree ( contains both patchs ) :
bk://bkbits.246tNt.com/linux-2.5-mpc52xx-pending

diffstat is included :

===================================================================

[email protected], 2004-07-08 16:11:09+02:00, [email protected]
Add basic support for the Freescale MPC52xx embedded CPU and the
LITE5200 platform.

Documentation/powerpc/mpc52xx.txt   |   48 +++
arch/ppc/Kconfig                    |   28 +-
arch/ppc/boot/common/misc-common.c  |   10
arch/ppc/boot/simple/Makefile       |    7
arch/ppc/boot/simple/mpc52xx_tty.c  |  138 +++++++++++
arch/ppc/configs/lite5200_defconfig |  436 
++++++++++++++++++++++++++++++++++++
arch/ppc/kernel/cputable.c          |    4
arch/ppc/platforms/Makefile         |    1
arch/ppc/platforms/lite5200.c       |  152 ++++++++++++
arch/ppc/platforms/lite5200.h       |   23 +
arch/ppc/platforms/mpc5200.c        |   29 ++
arch/ppc/syslib/Makefile            |    1
arch/ppc/syslib/mpc52xx_pic.c       |  252 ++++++++++++++++++++
arch/ppc/syslib/mpc52xx_setup.c     |  228 ++++++++++++++++++
include/asm-ppc/mpc52xx.h           |  380 
+++++++++++++++++++++++++++++++
include/asm-ppc/mpc52xx_psc.h       |  191 +++++++++++++++
include/asm-ppc/ocp_ids.h           |    1
include/asm-ppc/ppcboot.h           |    7
18 files changed, 1921 insertions(+), 15 deletions(-)

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

#2 lore raw
Quoted 4 lines · Kumar Gala

A few comments:

cputable.c: * the 8280/52xx, maybe we should just have G2_LE, (same core exists in 8272, 8249, etc.)

IMHO, yes it may be better.

Quoted 1 line

mpc52xx_setup.c: * what is cpu_52xx[]?

A table with coefficients taken from datasheet. They're used to compute the core frequency according to XLB bus frequency and external jumper configurations.

Quoted 1 line

ppcboot.h: * was bi_immr_base not sufficient?

I suppose your question is why create bi_mbar_base instead of using immr.
Well, I guess that would work just fine. The structure is just taken straight from U-Boot sources.

If the question was if I really need to add fields for the frequency, then the answer is yes. (Else, I must measure them which takes times and is inherently less precise).

Sylvain Munaut

#3 lore raw
Quoted 7 lines · Sylvain Munaut
Quoted 4 lines · Kumar Gala

A few comments:

cputable.c: * the 8280/52xx, maybe we should just have G2_LE, (same core exists in 8272, 8249, etc.)

Quoted 7 lines

IMHO, yes it may be better.

Quoted 1 line

mpc52xx_setup.c: * what is cpu_52xx[]?

A table with coefficients taken from datasheet. They're used to compute the core frequency according to XLB bus frequency and external jumper configurations.

Mind adding the above as a comment in the code. :)

Quoted 4 lines
Quoted 1 line

ppcboot.h: * was bi_immr_base not sufficient?

I suppose your question is why create bi_mbar_base instead of using immr.
Well, I guess that would work just fine. The structure is just taken straight from U-Boot sources.

Yes that was what I was asking about, and fair enough if we are mirroring the u-boot structure. One of these days we will clean all of that up.

- kumar

#4 lore raw
Quoted 8 lines · Kumar Gala
Quoted 6 lines
Quoted 4 lines

A few comments:

cputable.c: * the 8280/52xx, maybe we should just have G2_LE, (same core exists in 8272, 8249, etc.)

IMHO, yes it may be better.

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

mpc52xx_setup.c: * what is cpu_52xx[]?

A table with coefficients taken from datasheet. They're used to compute the core frequency according to XLB bus frequency and external jumper configurations.

Mind adding the above as a comment in the code. :)

Ok, I'll change the G2_LE and change the name/add a small comment to cpu_52xx. I'll repost a new updated set of patch monday morning with just that if I got no other comments.

Sylvain Munaut