diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f55824e..5b77088 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,9 +20,23 @@ variables: GIT_SUBMODULE_STRATEGY: recursive stages: # List of stages for jobs, and their order of execution + - toolchain - build -build-fpga: # This job runs in the build stage, which runs first. +build toolchain: + tags: + - linux + stage: toolchain + script: + - source init_env.sh + - cd sw/cc65 + - make -j + artifacts: + paths: + - sw/cc65/bin + - sw/cc65/lib + +build fpga: # This job runs in the build stage, which runs first. tags: - efinity - linux @@ -32,15 +46,36 @@ build-fpga: # This job runs in the build stage, which runs first. - cd hw/efinix_fpga - make -build-sim: +build sim: tags: - iverilog - linux stage: build script: - source init_env.sh - - cd sw/cc65 - - make -j - - cd ../.. - cd hw/efinix_fpga/simulation - make + dependencies: + - build toolchain + +build bios: + tags: + - linux + stage: build + script: + - source init_env.sh + - cd sw/ + - make bios + dependencies: + - build toolchain + +build kernel: + tags: + - linux + stage: build + script: + - source init_env.sh + - cd sw/ + - make kernel + dependencies: + - build toolchain \ No newline at end of file diff --git a/.gitmodules b/.gitmodules index 0a0a7e3..da7e628 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "hw/efinix_fpga/simulation/src/verilog-6502"] path = hw/efinix_fpga/simulation/src/verilog-6502 url = https://git.byronlathi.com/bslathi19/verilog-6502 +[submodule "hw/efinix_fpga/simulation/src/verilog-sd-emulator"] + path = hw/efinix_fpga/simulation/src/verilog-sd-emulator + url = https://git.byronlathi.com/bslathi19/verilog-sd-emulator diff --git a/hw/efinix_fpga/simulation/src/verilog-sd-emulator b/hw/efinix_fpga/simulation/src/verilog-sd-emulator new file mode 160000 index 0000000..7fb88c9 --- /dev/null +++ b/hw/efinix_fpga/simulation/src/verilog-sd-emulator @@ -0,0 +1 @@ +Subproject commit 7fb88c9ee1ca65dd5bfd10b2e0f6331e958abdd7 diff --git a/sw/Makefile b/sw/Makefile index c379713..a47ed42 100644 --- a/sw/Makefile +++ b/sw/Makefile @@ -1,6 +1,6 @@ -.PHONY: all install bootloader kernel clean +.PHONY: all install bios kernel clean -all: toolchain bootloader kernel +all: toolchain bios kernel install: all sh script/format_disk.sh @@ -9,8 +9,8 @@ install: all toolchain: @$(MAKE) -j4 -C cc65 -bootloader: - @$(MAKE) -C bootloader +bios: + @$(MAKE) -C bios kernel: @$(MAKE) -C kernel