[U-Boot] U-boot for Pentium

Graeme Russ graeme.russ at gmail.com
Thu Jun 23 03:06:50 CEST 2011


Hi Raleigh,

On Thu, Jun 23, 2011 at 10:47 AM, Raleigh Boulware
<r_boulware at hotmail.com> wrote:
>
>

[snip]

>>
>> A couple of questions:
>> - Are these commercially available boards?
> No these are boards I have here at home that I am working with.
>> - Do you have model/part numbers?
> I believe the Chip set numbers are 82C556, 82C557, and 82C558 this is for
> the Opti board. I also have schematics in Orcad for this board and full
> ducmentation on this chipset.

Having full documentation is always helpful

>> - Is this a work related port (versus a spare time personal effort)?
> No actually this is a home project. At work I do Hardware development.
> Schematics, board layout and debug.

That's great - nothing like scratching an itch

>>
>> > I think the Intel and Opti main boards could be used down the road for
>> > others to port U-boot to other Later Platforms.
>>
>> Yes, I would love to get bare-bones support for more x86 CPUs into U-Boot.
>> So far I have only done sc520 because that is all I have ready access to
>
> Well these boards are just first generation Pentium mother boards. I know
> the performance is slow compared to today's standard, but they are easy to
> write code for because the registers are as many as the chipsets today.
> I am also working on a platform that has no North bridge or south bridge.
> This might be easier from a U-boot linux stand point but more difficult from
> a Hardware standpoint

Yes, the older hardware is much easier to work with because is is far
simpler - No multi-core, no System Management Mode, not microcode etc

[snip]

>> Just so you know, U-Boot is a hobby for me (i.e. limited time, no budget).
>> I'm more than willing to help, but unfortunately that help is not going to
>> extend to buying my own development hardware
>>
> Yeah, this is a hobby for me too. It is a Sloooowww hobby at that...

I know the feeling

> This U-boot seems very big I am trying to fumble my way through it. Right
> now I am going through the .S files from the reset vector and following it
> from there. I got to the 'Start.S' and got lost that's why I asked about
> which board on the tree was the sc520 or x86 platform.

Well really, most of U-Boot is platform independent. You are starting at
the right point. The restet vector and Start16.S should not need any
attention. You will need to focus first on getting RAM initialisation
working. You need to be able to configure the SDRAM timings and determine
the memory size very early. You have two potential options

 1) Cache-As-RAM - Should be possible on the Pentium chips - Coreboot will
    probably have some code which may give you an idea. This is the way
    the current sc520 code works
 2) Do full RAM init in assembler - sc520 used to work like this, so if
    you go back to a previous commit in git (the patch series that changed
    it starts at commit de47cbe6860654cc6c0cf8820d9165f059c7cf38) you
    should be able to see an example of this method

Option 1 tends to be more tricky conceptually, but requires far less
assembler code - If you get it working, all the main RAM init can be
done in C code

As a first step, you may be able to hard-code the SDRAM timings and RAM
size just to get things going.

> I will keep trying to make baby steps and ask questions if I get stuck
> thanks for your help.

That's the way to do it

Regards,

Graeme


More information about the U-Boot mailing list