Attention is currently required from: Nico Huber, Michał Żygowski, Paul Menzel. Michael Niewöhner has posted comments on this change. ( https://review.coreboot.org/c/flashrom/+/55715 )
Change subject: ite_ec: Implement support for flashing ITE ECs found on TUXEDO laptops ......................................................................
Patch Set 13:
(1 comment)
File ite_ec.c:
https://review.coreboot.org/c/flashrom/+/55715/comment/a9260ea9_773456f9 PS13, Line 78: struct ite_string { L140CU signatures: eflash: A5 A5 A5 A5 A5 A5 A5 94 85 12 5A 5A AA 00 55 55 spi: A5 A5 A5 A5 A5 A5 A5 95 85 12 5A 5A AA 7F 55 55
Some details on the signature:
Mirroring is done from external SPI flash to eFlash. There's a "mirror once" or "always mirror" feature, controlled by the FW.
A5 A5 A5 A5 A5 A5 TT UU 85 12 VV WW AA XX YY ZZ
TT: bit 0: eSPI/LPC mode 0: eSPI -> TT=A4 1: LPC -> TT=A5
UU: bit 7: PWM blinking during mirroring 0: enable 1: disable bit 6: use internal clock until external crystal is ready 0: disable 1: enable (only valid when bit 4 = 0) bit 5: FSPI mirror function 0: enable (XX must be set) 1: disable (XX must be AA) bit 4: 32.768 kHz source 0: external crystal 1: internal OSC, crystal-free mode bit 3: ec code base mode 0: implicit - YYZZ must be 5555 1: explicit bit 2: CRC-16 check after mirror 0: enable, VVWW must be CRC-16 of mirrored region 1: disable bit 1: must be 0 bit 0: PWM selector for blinking 0: PWM0 1: PWM1
XX: mirror size if mirror enabled: XX = (size - 1); e.g. 128k = 7F must be a multiple of 4k else AA
VVWW: CRC-16 of mirrored region, if CRC enabled; else 5A 5A
YYZZ: 5555 if implicit format used or signature on e-flash (code base is the start of the 4k block, where the signature is located) else if explicit format: YYZZ = BASE[23:12]