diff options
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/Makefile.mk | 1 | ||||
-rw-r--r-- | src/cpu/via/Kconfig | 1 | ||||
-rw-r--r-- | src/cpu/via/Makefile.mk | 3 | ||||
-rw-r--r-- | src/cpu/via/c7/Kconfig | 17 | ||||
-rw-r--r-- | src/cpu/via/c7/Makefile.mk | 6 | ||||
-rw-r--r-- | src/cpu/via/car/cache_as_ram.S | 13 | ||||
-rw-r--r-- | src/cpu/via/car/exit_car.S | 8 |
7 files changed, 49 insertions, 0 deletions
diff --git a/src/cpu/Makefile.mk b/src/cpu/Makefile.mk index af2402742f..0afe454c1e 100644 --- a/src/cpu/Makefile.mk +++ b/src/cpu/Makefile.mk @@ -6,6 +6,7 @@ subdirs-y += amd subdirs-y += armltd subdirs-y += intel +subdirs-y += via subdirs-$(CONFIG_ARCH_X86) += x86 subdirs-$(CONFIG_CPU_QEMU_X86) += qemu-x86 subdirs-$(CONFIG_CPU_POWER9) += power9 diff --git a/src/cpu/via/Kconfig b/src/cpu/via/Kconfig new file mode 100644 index 0000000000..20f7c95a16 --- /dev/null +++ b/src/cpu/via/Kconfig @@ -0,0 +1 @@ +source "src/cpu/via/*/Kconfig" diff --git a/src/cpu/via/Makefile.mk b/src/cpu/via/Makefile.mk new file mode 100644 index 0000000000..e8b7820bdf --- /dev/null +++ b/src/cpu/via/Makefile.mk @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +subdirs-$(CONFIG_CPU_VIA_C7) += c7 diff --git a/src/cpu/via/c7/Kconfig b/src/cpu/via/c7/Kconfig new file mode 100644 index 0000000000..df81b3f84e --- /dev/null +++ b/src/cpu/via/c7/Kconfig @@ -0,0 +1,17 @@ +## SPDX-License-Identifier: GPL-2.0-only + +config CPU_VIA_C7 + bool + select ARCH_X86 + select NO_SMM + select SSE2 + select UNKNOWN_TSC_RATE + select UDELAY_LAPIC + select LAPIC_MONOTONIC_TIMER + +if CPU_VIA_C7 + +config DCACHE_BSP_STACK_SIZE + default 0x1000 + +endif diff --git a/src/cpu/via/c7/Makefile.mk b/src/cpu/via/c7/Makefile.mk new file mode 100644 index 0000000000..0890cee18b --- /dev/null +++ b/src/cpu/via/c7/Makefile.mk @@ -0,0 +1,6 @@ +## SPDX-License-Identifier: GPL-2.0-only + +bootblock-y += ../car/cache_as_ram.S +bootblock-y += ../../intel/car/bootblock.c + +postcar-y += ../car/exit_car.S diff --git a/src/cpu/via/car/cache_as_ram.S b/src/cpu/via/car/cache_as_ram.S new file mode 100644 index 0000000000..5c5066d7ea --- /dev/null +++ b/src/cpu/via/car/cache_as_ram.S @@ -0,0 +1,13 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +.section .init, "ax", @progbits + +.global bootblock_pre_c_entry + +.code32 +bootblock_pre_c_entry: + call bootblock_c_entry_bist + +.Lhlt: + hlt + jmp .Lhlt diff --git a/src/cpu/via/car/exit_car.S b/src/cpu/via/car/exit_car.S new file mode 100644 index 0000000000..0f1b227c2d --- /dev/null +++ b/src/cpu/via/car/exit_car.S @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +.global chipset_teardown_car + +.code32 +chipset_teardown_car: + /* Return to caller. */ + jmp *%esp |