
Wolfgang,
I think it is time to hand over 5xxx maintainership to you.
I did go over these patches they look good to me.
John
On Sat, May 9, 2009 at 1:50 PM, Wolfgang Denk wd@denx.de wrote:
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@denx.de Cc: John Rigby jcrigby@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(-)