[coreboot] Porting coreboot to new board

Youness Alaoui kakaroto at kakaroto.homelinux.net
Thu May 31 01:07:14 CEST 2018


This is the best I can do for you :

https://ark.intel.com/products/89608/Intel-Xeon-Processor-E3-1505M-v5-8M-Cache-2_80-GHz

Product Collection: Intel® Xeon® Processor E3 v5 Family
Code Name: Products formerly Skylake

kakaroto at kakaroto:~/coding/purism/coreboot$ git grep SOC_INTEL_SKYLAKE
| grep mainboard
src/mainboard/google/chell/Kconfig: select SOC_INTEL_SKYLAKE
src/mainboard/google/glados/Kconfig: select SOC_INTEL_SKYLAKE
src/mainboard/google/lars/Kconfig: select SOC_INTEL_SKYLAKE
src/mainboard/intel/kblrvp/Kconfig: select SOC_INTEL_SKYLAKE
src/mainboard/intel/kunimitsu/Kconfig: select SOC_INTEL_SKYLAKE
src/mainboard/intel/saddlebrook/Kconfig: select SOC_INTEL_SKYLAKE
src/mainboard/purism/librem_skl/Kconfig: select SOC_INTEL_SKYLAKE

I'm going to assume that the skylake Xeon is supported and will work
(from a coreboot standpoint) just the same as a Core i5 or whatever,
but it might not be the case. That will be your job to figure the rest
out.

Good luck,
Youness.


On Wed, May 30, 2018 at 3:35 PM, Zvi Vered <veredz72 at gmail.com> wrote:
> Hello Youness,
>
> Thank you very much for the detailed information !
>
> 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 ?
>
> Best regards,
> Zvika
>
> On Tue, May 29, 2018 at 9:15 PM Youness Alaoui
> <kakaroto at kakaroto.homelinux.net> wrote:
>>
>> Hi,
>>
>> I suggest you read the wiki :
>> https://www.coreboot.org/Developer_Manual and
>> https://www.coreboot.org/Motherboard_Porting_Guide
>> I would also suggest maybe (optional) that you read my blog posts
>> about my own experience porting coreboot to a new motherboard :
>> https://puri.sm/posts/diving-back-into-coreboot-development/
>> https://puri.sm/posts/librem-13-coreboot-report-january-12-2017/
>> https://puri.sm/posts/librem-13-coreboot-report-february-3rd-2017/
>> https://puri.sm/posts/librem-13-coreboot-report-february-25th-2017/
>> https://puri.sm/posts/coreboot-on-the-librem-13-v2-part-1/
>> https://puri.sm/posts/coreboot-on-the-skylake-librems-part-2/
>>
>> To answer your specific questions : It depends on your machine, is it
>> AMD or is it Intel? Is it Ivybridge or Broadwell or Skylake or
>> Apollolake, etc.. ? Does it have soldered RAM or does it use SODIMMs?
>> Depending on the CPU architecture, the CPU 'brand' and even the model
>> of the CPU itself, the port will be done very differently. You'd first
>> want to find a mainboard that is as close as your current one, and
>> start modifying that, there isn't "one mainboard to use as base"
>> because the code, files, etc.. are almost unique depending on the
>> CPU/northbridge/southbridge model, so use the closest one as your
>> base.
>> As far as I know, the file board_info.txt is just information about
>> the board, it's not getting used by coreboot, it's more of an
>> indication for developers.
>> As for the other files, it will depend once again on your board. I'd
>> say Kconfig and devicetree.cb are mandatory, the rest may or may not
>> be mandatory depending on your hardware. The cmos.layout for example
>> isn't mandatory, but you'd probably need it if you enable CMOS support
>> in your KConfig, The 'spd' files containing the RAM's SPD EEPROM
>> information are mandatory only if your board has soldered RAM (common
>> in laptops but not in desktops), but they are not needed (and actually
>> can't be provided) if the motherboard has SODIMM slots instead. So it
>> all depends. Your best bet is to look at what's there and see if you
>> need it or not and if you do, understand what it's for and what needs
>> to be changed in order to match your board.
>> Don't forget that before you get your board to boot with coreboot, you
>> will probably have to flash it and brick your board 100 times, so make
>> sure you have a backup of your original ROM copied somewhere safe and
>> that you have the hardware to re-program the SPI flash externally (and
>> test that it works), before you attempt to flash it.
>> Also, make sure you are patient, and ready to learn!
>>
>> Good luck!
>> Youness.
>>
>>
>> On Mon, May 28, 2018 at 10:31 PM, Zvi Vered <veredz72 at gmail.com> wrote:
>> > Hello,
>> >
>> > I have to port coreboot to a new "Mainboard" not listed in menuconfig.
>> > Is there a basic "Mainboard" I should use as a starting point that will
>> > be
>> > copied to my board ?
>> >
>> > The file board_info.txt contains few parameters.
>> > How can I know the meaning of each parameter and its possible values ?
>> >
>> > The board kontron/kt690 for example contains few files like:
>> > cmos.layout,
>> > devicetree.cb, etc
>> > Are all those files mandatory ?
>> > Is there a list of mandatory files or routines required in order to port
>> > a
>> > board ?
>> >
>> > Your help is highly appreciated.
>> > Best regards,
>> > Zvika
>> >
>> > --
>> > coreboot mailing list: coreboot at coreboot.org
>> > https://mail.coreboot.org/mailman/listinfo/coreboot



More information about the coreboot mailing list