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

Kim Phillips kim.phillips at freescale.com
Tue May 12 22:01:39 CEST 2009


On Sat,  9 May 2009 21:50:39 +0200
Wolfgang Denk <wd at 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

there seem to be recurring themes among these patches - this
patchseries would be better grouped into theme based content instead of
on a file by file basis.  Eg., Removal of mpc512x.h shouldn't need 10
"prepare to remove" patches - it should be a single patch that removes
all #include references, plus the file removal itself.

Kim


More information about the U-Boot mailing list