Add support for a generic windows-based EABI toolchain; Add NX configuration to force default NXTK border colors
This commit is contained in:
parent
0762d45517
commit
e6a3078b77
@ -58,7 +58,7 @@
|
|||||||
#define SAM_PID_PMC (5) /* Power Management Controller */
|
#define SAM_PID_PMC (5) /* Power Management Controller */
|
||||||
#define SAM_PID_EEFC0 (6) /* Enhanced Embedded Flash Controller 0 */
|
#define SAM_PID_EEFC0 (6) /* Enhanced Embedded Flash Controller 0 */
|
||||||
#define SAM_PID_EEFC1 (7) /* Enhanced Embedded Flash Controller 1 */
|
#define SAM_PID_EEFC1 (7) /* Enhanced Embedded Flash Controller 1 */
|
||||||
#define SAM_PID_UART0 (8) /* Universal Asynchronous Receiver Transmitter */
|
#define SAM_PID_UART0 (8) /* Universal Asynchronous Receiver Transmitter 0 */
|
||||||
#define SAM_PID_SMC (9) /* Static Memory Controller */
|
#define SAM_PID_SMC (9) /* Static Memory Controller */
|
||||||
#define SAM_PID_PIOA (10) /* Parallel I/O Controller A */
|
#define SAM_PID_PIOA (10) /* Parallel I/O Controller A */
|
||||||
#define SAM_PID_PIOB (11) /* Parallel I/O Controller B */
|
#define SAM_PID_PIOB (11) /* Parallel I/O Controller B */
|
||||||
|
@ -7,8 +7,8 @@ comment "ARM Configuration Options"
|
|||||||
|
|
||||||
choice
|
choice
|
||||||
prompt "Toolchain Selection"
|
prompt "Toolchain Selection"
|
||||||
default ARM_TOOLCHAIN_CODESOURCERYW if HOST_WINDOWS
|
default ARM_TOOLCHAIN_GNU_EABIW if HOST_WINDOWS
|
||||||
default ARM_TOOLCHAIN_GNU_EABI if !HOST_WINDOWS
|
default ARM_TOOLCHAIN_GNU_EABIL if !HOST_WINDOWS
|
||||||
|
|
||||||
config ARM_TOOLCHAIN_BUILDROOT
|
config ARM_TOOLCHAIN_BUILDROOT
|
||||||
bool "Buildroot (Cygwin or Linux)"
|
bool "Buildroot (Cygwin or Linux)"
|
||||||
@ -30,8 +30,15 @@ config ARM_TOOLCHAIN_DEVKITARM
|
|||||||
bool "devkitARM GNU toolchain"
|
bool "devkitARM GNU toolchain"
|
||||||
depends on HOST_WINDOWS
|
depends on HOST_WINDOWS
|
||||||
|
|
||||||
config ARM_TOOLCHAIN_GNU_EABI
|
config ARM_TOOLCHAIN_GNU_EABIL
|
||||||
bool "Generic GNU EABI toolchain"
|
bool "Generic GNU EABI toolchain under Linux (or other POSIX environment)"
|
||||||
|
---help---
|
||||||
|
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
||||||
|
configured for arm-none-eabi-.
|
||||||
|
|
||||||
|
config ARM_TOOLCHAIN_GNU_EABIW
|
||||||
|
bool "Generic GNU EABI toolchain under Windows"
|
||||||
|
depends on HOST_WINDOWS
|
||||||
---help---
|
---help---
|
||||||
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
||||||
configured for arm-none-eabi-.
|
configured for arm-none-eabi-.
|
||||||
|
@ -51,6 +51,7 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARM_TOOLCHAIN ?= BUILDROOT
|
CONFIG_ARM_TOOLCHAIN ?= BUILDROOT
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_DM320_CODESOURCERYL) \
|
$(CONFIG_DM320_CODESOURCERYL) \
|
||||||
$(CONFIG_LPC31_CODESOURCERYL) \
|
$(CONFIG_LPC31_CODESOURCERYL) \
|
||||||
@ -59,6 +60,7 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARM_TOOLCHAIN ?= CODESOURCERYL
|
CONFIG_ARM_TOOLCHAIN ?= CODESOURCERYL
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_DM320_CODESOURCERYW) \
|
$(CONFIG_DM320_CODESOURCERYW) \
|
||||||
$(CONFIG_LPC31_CODESOURCERYW) \
|
$(CONFIG_LPC31_CODESOURCERYW) \
|
||||||
@ -67,6 +69,7 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARM_TOOLCHAIN ?= CODESOURCERYW
|
CONFIG_ARM_TOOLCHAIN ?= CODESOURCERYW
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_DM320_DEVKITARM) \
|
$(CONFIG_DM320_DEVKITARM) \
|
||||||
$(CONFIG_LPC31_DEVKITARM) \
|
$(CONFIG_LPC31_DEVKITARM) \
|
||||||
@ -75,10 +78,17 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARM_TOOLCHAIN ?= DEVKITARM
|
CONFIG_ARM_TOOLCHAIN ?= DEVKITARM
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_ARM_TOOLCHAIN_GNU_EABI) \
|
$(CONFIG_ARM_TOOLCHAIN_GNU_EABIL) \
|
||||||
),y)
|
),y)
|
||||||
CONFIG_ARM_TOOLCHAIN ?= GNU_EABI
|
CONFIG_ARM_TOOLCHAIN ?= GNU_EABIL
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(filter y, \
|
||||||
|
$(CONFIG_ARM_TOOLCHAIN_GNU_EABIW) \
|
||||||
|
),y)
|
||||||
|
CONFIG_ARM_TOOLCHAIN ?= GNU_EABIW
|
||||||
endif
|
endif
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -91,7 +101,7 @@ endif
|
|||||||
# Each toolchain definition should set:
|
# Each toolchain definition should set:
|
||||||
#
|
#
|
||||||
# CROSSDEV The GNU toolchain triple (command prefix)
|
# CROSSDEV The GNU toolchain triple (command prefix)
|
||||||
# ARCROSSDEV If required, an alternative prefix used when
|
# ARCROSSDEV If required, an alternative prefix used when
|
||||||
# invoking ar and nm.
|
# invoking ar and nm.
|
||||||
# ARCHCPUFLAGS CPU-specific flags selecting the instruction set
|
# ARCHCPUFLAGS CPU-specific flags selecting the instruction set
|
||||||
# FPU options, etc.
|
# FPU options, etc.
|
||||||
@ -143,9 +153,20 @@ endif
|
|||||||
|
|
||||||
# Generic GNU EABI toolchain on OS X, Linux or any typical Posix system
|
# Generic GNU EABI toolchain on OS X, Linux or any typical Posix system
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARM_TOOLCHAIN),GNU_EABI)
|
ifeq ($(CONFIG_ARM_TOOLCHAIN),GNU_EABIL)
|
||||||
CROSSDEV ?= arm-none-eabi-
|
CROSSDEV ?= arm-none-eabi-
|
||||||
ARCROSSDEV ?= arm-none-eabi-
|
ARCROSSDEV ?= arm-none-eabi-
|
||||||
MAXOPTIMIZATION = -O3
|
MAXOPTIMIZATION = -Os
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Generic GNU EABI toolchain under Windows
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_ARM_TOOLCHAIN),GNU_EABIW)
|
||||||
|
CROSSDEV ?= arm-none-eabi-
|
||||||
|
ARCROSSDEV ?= arm-none-eabi-
|
||||||
|
MAXOPTIMIZATION = -Os
|
||||||
|
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
|
||||||
|
WINTOOL = y
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
@ -7,8 +7,8 @@ comment "ARMV6M Configuration Options"
|
|||||||
|
|
||||||
choice
|
choice
|
||||||
prompt "Toolchain Selection"
|
prompt "Toolchain Selection"
|
||||||
default ARMV6M_TOOLCHAIN_CODESOURCERYW if HOST_WINDOWS
|
default ARMV6M_TOOLCHAIN_GNU_EABIW if HOST_WINDOWS
|
||||||
default ARMV6M_TOOLCHAIN_GNU_EABI if !HOST_WINDOWS
|
default ARMV6M_TOOLCHAIN_GNU_EABIL if !HOST_WINDOWS
|
||||||
|
|
||||||
config ARMV6M_TOOLCHAIN_ATOLLIC
|
config ARMV6M_TOOLCHAIN_ATOLLIC
|
||||||
bool "Atollic Lite/Pro for Windows"
|
bool "Atollic Lite/Pro for Windows"
|
||||||
@ -38,8 +38,15 @@ config ARMV6M_TOOLCHAIN_DEVKITARM
|
|||||||
bool "devkitARM GNU toolchain"
|
bool "devkitARM GNU toolchain"
|
||||||
depends on HOST_WINDOWS
|
depends on HOST_WINDOWS
|
||||||
|
|
||||||
config ARMV6M_TOOLCHAIN_GNU_EABI
|
config ARMV6M_TOOLCHAIN_GNU_EABIL
|
||||||
bool "Generic GNU EABI toolchain"
|
bool "Generic GNU EABI toolchain under Linux (or other POSIX environment)"
|
||||||
|
---help---
|
||||||
|
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
||||||
|
configured for arm-none-eabi.
|
||||||
|
|
||||||
|
config ARMV6M_TOOLCHAIN_GNU_EABIW
|
||||||
|
bool "Generic GNU EABI toolchain under Windows"
|
||||||
|
depends on HOST_WINDOWS
|
||||||
---help---
|
---help---
|
||||||
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
||||||
configured for arm-none-eabi.
|
configured for arm-none-eabi.
|
||||||
|
@ -45,26 +45,37 @@
|
|||||||
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_ATOLLIC)),y)
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_ATOLLIC)),y)
|
||||||
CONFIG_ARMV6M_TOOLCHAIN ?= ATOLLIC
|
CONFIG_ARMV6M_TOOLCHAIN ?= ATOLLIC
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_BUILDROOT)),y)
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_BUILDROOT)),y)
|
||||||
CONFIG_ARMV6M_TOOLCHAIN ?= BUILDROOT
|
CONFIG_ARMV6M_TOOLCHAIN ?= BUILDROOT
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_CODEREDL)),y)
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_CODEREDL)),y)
|
||||||
CONFIG_ARMV6M_TOOLCHAIN ?= CODEREDL
|
CONFIG_ARMV6M_TOOLCHAIN ?= CODEREDL
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_CODEREDW)),y)
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_CODEREDW)),y)
|
||||||
CONFIG_ARMV6M_TOOLCHAIN ?= CODEREDW
|
CONFIG_ARMV6M_TOOLCHAIN ?= CODEREDW
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_CODESOURCERYL)),y)
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_CODESOURCERYL)),y)
|
||||||
CONFIG_ARMV6M_TOOLCHAIN ?= CODESOURCERYL
|
CONFIG_ARMV6M_TOOLCHAIN ?= CODESOURCERYL
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_CODESOURCERYW)),y)
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_CODESOURCERYW)),y)
|
||||||
CONFIG_ARMV6M_TOOLCHAIN ?= CODESOURCERYW
|
CONFIG_ARMV6M_TOOLCHAIN ?= CODESOURCERYW
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_DEVKITARM)),y)
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_DEVKITARM)),y)
|
||||||
CONFIG_ARMV6M_TOOLCHAIN ?= DEVKITARM
|
CONFIG_ARMV6M_TOOLCHAIN ?= DEVKITARM
|
||||||
endif
|
endif
|
||||||
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_GNU_EABI)),y)
|
|
||||||
CONFIG_ARMV6M_TOOLCHAIN ?= GNU_EABI
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_GNU_EABIL)),y)
|
||||||
|
CONFIG_ARMV6M_TOOLCHAIN ?= GNU_EABIL
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_GNU_EABIW)),y)
|
||||||
|
CONFIG_ARMV6M_TOOLCHAIN ?= GNU_EABIW
|
||||||
endif
|
endif
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -77,7 +88,7 @@ endif
|
|||||||
# Each toolchain definition should set:
|
# Each toolchain definition should set:
|
||||||
#
|
#
|
||||||
# CROSSDEV The GNU toolchain triple (command prefix)
|
# CROSSDEV The GNU toolchain triple (command prefix)
|
||||||
# ARCROSSDEV If required, an alternative prefix used when
|
# ARCROSSDEV If required, an alternative prefix used when
|
||||||
# invoking ar and nm.
|
# invoking ar and nm.
|
||||||
# ARCHCPUFLAGS CPU-specific flags selecting the instruction set
|
# ARCHCPUFLAGS CPU-specific flags selecting the instruction set
|
||||||
# options, etc.
|
# options, etc.
|
||||||
@ -155,11 +166,20 @@ endif
|
|||||||
|
|
||||||
# Generic GNU EABI toolchain on OS X, Linux or any typical Posix system
|
# Generic GNU EABI toolchain on OS X, Linux or any typical Posix system
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARMV6M_TOOLCHAIN),GNU_EABI)
|
ifeq ($(CONFIG_ARMV6M_TOOLCHAIN),GNU_EABIL)
|
||||||
CROSSDEV ?= arm-none-eabi-
|
CROSSDEV ?= arm-none-eabi-
|
||||||
ARCROSSDEV ?= arm-none-eabi-
|
ARCROSSDEV ?= arm-none-eabi-
|
||||||
ARCHCPUFLAGS = -mcpu=cortex-m0 -mthumb -march=armv6-m -mfloat-abi=soft
|
ARCHCPUFLAGS = -mcpu=cortex-m0 -mthumb -march=armv6-m -mfloat-abi=soft
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_ARMV6M_TOOLCHAIN),GNU_EABIW)
|
||||||
|
CROSSDEV ?= arm-none-eabi-
|
||||||
|
ARCROSSDEV ?= arm-none-eabi-
|
||||||
|
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
|
||||||
|
WINTOOL = y
|
||||||
|
endif
|
||||||
|
ARCHCPUFLAGS = -mcpu=cortex-m0 -mthumb -march=armv6-m -mfloat-abi=soft
|
||||||
|
endif
|
||||||
|
|
||||||
# Individual tools may limit the optimizatin level but, by default, the
|
# Individual tools may limit the optimizatin level but, by default, the
|
||||||
# optimization level will be set to to -Os
|
# optimization level will be set to to -Os
|
||||||
|
@ -7,8 +7,8 @@ comment "ARMV7M Configuration Options"
|
|||||||
|
|
||||||
choice
|
choice
|
||||||
prompt "Toolchain Selection"
|
prompt "Toolchain Selection"
|
||||||
default ARMV7M_TOOLCHAIN_CODESOURCERYW if HOST_WINDOWS
|
default ARMV7M_TOOLCHAIN_GNU_EABIW if HOST_WINDOWS
|
||||||
default ARMV7M_TOOLCHAIN_GNU_EABI if !HOST_WINDOWS
|
default ARMV7M_TOOLCHAIN_GNU_EABIL if !HOST_WINDOWS
|
||||||
|
|
||||||
config ARMV7M_TOOLCHAIN_ATOLLIC
|
config ARMV7M_TOOLCHAIN_ATOLLIC
|
||||||
bool "Atollic Lite/Pro for Windows"
|
bool "Atollic Lite/Pro for Windows"
|
||||||
@ -38,8 +38,15 @@ config ARMV7M_TOOLCHAIN_DEVKITARM
|
|||||||
bool "devkitARM GNU toolchain"
|
bool "devkitARM GNU toolchain"
|
||||||
depends on HOST_WINDOWS
|
depends on HOST_WINDOWS
|
||||||
|
|
||||||
config ARMV7M_TOOLCHAIN_GNU_EABI
|
config ARMV7M_TOOLCHAIN_GNU_EABIL
|
||||||
bool "Generic GNU EABI toolchain"
|
bool "Generic GNU EABI toolchain under Linux (or other POSIX environment)"
|
||||||
|
---help---
|
||||||
|
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
||||||
|
configured for arm-none-eabi.
|
||||||
|
|
||||||
|
config ARMV7M_TOOLCHAIN_GNU_EABIW
|
||||||
|
bool "Generic GNU EABI toolchain under Windows"
|
||||||
|
depends on HOST_WINDOWS
|
||||||
---help---
|
---help---
|
||||||
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
This option should work for any modern GNU toolchain (GCC 4.5 or newer)
|
||||||
configured for arm-none-eabi.
|
configured for arm-none-eabi.
|
||||||
|
@ -51,6 +51,7 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARMV7M_TOOLCHAIN ?= ATOLLIC
|
CONFIG_ARMV7M_TOOLCHAIN ?= ATOLLIC
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_KINETIS_BUILDROOT) \
|
$(CONFIG_KINETIS_BUILDROOT) \
|
||||||
$(CONFIG_LM_BUILDROOT) \
|
$(CONFIG_LM_BUILDROOT) \
|
||||||
@ -62,12 +63,14 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARMV7M_TOOLCHAIN ?= BUILDROOT
|
CONFIG_ARMV7M_TOOLCHAIN ?= BUILDROOT
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_LPC17_CODEREDL) \
|
$(CONFIG_LPC17_CODEREDL) \
|
||||||
$(CONFIG_ARMV7M_TOOLCHAIN_CODEREDL) \
|
$(CONFIG_ARMV7M_TOOLCHAIN_CODEREDL) \
|
||||||
),y)
|
),y)
|
||||||
CONFIG_ARMV7M_TOOLCHAIN ?= CODEREDL
|
CONFIG_ARMV7M_TOOLCHAIN ?= CODEREDL
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_LPC17_CODEREDW) \
|
$(CONFIG_LPC17_CODEREDW) \
|
||||||
$(CONFIG_LPC43_CODEREDW) \
|
$(CONFIG_LPC43_CODEREDW) \
|
||||||
@ -75,6 +78,7 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARMV7M_TOOLCHAIN ?= CODEREDW
|
CONFIG_ARMV7M_TOOLCHAIN ?= CODEREDW
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_KINETIS_CODESOURCERYL) \
|
$(CONFIG_KINETIS_CODESOURCERYL) \
|
||||||
$(CONFIG_LM_CODESOURCERYL) \
|
$(CONFIG_LM_CODESOURCERYL) \
|
||||||
@ -86,6 +90,7 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARMV7M_TOOLCHAIN ?= CODESOURCERYL
|
CONFIG_ARMV7M_TOOLCHAIN ?= CODESOURCERYL
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_KINETIS_CODESOURCERYW) \
|
$(CONFIG_KINETIS_CODESOURCERYW) \
|
||||||
$(CONFIG_LM_CODESOURCERYW) \
|
$(CONFIG_LM_CODESOURCERYW) \
|
||||||
@ -97,6 +102,7 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARMV7M_TOOLCHAIN ?= CODESOURCERYW
|
CONFIG_ARMV7M_TOOLCHAIN ?= CODESOURCERYW
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_KINETIS_DEVKITARM) \
|
$(CONFIG_KINETIS_DEVKITARM) \
|
||||||
$(CONFIG_LM_DEVKITARM) \
|
$(CONFIG_LM_DEVKITARM) \
|
||||||
@ -108,11 +114,7 @@ ifeq ($(filter y, \
|
|||||||
),y)
|
),y)
|
||||||
CONFIG_ARMV7M_TOOLCHAIN ?= DEVKITARM
|
CONFIG_ARMV7M_TOOLCHAIN ?= DEVKITARM
|
||||||
endif
|
endif
|
||||||
ifeq ($(filter y, \
|
|
||||||
$(CONFIG_ARMV7M_TOOLCHAIN_GNU_EABI) \
|
|
||||||
),y)
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN ?= GNU_EABI
|
|
||||||
endif
|
|
||||||
ifeq ($(filter y, \
|
ifeq ($(filter y, \
|
||||||
$(CONFIG_STM32_RAISONANCE) \
|
$(CONFIG_STM32_RAISONANCE) \
|
||||||
$(CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE) \
|
$(CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE) \
|
||||||
@ -120,6 +122,18 @@ ifeq ($(filter y, \
|
|||||||
CONFIG_ARMV7M_TOOLCHAIN ?= RAISONANCE
|
CONFIG_ARMV7M_TOOLCHAIN ?= RAISONANCE
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(filter y, \
|
||||||
|
$(CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL) \
|
||||||
|
),y)
|
||||||
|
CONFIG_ARMV7M_TOOLCHAIN ?= GNU_EABIL
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(filter y, \
|
||||||
|
$(CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIW) \
|
||||||
|
),y)
|
||||||
|
CONFIG_ARMV7M_TOOLCHAIN ?= GNU_EABIW
|
||||||
|
endif
|
||||||
|
|
||||||
#
|
#
|
||||||
# Supported toolchains
|
# Supported toolchains
|
||||||
#
|
#
|
||||||
@ -130,7 +144,7 @@ endif
|
|||||||
# Each toolchain definition should set:
|
# Each toolchain definition should set:
|
||||||
#
|
#
|
||||||
# CROSSDEV The GNU toolchain triple (command prefix)
|
# CROSSDEV The GNU toolchain triple (command prefix)
|
||||||
# ARCROSSDEV If required, an alternative prefix used when
|
# ARCROSSDEV If required, an alternative prefix used when
|
||||||
# invoking ar and nm.
|
# invoking ar and nm.
|
||||||
# ARCHCPUFLAGS CPU-specific flags selecting the instruction set
|
# ARCHCPUFLAGS CPU-specific flags selecting the instruction set
|
||||||
# FPU options, etc.
|
# FPU options, etc.
|
||||||
@ -240,10 +254,10 @@ endif
|
|||||||
|
|
||||||
# Generic GNU EABI toolchain on OS X, Linux or any typical Posix system
|
# Generic GNU EABI toolchain on OS X, Linux or any typical Posix system
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),GNU_EABI)
|
ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),GNU_EABIL)
|
||||||
CROSSDEV ?= arm-none-eabi-
|
CROSSDEV ?= arm-none-eabi-
|
||||||
ARCROSSDEV ?= arm-none-eabi-
|
ARCROSSDEV ?= arm-none-eabi-
|
||||||
MAXOPTIMIZATION = -O3
|
MAXOPTIMIZATION = -Os
|
||||||
ifeq ($(CONFIG_ARCH_CORTEXM4),y)
|
ifeq ($(CONFIG_ARCH_CORTEXM4),y)
|
||||||
ifeq ($(CONFIG_ARCH_FPU),y)
|
ifeq ($(CONFIG_ARCH_FPU),y)
|
||||||
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
|
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
|
||||||
@ -253,7 +267,27 @@ ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),GNU_EABI)
|
|||||||
else ifeq ($(CONFIG_ARCH_CORTEXM3),y)
|
else ifeq ($(CONFIG_ARCH_CORTEXM3),y)
|
||||||
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
|
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Generic GNU EABI toolchain under Windows
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),GNU_EABIW)
|
||||||
|
CROSSDEV ?= arm-none-eabi-
|
||||||
|
ARCROSSDEV ?= arm-none-eabi-
|
||||||
|
MAXOPTIMIZATION = -Os
|
||||||
|
ifeq ($(CONFIG_ARCH_CORTEXM4),y)
|
||||||
|
ifeq ($(CONFIG_ARCH_FPU),y)
|
||||||
|
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
|
||||||
|
else
|
||||||
|
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfloat-abi=soft
|
||||||
|
endif
|
||||||
|
else ifeq ($(CONFIG_ARCH_CORTEXM3),y)
|
||||||
|
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
|
||||||
|
endif
|
||||||
|
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
|
||||||
|
WINTOOL = y
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
# Raisonance RIDE7 under Windows
|
# Raisonance RIDE7 under Windows
|
||||||
|
|
||||||
|
@ -903,6 +903,7 @@ static int up_interrupt(int irq, void *context)
|
|||||||
{
|
{
|
||||||
PANIC();
|
PANIC();
|
||||||
}
|
}
|
||||||
|
|
||||||
priv = (struct up_dev_s*)dev->priv;
|
priv = (struct up_dev_s*)dev->priv;
|
||||||
|
|
||||||
/* Loop until there are no characters to be transferred or, until we have
|
/* Loop until there are no characters to be transferred or, until we have
|
||||||
@ -937,13 +938,14 @@ static int up_interrupt(int irq, void *context)
|
|||||||
|
|
||||||
if ((pending & UART_INT_TXRDY) != 0)
|
if ((pending & UART_INT_TXRDY) != 0)
|
||||||
{
|
{
|
||||||
/* Transmit data regiser empty ... process outgoing bytes */
|
/* Transmit data register empty ... process outgoing bytes */
|
||||||
|
|
||||||
uart_xmitchars(dev);
|
uart_xmitchars(dev);
|
||||||
handled = true;
|
handled = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return OK;
|
|
||||||
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
@ -1175,6 +1177,9 @@ void up_earlyserialinit(void)
|
|||||||
#ifdef TTYS4_DEV
|
#ifdef TTYS4_DEV
|
||||||
up_disableallints(TTYS4_DEV.priv, NULL);
|
up_disableallints(TTYS4_DEV.priv, NULL);
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef TTYS5_DEV
|
||||||
|
up_disableallints(TTYS5_DEV.priv, NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Configuration whichever one is the console */
|
/* Configuration whichever one is the console */
|
||||||
|
|
||||||
@ -1216,6 +1221,9 @@ void up_serialinit(void)
|
|||||||
#ifdef TTYS4_DEV
|
#ifdef TTYS4_DEV
|
||||||
(void)uart_register("/dev/ttyS4", &TTYS4_DEV);
|
(void)uart_register("/dev/ttyS4", &TTYS4_DEV);
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef TTYS5_DEV
|
||||||
|
(void)uart_register("/dev/ttyS5", &TTYS5_DEV);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
Loading…
Reference in New Issue
Block a user