Skip to content

Commit 1fc203b

Browse files
committed
more update to kinetis bsp
1 parent 2d18777 commit 1fc203b

File tree

20 files changed

+99
-112
lines changed

20 files changed

+99
-112
lines changed

docs/reference/supported.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ Kinetis
253253
^^^^^^^
254254

255255
- `Freedom FRDM-KL25Z <https://www.nxp.com/design/development-boards/freedom-development-boards/mcu-boards/freedom-development-platform-for-kinetis-kl14-kl15-kl24-kl25-mcus:FRDM-KL25Z>`__
256-
- `Freedom FRDM-K32L2A <https://www.nxp.com/design/development-boards/freedom-development-boards/mcu-boards/nxp-freedom-platform-for-k32-l2a-mcus:FRDM-K32L2A4S>`__
256+
- `Freedom FRDM-K32L2A4S <https://www.nxp.com/design/development-boards/freedom-development-boards/mcu-boards/nxp-freedom-platform-for-k32-l2a-mcus:FRDM-K32L2A4S>`__
257257
- `Freedom FRDM-K32L2B3 <https://www.nxp.com/design/development-boards/freedom-development-boards/mcu-boards/nxp-freedom-development-platform-for-k32-l2b-mcus:FRDM-K32L2B3>`__
258258
- `KUIIC <https://github.com/nxf58843/kuiic>`__
259259

hw/bsp/board_mcu.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,15 @@
3939
//--------------------------------------------------------------------+
4040

4141
// Include order follows OPT_MCU_ number
42-
#if CFG_TUSB_MCU == OPT_MCU_LPC11UXX || CFG_TUSB_MCU == OPT_MCU_LPC13XX || \
43-
CFG_TUSB_MCU == OPT_MCU_LPC15XX || CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || \
44-
CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || CFG_TUSB_MCU == OPT_MCU_LPC18XX || \
45-
CFG_TUSB_MCU == OPT_MCU_LPC40XX || CFG_TUSB_MCU == OPT_MCU_LPC43XX
42+
#if TU_CHECK_MCU(OPT_MCU_LPC11UXX, OPT_MCU_LPC13XX, OPT_MCU_LPC15XX) || \
43+
TU_CHECK_MCU(OPT_MCU_LPC175X_6X, OPT_MCU_LPC177X_8X, OPT_MCU_LPC18XX) || \
44+
TU_CHECK_MCU(OPT_MCU_LPC40XX, OPT_MCU_LPC43XX)
4645
#include "chip.h"
4746

48-
#elif CFG_TUSB_MCU == OPT_MCU_LPC51UXX || CFG_TUSB_MCU == OPT_MCU_LPC54XXX || \
49-
CFG_TUSB_MCU == OPT_MCU_LPC55XX || CFG_TUSB_MCU == OPT_MCU_MKL25ZXX || \
50-
CFG_TUSB_MCU == OPT_MCU_K32L2AXX || OPT_MCU_K32L2BXX
47+
#elif TU_CHECK_MCU(OPT_MCU_LPC51UXX, OPT_MCU_LPC54XXX, OPT_MCU_LPC55XX)
48+
#include "fsl_device_registers.h"
49+
50+
#elif TU_CHECK_MCU(OPT_MCU_KINETIS_KL, OPT_MCU_KINETIS_K32)
5151
#include "fsl_device_registers.h"
5252

5353
#elif CFG_TUSB_MCU == OPT_MCU_NRF5X

hw/bsp/kinetis/boards/frdm_k32l2a4s/board.mk renamed to hw/bsp/kinetis_k32/boards/frdm_k32l2a4s/board.mk

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
1-
SDK_DIR = hw/mcu/nxp/mcux-sdk
21
MCU = K32L2A41A
3-
MCU_DIR = $(SDK_DIR)/devices/$(MCU)
42

53
CFLAGS += \
64
-mcpu=cortex-m0plus \
75
-DCPU_K32L2A41VLH1A \
8-
-DCFG_TUSB_MCU=OPT_MCU_K32L2AXX
96

107
# mcu driver cause following warnings
118
CFLAGS += -Wno-error=unused-parameter -Wno-error=redundant-decls -Wno-error=cast-qual
129

1310
# All source paths should be relative to the top level.
1411
LD_FILE = $(MCU_DIR)/gcc/K32L2A41xxxxA_flash.ld
1512

13+
SRC_C += \
14+
$(MCU_DIR)/project_template/clock_config.c \
15+
1616
# For freeRTOS port source
1717
FREERTOS_PORTABLE_SRC = $(FREERTOS_PORTABLE_PATH)/ARM_CM0
1818

hw/bsp/kinetis/boards/frdm_k32l2b/board.mk renamed to hw/bsp/kinetis_k32/boards/frdm_k32l2b/board.mk

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
1-
SDK_DIR = hw/mcu/nxp/mcux-sdk
21
MCU = K32L2B31A
3-
MCU_DIR = $(SDK_DIR)/devices/$(MCU)
42

53
CFLAGS += \
64
-mcpu=cortex-m0plus \
75
-DCPU_K32L2B31VLH0A \
8-
-DCFG_TUSB_MCU=OPT_MCU_K32L2BXX
96

107
# mcu driver cause following warnings
118
CFLAGS += -Wno-error=unused-parameter -Wno-error=redundant-decls
129

1310
# All source paths should be relative to the top level.
1411
LD_FILE = $(MCU_DIR)/gcc/K32L2B31xxxxA_flash.ld
1512

13+
SRC_C += \
14+
$(MCU_DIR)/project_template/clock_config.c \
15+
1616
# For freeRTOS port source
1717
FREERTOS_PORTABLE_SRC = $(FREERTOS_PORTABLE_PATH)/ARM_CM0
1818

File renamed without changes.
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
MCU = K32L2B31A
2+
3+
# This board uses TinyUF2 for updates
4+
UF2_FAMILY_ID = 0x7f83e793
5+
6+
CFLAGS += \
7+
-mcpu=cortex-m0plus \
8+
-DCPU_K32L2B31VLH0A \
9+
10+
# mcu driver cause following warnings
11+
CFLAGS += -Wno-error=unused-parameter -Wno-error=redundant-decls
12+
13+
# All source paths should be relative to the top level.
14+
LD_FILE = $(BOARD_PATH)/K32L2B31xxxxA_flash.ld
15+
16+
# For freeRTOS port source
17+
FREERTOS_PORTABLE_SRC = $(FREERTOS_PORTABLE_PATH)/ARM_CM0
18+
19+
# For flash-jlink target
20+
JLINK_DEVICE = K32L2B31xxxxA
21+
22+
# For flash-pyocd target
23+
PYOCD_TARGET = K32L2B
24+
25+
# flash using pyocd
26+
flash: flash-pyocd

hw/bsp/kuiic/kuiic.c renamed to hw/bsp/kinetis_k32/boards/kuiic/kuiic.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
* This file is part of the TinyUSB stack.
2626
*/
2727

28-
#include "../board.h"
28+
#include "bsp/board.h"
2929
#include "board.h"
3030
#include "fsl_smc.h"
3131
#include "fsl_gpio.h"
Lines changed: 7 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,32 @@
1-
DEPS_SUBMODULES += hw/mcu/nxp/nxp_sdk hw/mcu/nxp/mcux-sdk
1+
SDK_DIR = hw/mcu/nxp/mcux-sdk
2+
DEPS_SUBMODULES += $(SDK_DIR)
23

4+
MCU_DIR = $(SDK_DIR)/devices/$(MCU)
35
include $(TOP)/$(BOARD_PATH)/board.mk
46

57
CFLAGS += \
68
-mthumb \
79
-mabi=aapcs \
10+
-DCFG_TUSB_MCU=OPT_MCU_KINETIS_K32
811

912
SRC_C += \
1013
src/portable/nxp/khci/dcd_khci.c \
1114
src/portable/nxp/khci/hcd_khci.c \
1215
$(MCU_DIR)/system_$(MCU).c \
13-
$(MCU_DIR)/project_template/clock_config.c \
1416
$(MCU_DIR)/drivers/fsl_clock.c \
17+
$(SDK_DIR)/drivers/gpio/fsl_gpio.c \
18+
$(SDK_DIR)/drivers/lpuart/fsl_lpuart.c
1519

1620
INC += \
1721
$(TOP)/$(BOARD_PATH) \
1822
$(TOP)/$(SDK_DIR)/CMSIS/Include \
1923
$(TOP)/$(MCU_DIR) \
2024
$(TOP)/$(MCU_DIR)/project_template \
21-
$(TOP)/$(MCU_DIR)/drivers
22-
23-
# mcu-sdk has different driver layout than previous old sdk
24-
ifeq ($(SDK_DIR),hw/mcu/nxp/mcux-sdk)
25-
26-
SRC_C += \
27-
$(SDK_DIR)/drivers/gpio/fsl_gpio.c \
28-
$(SDK_DIR)/drivers/lpuart/fsl_lpuart.c
29-
30-
INC += \
25+
$(TOP)/$(MCU_DIR)/drivers \
3126
$(TOP)/$(SDK_DIR)/drivers/smc \
3227
$(TOP)/$(SDK_DIR)/drivers/common \
3328
$(TOP)/$(SDK_DIR)/drivers/gpio \
3429
$(TOP)/$(SDK_DIR)/drivers/port \
3530
$(TOP)/$(SDK_DIR)/drivers/lpuart \
3631

37-
else
38-
39-
SRC_C += \
40-
$(MCU_DIR)/drivers/fsl_gpio.c \
41-
$(MCU_DIR)/drivers/fsl_lpsci.c \
42-
$(MCU_DIR)/drivers/fsl_uart.c
43-
44-
endif
45-
4632
SRC_S += $(MCU_DIR)/gcc/startup_$(MCU).S

hw/bsp/kinetis/boards/frdm_kl25z/board.mk renamed to hw/bsp/kinetis_kl/boards/frdm_kl25z/board.mk

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,15 @@
1-
SDK_DIR = hw/mcu/nxp/nxp_sdk
21
MCU = MKL25Z4
3-
MCU_DIR = $(SDK_DIR)/devices/$(MCU)
42

53
CFLAGS += \
6-
-mcpu=cortex-m0plus \
74
-DCPU_MKL25Z128VLK4 \
8-
-DCFG_TUSB_MCU=OPT_MCU_MKL25ZXX \
95
-DCFG_EXAMPLE_VIDEO_READONLY
106

11-
LDFLAGS += \
12-
-Wl,--defsym,__stack_size__=0x400 \
13-
-Wl,--defsym,__heap_size__=0
14-
157
# mcu driver cause following warnings
168
CFLAGS += -Wno-error=unused-parameter -Wno-error=format -Wno-error=redundant-decls
179

1810
# All source paths should be relative to the top level.
1911
LD_FILE = $(MCU_DIR)/gcc/MKL25Z128xxx4_flash.ld
2012

21-
# For freeRTOS port source
22-
FREERTOS_PORTABLE_SRC = $(FREERTOS_PORTABLE_PATH)/ARM_CM0
23-
2413
# For flash-jlink target
2514
JLINK_DEVICE = MKL25Z128xxx4
2615

hw/bsp/kinetis_kl/family.mk

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
SDK_DIR = hw/mcu/nxp/nxp_sdk
2+
DEPS_SUBMODULES += $(SDK_DIR)
3+
4+
MCU_DIR = $(SDK_DIR)/devices/$(MCU)
5+
include $(TOP)/$(BOARD_PATH)/board.mk
6+
7+
CFLAGS += \
8+
-mthumb \
9+
-mabi=aapcs \
10+
-mcpu=cortex-m0plus \
11+
-DCFG_TUSB_MCU=OPT_MCU_KINETIS_KL \
12+
13+
LDFLAGS += \
14+
-Wl,--defsym,__stack_size__=0x400 \
15+
-Wl,--defsym,__heap_size__=0
16+
17+
SRC_C += \
18+
src/portable/nxp/khci/dcd_khci.c \
19+
src/portable/nxp/khci/hcd_khci.c \
20+
$(MCU_DIR)/system_$(MCU).c \
21+
$(MCU_DIR)/project_template/clock_config.c \
22+
$(MCU_DIR)/drivers/fsl_clock.c \
23+
$(MCU_DIR)/drivers/fsl_gpio.c \
24+
$(MCU_DIR)/drivers/fsl_lpsci.c \
25+
$(MCU_DIR)/drivers/fsl_uart.c
26+
27+
INC += \
28+
$(TOP)/$(BOARD_PATH) \
29+
$(TOP)/$(SDK_DIR)/CMSIS/Include \
30+
$(TOP)/$(MCU_DIR) \
31+
$(TOP)/$(MCU_DIR)/project_template \
32+
$(TOP)/$(MCU_DIR)/drivers
33+
34+
SRC_S += $(MCU_DIR)/gcc/startup_$(MCU).S
35+
36+
# For freeRTOS port source
37+
FREERTOS_PORTABLE_SRC = $(FREERTOS_PORTABLE_PATH)/ARM_CM0

hw/bsp/kuiic/board.mk

Lines changed: 0 additions & 52 deletions
This file was deleted.

src/common/tusb_mcu.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@
8585
#define TUP_DCD_ENDPOINT_MAX 8
8686
#define TUP_RHPORT_HIGHSPEED 1 // Port0 HS, Port1 HS
8787

88-
#elif TU_CHECK_MCU(OPT_MCU_MKL25ZXX, OPT_MCU_K32L2AXX, OPT_MCU_K32L2BXX)
88+
#elif TU_CHECK_MCU(OPT_MCU_KINETIS_KL, OPT_MCU_KINETIS_K32)
8989
#define TUP_USBIP_CHIPIDEA_FS
9090
#define TUP_USBIP_CHIPIDEA_FS_KINETIS
9191
#define TUP_DCD_ENDPOINT_MAX 16

src/portable/nxp/khci/hcd_khci.c

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,14 @@
2626

2727
#include "tusb_option.h"
2828

29-
#if CFG_TUH_ENABLED && \
30-
( \
31-
( CFG_TUSB_MCU == OPT_MCU_MKL25ZXX ) || \
32-
( CFG_TUSB_MCU == OPT_MCU_K32L2AXX ) || \
33-
( CFG_TUSB_MCU == OPT_MCU_K32L2BXX ) \
34-
)
35-
36-
#include "fsl_device_registers.h"
37-
#define KHCI USB0
29+
#if CFG_TUH_ENABLED && defined(TUP_USBIP_CHIPIDEA_FS)
30+
31+
#ifdef TUP_USBIP_CHIPIDEA_FS_KINETIS
32+
#include "fsl_device_registers.h"
33+
#define KHCI USB0
34+
#else
35+
#error "MCU is not supported"
36+
#endif
3837

3938
#include "host/hcd.h"
4039

src/tusb_option.h

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,9 +117,11 @@
117117
#define OPT_MCU_RP2040 1100 ///< Raspberry Pi RP2040
118118

119119
// NXP Kinetis
120-
#define OPT_MCU_MKL25ZXX 1200 ///< NXP MKL25Zxx
121-
#define OPT_MCU_K32L2BXX 1201 ///< NXP K32L2Bxx
122-
#define OPT_MCU_K32L2AXX 1202 ///< NXP K32L2Axx
120+
#define OPT_MCU_KINETIS_KL 1200 ///< NXP KL series
121+
#define OPT_MCU_KINETIS_K32 1201 ///< NXP K32 series
122+
123+
#define OPT_MCU_MKL25ZXX 1200 ///< Alias to KL (obsolete)
124+
#define OPT_MCU_K32L2BXX 1201 ///< Alias to K32 (obsolete)
123125

124126
// Silabs
125127
#define OPT_MCU_EFM32GG 1300 ///< Silabs EFM32GG

0 commit comments

Comments
 (0)