Hello Brett,
Having overall experience with INTEL, I should say that the Truth is a bit more complicated. ;-)
In the simplified view, there are two points when bringing any INTEL CPU from reset, i should say. The first is: HW strap conditions, and these need to be set appropriately, depending upon what the HW config will be. This point I mentioned since I am not sure if XDP port only depends upon TXE, I do not really know with certainty for BYT, but I do know for some other families HW straps also need to be set properly for XDP to be enabled. Maybe there are two requirements for XDP to be enabled, so I am really not sure about this, this is why I am writing this email.
So, the question I have here is: does BYT have to have one of the HW straps properly set (maybe it is already set by default design) for XDP to be enabled?
The another point why TXE HW/FW engine is mainly used is the following: TXE Firmware, the Trusted eXecution Engine, provide features to prevent BIOS tampering, however information about TXE is considered Intel Confidential and require that you have CNDA account.
Usually, FSP + Coreboot (as you have mention already), is built on the top of normal BIOS (last 2M, maybe these days 3M, since FSP and Coreboot are growing) , since normal BIOS includes SW straps (second point), which are also set by default (in BIOS). In this scenario, FIT (formerly FITC) tool is not required (if satisfied with default SW straps, which 99% developers are).
Here is INTEL site where there are overall set of BYT documents, but many of them are locked (as well as 514482):
[image: Inline image 1]
http://www.intel.com/content/www/us/en/embedded/products/bay-trail/software-...
Hope this helps also,
Zoran
On Thu, Jul 14, 2016 at 9:51 PM, Testerman, Brett (US COM) < Brett.Testerman@cobham.com> wrote:
Mayuri,
Your best bet with all of this is to contact Intel and get a privileged access account. If that is not possible or practical then you need to do some reverse engineering.
First of all, go get this document from Intel’s web site:
514482_ByTti_SoC_SPIFlashProgGuide_Rev1p0.pdf
I don’t have a specific link to it but I know it is publically accessible. Search on the leading 6 digit number or “SPI Flash Programming Guide”. This document fully describes the descriptor tables and how to use them. The FITC tool is the preferred way but you can bit-bang them with the info provided in that doc.
As for the TXE you will need to get that from Intel – it is not publically available. But I can say if you are running on the E3800 family (Bay Trail) then you don’t need it. The chip will boot without it but the XDP port will be locked out. You can also use the information from the programming guide to locate a TXE image in a 3rd party boot image and extract it out of that. I think that is what the idftool does.
The coreboot image will need to be located at the very end of flash because that is where the hardware reset vector is. The nice thing about that is once you have set up the descriptors you don’t have to rebuild/reprogram the entire flash image every time. For example, if your coreboot image is only 1MB in size then you only need to reprogram the last 1 megabyte of flash and leave the rest alone. Saves a ton of time.
There has been a lot of talk about this issue on Intel’s embedded communities forums. Check out this thread:
https://embedded.communities.intel.com/thread/12354
Hope this helps!
Brett
*From:* coreboot [mailto:coreboot-bounces@coreboot.org] *On Behalf Of *Stefan Reinauer *Sent:* Wednesday, July 13, 2016 4:30 PM *To:* Mayuri Tendulkar *Cc:* Martin Roth; coreboot *Subject:* Re: [coreboot] TXE and Descriptor bin management in Coreboot
*** Please note that the Sender of this email is from outside the Cobham NA IT Hub ** *
- Mayuri Tendulkar mayuri.tendulkar@aricent.com [160714 00:50]:
Ok, so do we need to ask Intel if we use Intel baytrail processor? How
we can create this descriptor.bin?
Please have a look at util/ifdtool and util/ifdfake for our tools dealing with Intel Firmware Descriptors. The most comprehensive way of producing the information you need is by using Intel's fitc tool, however.
If you are willing to put some development effort into this, we could use help, merging ifdtool and ifdfake, as well as incorporating more fitc like capabilities into the tool.
Stefan
-- coreboot mailing list: coreboot@coreboot.org https://www.coreboot.org/mailman/listinfo/coreboot
-- coreboot mailing list: coreboot@coreboot.org https://www.coreboot.org/mailman/listinfo/coreboot