On 29.03.19 19:08, Rafael Send wrote: > Hi Nico- > Can you clarify what you mean by coreboot on x86 is special?
on x86, there are two ways to access a SPI flash chip: 1. you can ask the SPI controller via a register based interface to access the flash chip. 2. by default, the flash chip contents of the BIOS region* of the flash chip is memory mapped (i.e. you can read from it just like you read from RAM). 1. may support >16MiB chips/regions. 2. is usually limited to 8MiB or 16MiB depending on the chipset. I would guess 16MiB in your case, but I can't promise. 2. is used by coreboot. However, with some additional code you can also use 1. *Intel shares the flash chip with other chipset components, e.g. ME firmware. > > Does that mean even if 3-byte addresses are supported (which would allow > addressing more than 128Mb / 16MiB of memory), it specifically doesn't work > on x86? No. The x86 thing is just a current software limitation that can be lifted. But still, there may be chips (e.g. EC) between the flash and the Intel chipset that may have their own limits. > > I'm looking at the coreboot port that was done for the Thinkpad X210, which > is a Chinese custom motherboard that updates the X201 form factor with an > i7-8650U / i7-8550u / i5-8250U CPU, and just for the hell of it I'm > wondering what the largest piece of BIOS memory is I can get on there. > Hardware-wise, I can get up to 512Mb / 64MiB into the chip form factor. If > we can address it, that opens up interesting possibilities for embedding > full OS distributions there (such as my previous question about TinyCore). The chipset supports up to two chips of 64MiB each. But I don't know if the flash is directly connected. In case of a full OS in flash, I would suggest a SPI driver in the OS kernel, anyway. Otherwise, you'd have to let coreboot load a lot of data from flash at once and that would slow it down (but that doesn't have to be a concern). Nico _______________________________________________ coreboot mailing list -- [email protected] To unsubscribe send an email to [email protected]

