[coreboot] OPTIONROM_MEM settings problem

Myles Watson mylesgw at gmail.com
Thu Apr 16 19:35:56 CEST 2009


Kevin,

I have two sizes of flash chips because I have a BIOS savior.  My 512K
chip works fine, but my 1M chip doesn't.

Here's my setting from config.h

// When option roms are not pre-deployed, SeaBIOS can copy an optionrom
// from flash for up to 2 devices.
#define OPTIONROM_VENDEV_1 0x47521002
#define OPTIONROM_MEM_1 0xfff00000 /* 512K uses 0xfff80000 */

Either way it looks at fff80000 for the ROM.  I did a hexdump of both
builds, and the only difference is

1M:
00003590  04 50 ff 74 24 04 68 22  4b 0f 00 e8 b6 dd ff ff  |.P.t$.h"K.......|
000035a0  83 c4 0c 81 7c 24 04 52  47 02 10 75 14 b8 00 00  |....|$.RG..u....|
000035b0  f0 ff e8 5f ff ff ff 89  c3 85 c0 0f 85 76 01 00  |..._.........v..|
000035c0  00 ff 34 24 68 4e 4b 0f  00 e8 88 dd ff ff 89 f0  |..4$hNK.........|
000035d0  0d 0c 00 00 80 ba f8 0c  00 00 ef b2 fe ec 0f b6  |................|

512K:
00003590  04 50 ff 74 24 04 68 22  4b 0f 00 e8 b6 dd ff ff  |.P.t$.h"K.......|
000035a0  83 c4 0c 81 7c 24 04 52  47 02 10 75 14 b8 00 00  |....|$.RG..u....|
000035b0  f8 ff e8 5f ff ff ff 89  c3 85 c0 0f 85 76 01 00  |..._.........v..|
000035c0  00 ff 34 24 68 4e 4b 0f  00 e8 88 dd ff ff 89 f0  |..4$hNK.........|
000035d0  0d 0c 00 00 80 ba f8 0c  00 00 ef b2 fe ec 0f b6  |................|

Notice the byte at 35b0.  I checked to make sure that the 1M version
is the one in the 1M chip, but it won't work unless I put the video
BIOS at fff80000.  I put it in both places with dd since there was
plenty of space, but I couldn't see a reason why it isn't working.

Do you have any debugging suggestions?

Thanks,
Myles

PS I think a comment about the order of OPTIONROM_VENDEV_* would be
helpful, since it is device then vendor ID.  I know it matches the
hardware, but I got it wrong the first time.




More information about the coreboot mailing list