FYI: I used put spd data in a stand alone C source code so that I can edit with vi directly.
unsigned char global_spd_data[256] = __attribute__ ((section("spd_data"))) { 0x??, 0x??, ... }; Note: I also put spd_data in the spd data section that is the end of my binary xloader code. I can easily edit with bvi editor too. https://en.wikipedia.org/wiki/Serial_presence_detect On Fri, Oct 23, 2015 at 11:35 AM, Aaron Durbin <adur...@google.com> wrote: > This one's for Ron. > > On Fri, Oct 23, 2015 at 10:32 AM, ron minnich <rminn...@gmail.com> wrote: > > Build the tool in go. It's trivial. If you have an idea how it ought to > work > > I can set it up in the playground in a few minutes. > > > > ron > > > > On Fri, Oct 23, 2015 at 8:24 AM Patrick Georgi <pgeo...@google.com> > wrote: > >> > >> Hi, > >> > >> Some mainboards come with soldered-on memory without SPD ROM. For > >> these, we carry the SPD data in coreboot. > >> > >> Currently, they're stored in a hexdump format that is then converted > >> to binary at build time. The various mechanisms of doing so fail on > >> some platform or another: > >> - "echo -e -n $stuff" isn't well-liked by some shells (emits "e -n > >> $stuff") > >> - "printf '\x42'" isn't well-liked by some shells (or /usr/bin/printf > >> tools) that don't support hexadecimal formats > >> - "printf '\0377'" isn't well-liked by some non-conforming, but > existing > >> shells > >> - xxd -rg1 $file > $file.bin requires xxd, which comes with vim and > >> may just not exist > >> > >> I see essentially two ways out of this, before we can start reducing > >> duplication across the tree in that area: > >> We could build our own tool to parse hex files and dump binary, or we > >> could ship SPD data as binary from the start (and only have to > >> concatenate them). > >> > >> The second option has the appeal of being much simpler (and there > >> isn't really a "preferred form" for editing SPD data that I'm aware of > >> - is there?), but looks icky at a glance because it's binary (but it's > >> really just as impenetrable as the equivalent hexdump). > >> > >> So what do these files contain? Parameters (as in: facts) about the > >> hardware's size, layout, and timing, and a bunch of vendor/model > >> identifier strings. > >> > >> > >> So, is there a third option that I'm missing? Other opinions? > >> Patrick > >> -- > >> Google Germany GmbH, ABC-Str. 19, 20354 Hamburg > >> Registergericht und -nummer: Hamburg, HRB 86891, Sitz der Gesellschaft: > >> Hamburg > >> Geschäftsführer: Matthew Scott Sucherman, Paul Terence Manicle > >> > >> -- > >> coreboot mailing list: coreboot@coreboot.org > >> http://www.coreboot.org/mailman/listinfo/coreboot > > > > > > -- > > coreboot mailing list: coreboot@coreboot.org > > http://www.coreboot.org/mailman/listinfo/coreboot > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot > -- Sheng-Liang Song | Software Engineer | s...@google.com | 650-537-5017
-- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot