Skip to content
Snippets Groups Projects
Commit 26c50522 authored by Oleg Hahm's avatar Oleg Hahm
Browse files

simplified and unified cpu build structure

parent 55f31a48
No related branches found
No related tags found
No related merge requests found
Showing
with 47 additions and 104 deletions
DIRS = $(RIOTCPU) core drivers sys
DIRS = $(RIOTCPU)/$(CPU) core drivers sys
.PHONY: all clean doc
......
......@@ -23,7 +23,7 @@ export CFLAGS += -DVERSION=\"$(GIT_VERSION)\"
.PHONY: clean
include $(RIOTCPU)/Makefile.base
include $(RIOTCPU)/$(CPU)/Makefile.include
include $(RIOTBOARD)/$(BOARD)/Makefile.include
$(BINDIR)$(MODULE).a: $(OBJ) $(ASMOBJ)
......
......@@ -21,7 +21,7 @@ export BINDIR =$(CURDIR)/bin/
# mandatory includes!
include $(RIOTBOARD)/$(BOARD)/Makefile.include
include $(RIOTCPU)/Makefile.include
include $(RIOTCPU)/$(CPU)/Makefile.include
include $(RIOTBASE)/Makefile.modules
# your binaries to link
......
ifeq ($(CPU),lpc1768)
DIRS = lpc1768
endif
ifeq ($(CPU),lpc2387)
DIRS = arm_common lpc_common lpc2387
endif
ifeq ($(CPU),mc1322x)
DIRS = arm_common mc1322x
endif
ifeq ($(CPU),cc430)
DIRS = msp430-common cc430
endif
ifeq ($(CPU),msp430x16x)
DIRS = msp430-common msp430x16x
endif
ifeq ($(CPU),native)
DIRS = native
endif
.PHONY: cpus
.PHONY: $(DIRS)
cpus: $(DIRS)
$(DIRS):
@"$(MAKE)" -C $@
clean:
@"$(MAKE)" -C lpc1768 clean
@"$(MAKE)" -C lpc2387 clean
@"$(MAKE)" -C mc1322x clean
@"$(MAKE)" -C lpc_common clean
@"$(MAKE)" -C arm_common clean
@"$(MAKE)" -C cc430 clean
@"$(MAKE)" -C msp430-common clean
@"$(MAKE)" -C msp430x16x clean
@"$(MAKE)" -C native clean
ifeq ($(CPU),lpc1768)
INCLUDES += -I$(MAKEBASE)/cpu/lpc1768/include
endif
ifeq ($(CPU),lpc2387)
INCLUDES += -I$(MAKEBASE)/cpu/arm_common/include/
INCLUDES += -I$(MAKEBASE)/cpu/lpc_common/include/
INCLUDES += -I$(MAKEBASE)/cpu/lpc2387/include
endif
ifeq ($(CPU),mc1322x)
INCLUDES += -I$(MAKEBASE)/cpu/arm_common/include/
INCLUDES += -I$(MAKEBASE)/cpu/mc1322x/include
endif
ifeq ($(CPU),msp430x16x)
INCLUDES += -I$(MAKEBASE)/cpu/msp430-common/include/
INCLUDES += -I$(MAKEBASE)/cpu/msp430x16x/include/
endif
ifeq ($(CPU),cc430)
INCLUDES += -I$(MAKEBASE)/cpu/msp430-common/include/
INCLUDES += -I$(MAKEBASE)/cpu/cc430/include/
endif
ifeq ($(CPU),native)
INCLUDES += -I$(MAKEBASE)/cpu/native/include/
endif
### Minimal setup
ifeq ($(CPU),lpc1768)
export UNDEF += $(BINDIR)syscalls.o
endif
ifeq ($(CPU),lpc2387)
export USEMODULE += arm_common lpc_common
export UNDEF += $(BINDIR)syscalls.o $(BINDIR)lpc_syscalls.o
export INCLUDES += -I$(RIOTCPU)/arm_common/include
export INCLUDES += -I$(RIOTCPU)/lpc_common/include
endif
ifeq ($(CPU),mc1322x)
export USEMODULE += arm_common
export UNDEF += $(BINDIR)syscalls.o
export UNDEF += $(BINDIR)mc1322x_syscalls.o
export INCLUDES += -I$(RIOTBASE)/cpu/arm_common/include
endif
ifeq ($(CPU),native)
export INCLUDES += -I$(RIOTCPU)/native/include
endif
INCLUDES += -I$(MAKEBASE)/cpu/arm_common/include/
export UNDEF += $(BINDIR)syscalls.o
MODULE = cpu
INCLUDES += -I$(RIOTCPU)/$(CPU)/include -I$(RIOTBASE)/core/include -I$(RIOTBASE)/drivers/cc110x_ng/include
DIRS =
DIRS = $(RIOTCPU)/msp430-common
all: $(BINDIR)$(MODULE).a
@for i in $(DIRS) ; do "$(MAKE)" -C $$i ; done ;
......
INCLUDES += -I$(MAKEBASE)/cpu/cc430/include/
......@@ -7,8 +7,7 @@ CC_SYMBOLS = -DTARGET_LPC1769 -DTOOLCHAIN_GCC_ARM -DNDEBUG -D__CORTEX_M3
LD_FLAGS = -mcpu=cortex-m3 -mthumb -Wl,--gc-sections,-Map=$(PROJECT).map,--cref --specs=nano.specs
LD_SYS_LIBS = -lc -lgcc -lnosys
INCLUDES = -Iinclude
INCLUDES += -I$(RIOTBASE)/core/include -I$(RIOTBASE)/sys/include -I$(RIOTBASE)/sys/lib
INCLUDES = -Iinclude -I$(RIOTBASE)/core/include -I$(RIOTBASE)/sys/include -I$(RIOTBASE)/sys/lib
all: $(BINDIR)$(MODULE).a
......
INCLUDES += -I$(MAKEBASE)/cpu/lpc1768/include
export UNDEF += $(BINDIR)syscalls.o
......@@ -97,7 +97,6 @@ typedef enum IRQn
#include "core_cm3.h" /* Cortex-M3 processor and core peripherals */
#include "system_LPC17xx.h" /* System Header */
/******************************************************************************/
......
......@@ -13,6 +13,8 @@
#endif
#define KERNEL_CONF_STACKSIZE_IDLE 1000
#define UART0_BUFSIZE (128)
/** @} */
#endif /* CPU_CONF_H */
MODULE =cpu
INCLUDES = -I../include -Idrivers/include -I../arm_common/include -I../../sys/lib -I../../drivers/include -I../../core/include -I../../sys/include -I../../hal/include -I../../..
DIRS =
DIRS = $(RIOTCPU)/arm_common $(RIOTCPU)/lpc_common
ifneq (,$(findstring gpioint,$(USEMODULE)))
DIRS += gpioint
endif
......
INCLUDES += -I$(RIOTCPU)/lpc2387/include
include $(RIOTCPU)/arm_common/Makefile.include
include $(RIOTCPU)/lpc_common/Makefile.include
export USEMODULE += arm_common lpc_common
INCLUDES += -I$(RIOTCPU)/lpc_common/include
export UNDEF += $(BINDIR)lpc_syscalls.o
MODULE =cpu
DIRS =
DIRS = $(RIOTCPU)/arm_common
ifneq (,$(findstring mc1322x_adc,$(USEMODULE)))
DIRS += adc
endif
......
INCLUDES += -I$(MAKEBASE)/cpu/mc1322x/include
include $(RIOTCPU)/arm_common/Makefile.include
export UNDEF += $(BINDIR)mc1322x_syscalls.o
export USEMODULE += arm_common
......@@ -10,19 +10,19 @@
#include "gpio.h"
inline void gpio_pad_dir(volatile uint64_t data)
static inline void gpio_pad_dir(volatile uint64_t data)
{
GPIO->PAD_DIR0 = (data & 0xffffffff);
GPIO->PAD_DIR1 = (data >> 32);
}
inline void gpio_data(volatile uint64_t data)
static inline void gpio_data(volatile uint64_t data)
{
GPIO->DATA0 = (data & 0xffffffff);
GPIO->DATA1 = (data >> 32);
}
inline uint64_t gpio_data_get(volatile uint64_t bits) {
static inline uint64_t gpio_data_get(volatile uint64_t bits) {
uint64_t rdata = 0;
rdata = GPIO->DATA0 & (bits & 0xffffffff);
......@@ -31,43 +31,43 @@ inline uint64_t gpio_data_get(volatile uint64_t bits) {
return rdata;
}
inline void gpio_pad_pu_en(volatile uint64_t data)
static inline void gpio_pad_pu_en(volatile uint64_t data)
{
GPIO->PAD_PU_EN0 = (data & 0xffffffff);
GPIO->PAD_PU_EN1 = (data >> 32);
}
inline void gpio_data_sel(volatile uint64_t data)
static inline void gpio_data_sel(volatile uint64_t data)
{
GPIO->DATA_SEL0 = (data & 0xffffffff);
GPIO->DATA_SEL1 = (data >> 32);
}
inline void gpio_pad_pu_sel(volatile uint64_t data)
static inline void gpio_pad_pu_sel(volatile uint64_t data)
{
GPIO->PAD_PU_SEL0 = (data & 0xffffffff);
GPIO->PAD_PU_SEL1 = (data >> 32);
}
inline void gpio_data_set(volatile uint64_t data)
static inline void gpio_data_set(volatile uint64_t data)
{
GPIO->DATA_SET0 = (data & 0xffffffff);
GPIO->DATA_SET1 = (data >> 32);
}
inline void gpio_data_reset(volatile uint64_t data)
static inline void gpio_data_reset(volatile uint64_t data)
{
GPIO->DATA_RESET0 = (data & 0xffffffff);
GPIO->DATA_RESET1 = (data >> 32);
}
inline void gpio_pad_dir_set(volatile uint64_t data)
static inline void gpio_pad_dir_set(volatile uint64_t data)
{
GPIO->PAD_DIR_SET0 = (data & 0xffffffff);
GPIO->PAD_DIR_SET1 = (data >> 32);
}
inline void gpio_pad_dir_reset(volatile uint64_t data)
static inline void gpio_pad_dir_reset(volatile uint64_t data)
{
GPIO->PAD_DIR_RESET0 = (data & 0xffffffff);
GPIO->PAD_DIR_RESET1 = (data >> 32);
......
INCLUDES += -I$(MAKEBASE)/cpu/msp430-common/include/
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment