From 69f97fe149a00acc3e54a31d089c21358bd56418 Mon Sep 17 00:00:00 2001 From: Tim Crawford Date: Thu, 13 Oct 2022 17:46:26 -0600 Subject: [PATCH] Merge common EC directories Split the EC define into base and variant. Merge the 3 ATmega chips as atmega, and the 2 ITE chips as ite. Tested that the generated files are identical. Signed-off-by: Tim Crawford --- Makefile | 2 +- src/arch/avr/arch.mk | 4 ++-- src/board/arduino/mega2560/board.mk | 5 +++-- src/board/arduino/micro/board.mk | 5 +++-- src/board/arduino/uno/board.mk | 5 +++-- src/board/system76/addw1/board.mk | 3 ++- src/board/system76/addw2/board.mk | 3 ++- src/board/system76/bonw14/board.mk | 3 ++- src/board/system76/darp5/board.mk | 3 ++- src/board/system76/darp7/board.mk | 3 ++- src/board/system76/darp8/board.mk | 3 ++- src/board/system76/galp3-c/board.mk | 3 ++- src/board/system76/galp5/board.mk | 3 ++- src/board/system76/galp6/board.mk | 3 ++- src/board/system76/gaze15/board.mk | 3 ++- src/board/system76/gaze16-3050/board.mk | 3 ++- src/board/system76/gaze16-3060/board.mk | 3 ++- src/board/system76/gaze17-3050/board.mk | 3 ++- src/board/system76/gaze17-3060/board.mk | 3 ++- src/board/system76/lemp10/board.mk | 3 ++- src/board/system76/lemp11/board.mk | 3 ++- src/board/system76/lemp9/board.mk | 3 ++- src/board/system76/oryp5/board.mk | 3 ++- src/board/system76/oryp6/board.mk | 3 ++- src/board/system76/oryp7/board.mk | 3 ++- src/board/system76/oryp8/board.mk | 3 ++- src/board/system76/oryp9/board.mk | 3 ++- src/ec/{atmega2560 => atmega}/ec.mk | 0 src/ec/atmega328p/ec.mk | 3 --- src/ec/atmega32u4/ec.mk | 3 --- src/ec/it5570e/ec.mk | 8 -------- src/ec/it8587e/ec.mk | 6 ------ src/ec/ite/ec.mk | 18 ++++++++++++------ 33 files changed, 68 insertions(+), 57 deletions(-) rename src/ec/{atmega2560 => atmega}/ec.mk (100%) delete mode 100644 src/ec/atmega328p/ec.mk delete mode 100644 src/ec/atmega32u4/ec.mk delete mode 100644 src/ec/it5570e/ec.mk delete mode 100644 src/ec/it8587e/ec.mk diff --git a/Makefile b/Makefile index c9aaab8..c4fbeb7 100644 --- a/Makefile +++ b/Makefile @@ -42,7 +42,7 @@ include $(BOARD_DIR)/board.mk EC_DIR=src/ec/$(EC) SRC+=$(wildcard $(EC_DIR)/*.c) INCLUDE+=$(wildcard $(EC_DIR)/include/ec/*.h) $(EC_DIR)/ec.mk -CFLAGS+=-I$(EC_DIR)/include -D__EC__=$(EC) -D$(EC) +CFLAGS+=-I$(EC_DIR)/include -D__EC__=$(EC_VARIANT) -D$(EC_VARIANT) include $(EC_DIR)/ec.mk # The EC will define the architecture diff --git a/src/arch/avr/arch.mk b/src/arch/avr/arch.mk index 08dd6ec..0c58379 100644 --- a/src/arch/avr/arch.mk +++ b/src/arch/avr/arch.mk @@ -1,12 +1,12 @@ # SPDX-License-Identifier: GPL-3.0-only -CC=avr-gcc -mmcu=$(EC) +CC=avr-gcc -mmcu=$(EC_VARIANT) CFLAGS+=-Os -fstack-usage -Wall -Werror -Wl,--gc-sections -Wl,-u,vfprintf -lprintf_flt OBJ=$(sort $(patsubst src/%.c,$(BUILD)/%.o,$(SRC))) # Run EC rom in simulator sim: $(BUILD)/ec.elf - simavr $< --mcu $(EC) + simavr $< --mcu $(EC_VARIANT) # Convert from Intel Hex file to binary file $(BUILD)/ec.rom: $(BUILD)/ec.ihx diff --git a/src/board/arduino/mega2560/board.mk b/src/board/arduino/mega2560/board.mk index 238026a..d869795 100644 --- a/src/board/arduino/mega2560/board.mk +++ b/src/board/arduino/mega2560/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=atmega2560 +EC=atmega +EC_VARIANT=atmega2560 PORT=$(wildcard /dev/ttyACM*) CONSOLE_BAUD=1000000 @@ -10,4 +11,4 @@ console: sudo tio -b $(CONSOLE_BAUD) $(PORT) flash: $(BUILD)/ec.ihx - sudo avrdude -v -v -p $(EC) -c wiring -P $(PORT) -b 115200 -D -U flash:w:$<:i + sudo avrdude -v -v -p $(EC_VARIANT) -c wiring -P $(PORT) -b 115200 -D -U flash:w:$<:i diff --git a/src/board/arduino/micro/board.mk b/src/board/arduino/micro/board.mk index ea81ddb..2715587 100644 --- a/src/board/arduino/micro/board.mk +++ b/src/board/arduino/micro/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=atmega32u4 +EC=atmega +EC_VARIANT=atmega32u4 PORT=$(wildcard /dev/ttyACM*) CONSOLE_BAUD=1000000 @@ -10,4 +11,4 @@ console: sudo tio -b $(CONSOLE_BAUD) $(PORT) flash: $(BUILD)/ec.ihx - sudo avrdude -v -v -p $(EC) -c avr109 -P $(PORT) -b 115200 -D -U flash:w:$<:i + sudo avrdude -v -v -p $(EC_VARIANT) -c avr109 -P $(PORT) -b 115200 -D -U flash:w:$<:i diff --git a/src/board/arduino/uno/board.mk b/src/board/arduino/uno/board.mk index 96c1f4a..810b713 100644 --- a/src/board/arduino/uno/board.mk +++ b/src/board/arduino/uno/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=atmega328p +EC=atmega +EC_VARIANT=atmega328p PORT=$(wildcard /dev/ttyACM*) CONSOLE_BAUD=1000000 @@ -10,4 +11,4 @@ console: sudo tio -b $(CONSOLE_BAUD) $(PORT) flash: $(BUILD)/ec.ihx - sudo avrdude -v -v -p $(EC) -c arduino -P $(PORT) -b 115200 -D -U flash:w:$<:i + sudo avrdude -v -v -p $(EC_VARIANT) -c arduino -P $(PORT) -b 115200 -D -U flash:w:$<:i diff --git a/src/board/system76/addw1/board.mk b/src/board/system76/addw1/board.mk index eff3e59..b85427a 100644 --- a/src/board/system76/addw1/board.mk +++ b/src/board/system76/addw1/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it8587e +EC=ite +EC_VARIANT=it8587e # Include keyboard KEYBOARD=15in_102 diff --git a/src/board/system76/addw2/board.mk b/src/board/system76/addw2/board.mk index fda2357..df55d8e 100644 --- a/src/board/system76/addw2/board.mk +++ b/src/board/system76/addw2/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Include keyboard KEYBOARD=15in_102 diff --git a/src/board/system76/bonw14/board.mk b/src/board/system76/bonw14/board.mk index 0709d19..13f5801 100644 --- a/src/board/system76/bonw14/board.mk +++ b/src/board/system76/bonw14/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Include keyboard KEYBOARD=15in_102_nkey diff --git a/src/board/system76/darp5/board.mk b/src/board/system76/darp5/board.mk index 1e0c084..d7a9393 100644 --- a/src/board/system76/darp5/board.mk +++ b/src/board/system76/darp5/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it8587e +EC=ite +EC_VARIANT=it8587e # Include keyboard KEYBOARD=15in_102 diff --git a/src/board/system76/darp7/board.mk b/src/board/system76/darp7/board.mk index c24e306..18ae352 100644 --- a/src/board/system76/darp7/board.mk +++ b/src/board/system76/darp7/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/darp8/board.mk b/src/board/system76/darp8/board.mk index 6fb30e0..d901585 100644 --- a/src/board/system76/darp8/board.mk +++ b/src/board/system76/darp8/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/galp3-c/board.mk b/src/board/system76/galp3-c/board.mk index 017172b..ee1c6ba 100644 --- a/src/board/system76/galp3-c/board.mk +++ b/src/board/system76/galp3-c/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it8587e +EC=ite +EC_VARIANT=it8587e # Include keyboard KEYBOARD=14in_86 diff --git a/src/board/system76/galp5/board.mk b/src/board/system76/galp5/board.mk index 8e3c68e..ad1b1de 100644 --- a/src/board/system76/galp5/board.mk +++ b/src/board/system76/galp5/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/galp6/board.mk b/src/board/system76/galp6/board.mk index 0e7be31..263f2f9 100644 --- a/src/board/system76/galp6/board.mk +++ b/src/board/system76/galp6/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/gaze15/board.mk b/src/board/system76/gaze15/board.mk index aaaa4b6..b35aef0 100644 --- a/src/board/system76/gaze15/board.mk +++ b/src/board/system76/gaze15/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Include keyboard KEYBOARD=15in_102 diff --git a/src/board/system76/gaze16-3050/board.mk b/src/board/system76/gaze16-3050/board.mk index 8372865..bf283c8 100644 --- a/src/board/system76/gaze16-3050/board.mk +++ b/src/board/system76/gaze16-3050/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/gaze16-3060/board.mk b/src/board/system76/gaze16-3060/board.mk index 297a4da..cf7592b 100644 --- a/src/board/system76/gaze16-3060/board.mk +++ b/src/board/system76/gaze16-3060/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/gaze17-3050/board.mk b/src/board/system76/gaze17-3050/board.mk index 6d2d213..67dbb68 100644 --- a/src/board/system76/gaze17-3050/board.mk +++ b/src/board/system76/gaze17-3050/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/gaze17-3060/board.mk b/src/board/system76/gaze17-3060/board.mk index 4259fd8..e0ff8cf 100644 --- a/src/board/system76/gaze17-3060/board.mk +++ b/src/board/system76/gaze17-3060/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/lemp10/board.mk b/src/board/system76/lemp10/board.mk index 22957e7..664c7bc 100644 --- a/src/board/system76/lemp10/board.mk +++ b/src/board/system76/lemp10/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/lemp11/board.mk b/src/board/system76/lemp11/board.mk index 5469c0d..cbc0559 100644 --- a/src/board/system76/lemp11/board.mk +++ b/src/board/system76/lemp11/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/lemp9/board.mk b/src/board/system76/lemp9/board.mk index 2f545f8..7b5a70d 100644 --- a/src/board/system76/lemp9/board.mk +++ b/src/board/system76/lemp9/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Include keyboard KEYBOARD=14in_83 diff --git a/src/board/system76/oryp5/board.mk b/src/board/system76/oryp5/board.mk index a6e10f9..f791bf5 100644 --- a/src/board/system76/oryp5/board.mk +++ b/src/board/system76/oryp5/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it8587e +EC=ite +EC_VARIANT=it8587e # Include keyboard KEYBOARD=15in_102 diff --git a/src/board/system76/oryp6/board.mk b/src/board/system76/oryp6/board.mk index c91fca6..d829008 100644 --- a/src/board/system76/oryp6/board.mk +++ b/src/board/system76/oryp6/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Include keyboard KEYBOARD=15in_102 diff --git a/src/board/system76/oryp7/board.mk b/src/board/system76/oryp7/board.mk index c91fca6..d829008 100644 --- a/src/board/system76/oryp7/board.mk +++ b/src/board/system76/oryp7/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Include keyboard KEYBOARD=15in_102 diff --git a/src/board/system76/oryp8/board.mk b/src/board/system76/oryp8/board.mk index 16b09ee..1073f9a 100644 --- a/src/board/system76/oryp8/board.mk +++ b/src/board/system76/oryp8/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/board/system76/oryp9/board.mk b/src/board/system76/oryp9/board.mk index b21221e..9b9d5d8 100644 --- a/src/board/system76/oryp9/board.mk +++ b/src/board/system76/oryp9/board.mk @@ -1,6 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-only -EC=it5570e +EC=ite +EC_VARIANT=it5570e # Enable eSPI CFLAGS+=-DEC_ESPI=1 diff --git a/src/ec/atmega2560/ec.mk b/src/ec/atmega/ec.mk similarity index 100% rename from src/ec/atmega2560/ec.mk rename to src/ec/atmega/ec.mk diff --git a/src/ec/atmega328p/ec.mk b/src/ec/atmega328p/ec.mk deleted file mode 100644 index dbdd77d..0000000 --- a/src/ec/atmega328p/ec.mk +++ /dev/null @@ -1,3 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-only - -ARCH=avr diff --git a/src/ec/atmega32u4/ec.mk b/src/ec/atmega32u4/ec.mk deleted file mode 100644 index dbdd77d..0000000 --- a/src/ec/atmega32u4/ec.mk +++ /dev/null @@ -1,3 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-only - -ARCH=avr diff --git a/src/ec/it5570e/ec.mk b/src/ec/it5570e/ec.mk deleted file mode 100644 index d96ae88..0000000 --- a/src/ec/it5570e/ec.mk +++ /dev/null @@ -1,8 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-only - -# SRAM is 6144 bytes, only 4096 bytes are mapped at address 0. Region at -# 0x0E00-0x1000 is used for AP communication. So this is brought down to 2048, -# which matches it8587e limits -SRAM_SIZE=2048 - -include src/ec/ite/ec.mk diff --git a/src/ec/it8587e/ec.mk b/src/ec/it8587e/ec.mk deleted file mode 100644 index ae5b7f1..0000000 --- a/src/ec/it8587e/ec.mk +++ /dev/null @@ -1,6 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-only - -# SRAM is 4096 bytes, but SRAM at address 2048 is used for scratch ROM -SRAM_SIZE=2048 - -include src/ec/ite/ec.mk diff --git a/src/ec/ite/ec.mk b/src/ec/ite/ec.mk index 4a2f2ce..bb9ccb6 100644 --- a/src/ec/ite/ec.mk +++ b/src/ec/ite/ec.mk @@ -1,12 +1,18 @@ # SPDX-License-Identifier: GPL-3.0-only +ifeq ($(EC_VARIANT), it8587e) +# SRAM is 4096 bytes, but SRAM at address 2048 is used for scratch ROM +SRAM_SIZE=2048 +else ifeq ($(EC_VARIANT), it5570e) +# SRAM is 6144 bytes, only 4096 bytes are mapped at address 0. Region at +# 0x0E00-0x1000 is used for AP communication. So this is brought down to 2048, +# which matches it8587e limits +SRAM_SIZE=2048 +else +$(error Unsupported EC: $(EC_VARIANT)) +endif + ARCH=8051 # 64 KB is the max without banking CODE_SIZE=65536 - -# Include ITE common source -EC_ITE_COMMON_DIR=src/ec/ite -SRC+=$(wildcard $(EC_ITE_COMMON_DIR)/*.c) -INCLUDE+=$(wildcard $(EC_ITE_COMMON_DIR)/include/ec/*.h) $(EC_ITE_COMMON_DIR)/ec.mk -CFLAGS+=-I$(EC_ITE_COMMON_DIR)/include