diff --git a/src/mainboard/system76/lemp9/Makefile.inc b/src/mainboard/system76/lemp9/Makefile.inc index 4d9fdec3fd..b9082d23f8 100644 --- a/src/mainboard/system76/lemp9/Makefile.inc +++ b/src/mainboard/system76/lemp9/Makefile.inc @@ -1,4 +1,3 @@ bootblock-y += bootblock.c ramstage-y += ramstage.c hda_verb.c - -SPD_SOURCES = samsung-K4AAG165WA-BCTD +subdirs-y += spd diff --git a/src/mainboard/system76/lemp9/spd/Makefile.inc b/src/mainboard/system76/lemp9/spd/Makefile.inc new file mode 100644 index 0000000000..c5797ef602 --- /dev/null +++ b/src/mainboard/system76/lemp9/spd/Makefile.inc @@ -0,0 +1,37 @@ +## +## This file is part of the coreboot project. +## +## Copyright (C) 2019 System76 +## Copyright (C) 2018 Intel Corporation. +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; version 2 of the License. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## + +SPD_SOURCES = samsung-K4AAG165WA-BCTD + +SPD_BIN = $(obj)/spd.bin + +ifeq ($(SPD_SOURCES),) + SPD_DEPS := $(error SPD_SOURCES is not set. Variant must provide this) +else + SPD_DEPS := $(foreach f, $(SPD_SOURCES), src/mainboard/$(MAINBOARDDIR)/spd/$(f).spd.hex) +endif + +# Include spd ROM data +$(SPD_BIN): $(SPD_DEPS) + for f in $+; \ + do for c in $$(cat $$f | grep -v ^#); \ + do printf $$(printf '\\%o' 0x$$c); \ + done; \ + done > $@ + +cbfs-files-y += spd.bin +spd.bin-file := $(SPD_BIN) +spd.bin-type := spd