Hi Cameron, coreboot,

Yes I did indeed intend to reply to all in my previous mail, apologies :) So the previous two messages are now also included in this thread.

I've gone through the U-Boot readme and I see what you mean. However, with the uboot patch that Intel provides, the CONFIG_OF_EMBED option is enabled instead of CONFIG_OF_SEPARATE, like the U-Boot instructions suggest. The Intel-provided patch however does not change the manner in which the coreboot payload is included, i.e. the patch does not cause this command to be issued during coreboot build:
./build/util/cbfstool/cbfstool build/coreboot.rom add-flat-binary -f u-boot-dtb.bin -n fallback/payload -c lzma -l 0x1110000 -e 0x1110000

So after tweaking my U-Boot build to force the include of the coreboot video framebuffer (which I don't think was a problem previously, but it's included explicitly now, just for in case), I built U-Boot and it only produces u-boot.bin, but not u-boot-dtb.bin (contrary to expected result from readme). Thereafter I built coreboot with payload set to "None" via make menuconfig, and thereafter ran the above CBFS command (but using u-boot.bin instead of u-boot-dtb.bin). This build of coreboot + U-Boot still does not detect any USB controller, and I also get the same SPI bus error that you do after running "sf probe", as follows:

=> usb start
starting USB...
No controllers found
=> sf probe 0
Invalid bus 0 (err=-19)
Failed to initialize SPI flash at 0:0 (error -19)
=> sf probe 1
Invalid bus 0 (err=-19)
Failed to initialize SPI flash at 0:1 (error -19)

So from what I can tell, I did everything the instructions said to propagate the coreboot device tree to U-Boot. Can anybody tell me how do I know whether my coreboot device tree was propagated correctly to my U-Boot payload?

Many thanks!
Tahnia


On Tue, Oct 10, 2017 at 1:43 PM, Cameron Craig <Cameron.Craig@exterity.com> wrote:

Hi Tahnia,

 

Did you mean to reply without including coreboot@coreboot.org? If you did mean to include them I would just reply to my message again, except hit Reply All J The mailing list may have advice on this

 

In the meantime, this is what led me to believe it is a device tree issue: https://github.com/u-boot/u-boot/blob/master/doc/README.x86#L405

“With the default configuration, U-Boot is set up to use a separate Device Tree Blob (dtb).”

 

We are booting from SPI flash and U-Boot also fails to find it L See log attached (not that it’s that interesting)

 

It’s still early days, haven’t looked into this in depth yet. I’m not ruling out anything at the moment

 

Cheers,

Cameron

 

 

Cameron Craig | Graduate Software Engineer | Exterity Limited
tel: +44 1383 828 250 | fax:    
e: Cameron.Craig@exterity.com | w: www.exterity.com   

 


From: Tahnia Lichtenstein [mailto:unlich@gmail.com]
Sent: 10 October 2017 10:06
To: Cameron Craig
Subject: Re: [coreboot] Intel Leaf Hill Coreboot Trouble

 

Hi Cameron,

 

I may be wrong, but I don't think it is related to the device tree . 

 

The reason is because there is a device tree configured in the coreboot release (see coreboot\src\mainboard\intel\leafhill\devicetree.cb) and to the best of my understanding, the device tree information gets passed from coreboot to the payload during run-time. So I think U-Boot has access to this device tree.

 

Another reason is because I connected a SATA SDD to the board, and this drive is detected by U-Boot... If U-Boot had no device tree, then it would not be able to detect the SSD, I think. (See attached log for U-Boot serial output.)

 

So my thoughts are that it is a USB specific problem in U-Boot... judging from some U-Boot posts it seems that other people also struggle to get USB working. So yes, I think you are correct in saying the U-Boot mailing list is a better place to try solve this USB-related problem :)

 

I also tried some other self-compiled payloads in the meantime, which I had different trouble with, and started a new thread for those.

 

Tahnia

 

On Fri, Oct 6, 2017 at 5:42 PM, Cameron Craig <Cameron.Craig@exterity.com> wrote:

Hi Tahnia,

> I am unfortunately not able to help you, since I myself am still new to coreboot (and to BIOS development in general).
No worries, we'll get there eventually :)

> When you ran the Intel-provided version (stitched with the Windows tool), did you experience any similar problems with the USB controller in U-Boot? If so, did you manage to solve it?
We are looking at this at the moment. Early investigation suggests that U-Boot needs a device tree for Leaf Hill. Without that, U-Boot isn't aware of ant USB controllers, SPI Flash, PCI devices or anything.
That's all I know at the moment, you might be better asking in the U-Boot mailing list.

Unfortunately it looks like Intel don't bother providing a device tree for Leafhill. So we may end up writing our own, which I hear is a bit pernickety.

Cheers,
Cameron


Cameron Craig | Graduate Software Engineer | Exterity Limited
tel: +44 1383 828 250 | fax:  | mobile:
e: Cameron.Craig@exterity.com | w: www.exterity.com


______________________________________________________________________
This email has been scanned by the Symantec Email Security.cloud service.
For more information please visit http://www.symanteccloud.com
______________________________________________________________________

 


______________________________________________________________________
This email has been scanned by the Symantec Email Security.cloud service.
For more information please visit http://www.symanteccloud.com
______________________________________________________________________


______________________________________________________________________
This email has been scanned by the Symantec Email Security.cloud service.
For more information please visit http://www.symanteccloud.com
______________________________________________________________________