[U-Boot-Users] SoC -- a new port and coding style
Wolfgang Denk
wd at denx.de
Mon Mar 1 00:55:21 CET 2004
Dear Curt,
in message <20040229145211.B7611 at curtisb.com> you wrote:
> I have a "porting to a new chip" question. I see the u-boot directory
> structure allows for CPU specific stuff to go in cpu/ and board
> specific stuff to go in board/ . My question regards a SoC based on
And drivers/ for device drivers - just to mention it.
> an ARM7TDMI core from Samsung called the s3c4510.
OK, arm720t.
> The "s3c4510" has a whole bunch of registers for the ethernet, uart,
> timers, i2c -- none of which has anything to do with the ARM7TDMI
> core or the board.
Registers? What has on-chip peripherals to do with the core or the
board?
> There does not seem to be an appropriate place in the u-boot directory
> structure to put the "s3c4510" specific stuff -- it has nothing to do
I must be mnissing something. If you are talking about structure
definitions for these "registers", please follow the example of other
processors. I would expect that include/s3c4510.h might be a good
place for such definitions.
Or are you talking about drivers for these devices? Then you might
create files like cpu/arm720t/eth_s3c4510.[ch] etc.
> the CPU and it is not board specific either (I've seen at least 3
> other boards based on the Samsung chip which configure the s3c4510
> differently).
Then please consider this in your port.
> Where would be the "right" place to put such changes? Seems I could:
>
> a. jam them in cpu/arm720t with #ifdef
I don;t see any need to "jam" anything with #ifdef's.
> b. create cpu/arm7tdmi and include the s3c4510 in board/
No, this is definitely wrong.
> c. create cpu/s3c4510
Wrong, too.
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd at denx.de
EARTH
smog | bricks
AIR -- mud -- FIRE
soda water | tequila
WATER
More information about the U-Boot
mailing list