[coreboot] Porting coreboot to new board

Nico Huber nico.h at gmx.de
Thu May 31 14:51:41 CEST 2018


Hello Zvika,

On 31.05.2018 04:39, Zvi Vered wrote:
> The links you provided:
> https://www.coreboot.org/Motherboard_Porting_Guide
> https://www.coreboot.org/Developer_Manual
> 
> Does not mention Intel's FSP at all.

there is few FSP documentation maintained by the coreboot community.
But there exists a book [1] and some documentation in our source repo-
sitory [2]. I have to admit, I have read neither of them. I'm used
to read code instead (it is always right and never outdated). So I
can't tell how useful the documentation is.

> 
> How FSP is integrated during coreboot porting ?
> src\venorcode\intel contains 2 FSP versions.

There are actually three:
  src/vendorcode/fsp1_0/
  src/vendorcode/fsp/fsp1_1/
  src/vendorcode/fsp/fsp2_0/

For your platform, FSP1.1 and FSP2.0 binaries exist.

> src\soc\intel  contains fsp_baytrail, fsp_broadwell_de

These are for different chips. Your E3-1505M v5 is a Skylake processor.
We were used to name the directories explicitly with fsp_ prefix before,
because there were sometimes alternatives to FSP in the tree. That
stopped with Skylake, so src/soc/intel/*lake are all FSP based, too.
src/soc/skylake/ contains the chipset support for your platform.

As mentioned above, two FSP versions exist for Skylake. The original
Skylake FSP was version 1.1 but because its successor Kaby Lake is
mostly compatible, the src/soc/skylake/ code also supports Kaby Lake
and the newer Kaby Lake FSP 2.0 also supports Skylake.

IMO, you should choose which version of FSP you want to use, first.
I would advice you to use FSP 2.0 because that is generally better
supported in coreboot and FSP 1.1 lacks quite some options that you
might need for your mainboard. There are few publicly available blobs
[3,4]. Alas, the public FSP 2.0 binary [4] is not officially validated
for Skylake (but works so far in any case known to us).

If you have a contact to Intel and an NDA, you can ask Intel for a
binary for you processor, of course. I also want to encourage you to
do so because Intel still has to learn that people are interested in
coreboot+FSP.

> Can you please tell what is the best starting point for a XEON board ?
> I think there are no "Intel® XEON® Processor E3-1505M v5" boards in last
> version of coreboot.
> Am I right ?

It depends more on the chipset variant than the processor. I did a
port for a board with the C236 chipset. Yours might have the mobile
version of that chipset which comes very close. My code is not
upstreamed yet. Let me know if you want to peek at it soon.

Other boards that use a similar chipset are:
  src/mainboard/intel/kblrvp/ (kblrvp8 variant)
  src/mainboard/intel/saddlebrook/

Nico

[1] https://www.apress.com/us/book/9781484200711
    Should be free to download.

[2] Documentation/Intel/index.html

[3] https://github.com/IntelFsp/FSP/tree/Skylake

[4] https://github.com/IntelFsp/FSP/tree/Kabylake



More information about the coreboot mailing list