[U-Boot] [PATCH 00/29] Rework MPC512x Support

Wolfgang Denk wd at denx.de
Sat May 9 21:50:39 CEST 2009


The following patch series includes a heavy rework of the existing
code for MPC512x processors.  The changes include especially:

- move common files from mpc5121ads (so far ads5121) board to common
  directory so they can be reused by other boards based on the same
  CPU
- rename "ads5121" into "freescale/mpc5121ads" so thesame board name
  as in Linux is used, and the vendor directory is correct
- rework the whole MPC512x related code to use I/O acessors (i. e.
  in_*() and out_*() functions) instead of deprecated pointer accesses
- Don't #define register offsets, but use the offset from the
  respective C structs instead [1]
- remove include/mpc512x.h to avoid duplication of the same
  information in include/asm-ppc/immap_512x.h
- add support for the ARIA board, a MPC5121e based COM Express module

[1] Note: It was not possible to get completely rid of #define'd
register offsets yet, as some are used in cpu/mpc512x/start.S, and in
assembly the available options are limited. In Linux, the required
header files with the respective #define's are auto-generated from the
C struct definitions. We intend to do the same, but this needs
co-ordinations across architectures - for example, Blackfin already
uses such an approach. For now, we created cpu/mpc512x/asm-offsets.h;
this file will be removed again as soon as auto-generation works.

Note: It might seem a good idea to squash related patches (like all
I/O accessors patches into one, and all mpc512x.h removal patches
into another one) to reduce the number of commits. I decided against
doing this, as the amount of changes carries the risk that, inspite
of pretty careful testing, some errors have not been discovered yet.
The current one-step-at-a-time approach is more git-bisect friendly.


Patches are agains v2009.06-rc1; they have been tested on the
"mpc5121ads" and the "aria" boards.


Patch overview:

[PATCH 01/29] mpc512x: change cpu/mpc512x/Makefile to use Kconfig style
[PATCH 02/29] mpc512x: Move common files to share them by several boards
[PATCH 03/29] cpu/mpc512x/pci.c: minor coding style cleanup
[PATCH 04/29] cpu/mpc512x/diu.c: fix warning: assignment from incompatible pointer type
[PATCH 05/29] Rename ads5121 board into mpc5121ads
[PATCH 06/29] MPC512x: add more hardware description to immap_512x.h
[PATCH 07/29] mpc5121ads: use I/O accessors instead of pointer accesses
[PATCH 08/29] MPC512x: add support for ARIA board
[PATCH 09/29] cpu/mpc512x/iopin.c: convert to use I/O acessors.
[PATCH 10/29] cpu/mpc512x/iopin.c: remove redundant include of <asm/immap_512x.h>
[PATCH 11/29] MPC512x: prepare removal of include/mpc512x.h
[PATCH 12/29] include/configs/mpc5121ads.h: prepare removal of include/mpc512x.h
[PATCH 13/29] include/configs/aria.h: prepare removal of include/mpc512x.h
[PATCH 14/29] common/cmd_ide.c: prepare removal of include/mpc512x.h
[PATCH 15/29] cpu/mpc512x/cpu.c: prepare removal of include/mpc512x.h
[PATCH 16/29] cpu/mpc512x/cpu_init.c: prepare removal of include/mpc512x.h
[PATCH 17/29] cpu/mpc512x/cpu_init.c: use I/O accessors instead of pointer accesses
[PATCH 18/29] cpu/mpc512x/speed.c: prepare removal of include/mpc512x.h
[PATCH 19/29] cpu/mpc512x/speed.c: use I/O accessors instead of pointer accesses
[PATCH 20/29] cpu/mpc512x/serial.c: use I/O accessors instead of pointer accesses
[PATCH 21/29] cpu/mpc512x/i2c.c: prepare removal of include/mpc512x.h
[PATCH 22/29] cpu/mpc512x/i2c.c: use immr offsets from C struct instead of #define
[PATCH 23/29] cpu/mpc512x/i2c.c: use I/O accessors instead of pointer accesses
[PATCH 24/29] cpu/mpc512x/pci.c: use I/O accessors instead of pointer accesses
[PATCH 25/29] drivers/net/mpc512x_fec.c: prepare removal of include/mpc512x.h
[PATCH 26/29] MPC512x FEC: remove duplicated code and data types
[PATCH 27/29] drivers/net/mpc512x_fec.c: use I/O accessors instead of pointer accesses
[PATCH 28/29] MPC512x FEC: get rid of duplicated struct ethernet_regs
[PATCH 29/29] Remove include/mpc512x.h

Signed-off-by: Wolfgang Denk <wd at denx.de>
Cc: John Rigby <jcrigby at gmail.com>
---
Summary statistics:

 MAINTAINERS                             |    2 +
 MAKEALL                                 |    3 +-
 Makefile                                |   10 +-
 board/ads5121/Makefile                  |   57 ---
 board/ads5121/README                    |    7 -
 board/ads5121/ads5121.c                 |  432 -------------------
 board/ads5121/ads5121_diu.c             |  193 ---------
 board/ads5121/config.mk                 |   23 -
 board/ads5121/pci.c                     |  213 ----------
 board/ads5121/u-boot.lds                |  121 ------
 board/davedenx/aria/Makefile            |   53 +++
 board/davedenx/aria/aria.c              |  418 ++++++++++++++++++
 board/davedenx/aria/config.mk           |   23 +
 board/freescale/mpc5121ads/Makefile     |   53 +++
 board/freescale/mpc5121ads/README       |    7 +
 board/freescale/mpc5121ads/config.mk    |   23 +
 board/freescale/mpc5121ads/mpc5121ads.c |  438 +++++++++++++++++++
 common/cmd_ide.c                        |    4 -
 cpu/mpc512x/Makefile                    |   13 +-
 cpu/mpc512x/asm-offsets.h               |   15 +
 cpu/mpc512x/config.mk                   |    4 +
 cpu/mpc512x/cpu.c                       |    1 -
 cpu/mpc512x/cpu_init.c                  |   25 +-
 cpu/mpc512x/diu.c                       |  189 +++++++++
 cpu/mpc512x/i2c.c                       |   55 ++--
 cpu/mpc512x/iopin.c                     |   10 +-
 cpu/mpc512x/pci.c                       |  226 ++++++++++
 cpu/mpc512x/serial.c                    |   62 ++--
 cpu/mpc512x/speed.c                     |   22 +-
 cpu/mpc512x/start.S                     |    4 +-
 cpu/mpc512x/u-boot.lds                  |  121 ++++++
 drivers/net/mpc512x_fec.c               |  168 ++++----
 drivers/net/mpc512x_fec.h               |  153 +------
 include/asm-ppc/immap_512x.h            |  575 +++++++++++++++++++++++++-
 include/common.h                        |    1 -
 include/configs/ads5121.h               |  551 ------------------------
 include/configs/aria.h                  |  543 ++++++++++++++++++++++++
 include/configs/mpc5121ads.h            |  551 ++++++++++++++++++++++++
 include/mpc512x.h                       |  702 -------------------------------
 39 files changed, 3456 insertions(+), 2615 deletions(-)


More information about the U-Boot mailing list