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