diff --git a/src/sam4e8e/Makefile b/src/sam4e8e/Makefile index 19d270d6..4eda793d 100644 --- a/src/sam4e8e/Makefile +++ b/src/sam4e8e/Makefile @@ -24,7 +24,7 @@ src-$(CONFIG_SERIAL) += sam4e8e/serial.c generic/serial_irq.c src-$(CONFIG_HAVE_GPIO) += sam4e8e/gpio.c sam4e8e/afec.c src-y += generic/crc16_ccitt.c generic/alloc.c src-y += generic/armcm_irq.c generic/timer_irq.c -src-y += sam4e8e/main.c sam4e8e/timer.c +src-y += sam4e8e/main.c sam4e8e/sam4_cache.c sam4e8e/timer.c # Build the additional hex output file target-y += $(OUT)klipper.bin diff --git a/src/sam4e8e/main.c b/src/sam4e8e/main.c index 38e9653a..f3666075 100644 --- a/src/sam4e8e/main.c +++ b/src/sam4e8e/main.c @@ -43,12 +43,6 @@ int main(void) { SystemInit(); - - // Enable Cache - if (!(CMCC->CMCC_SR & CMCC_SR_CSTS)) - CMCC->CMCC_CTRL = CMCC_CTRL_CEN; - - // Start main loop sched_main(); return 0; } diff --git a/src/sam4e8e/sam4_cache.c b/src/sam4e8e/sam4_cache.c new file mode 100644 index 00000000..75459660 --- /dev/null +++ b/src/sam4e8e/sam4_cache.c @@ -0,0 +1,16 @@ +// SAM4 cache enable +// +// Copyright (C) 2018 Kevin O'Connor +// +// This file may be distributed under the terms of the GNU GPLv3 license. + +#include "sam4e.h" // CMCC +#include "sched.h" // DECL_INIT + +void +sam4_cache_init(void) +{ + if (!(CMCC->CMCC_SR & CMCC_SR_CSTS)) + CMCC->CMCC_CTRL = CMCC_CTRL_CEN; +} +DECL_INIT(sam4_cache_init);