From 6ac163088a4065b81b93d7f518dba3b828f768d6 Mon Sep 17 00:00:00 2001 From: ccli8 Date: Mon, 10 Sep 2018 11:32:54 +0800 Subject: [PATCH 1/3] Support Nuvoton's NuMaker-IoT-M487 board --- targets/TARGET_NUVOTON/TARGET_M480/PinNames.h | 4 ++ targets/targets.json | 42 +++++++++++++++++++ 2 files changed, 46 insertions(+) diff --git a/targets/TARGET_NUVOTON/TARGET_M480/PinNames.h b/targets/TARGET_NUVOTON/TARGET_M480/PinNames.h index 816d5ece49..d75e1025db 100644 --- a/targets/TARGET_NUVOTON/TARGET_M480/PinNames.h +++ b/targets/TARGET_NUVOTON/TARGET_M480/PinNames.h @@ -125,7 +125,11 @@ typedef enum { LED3 = LED_GREEN, LED4 = LED1, // No real LED. Just for passing ATS. // Button naming +#if TARGET_NUMAKER_PFM_M487 SW2 = PG_15, +#elif TARGET_NUMAKER_IOT_M487 + SW2 = PG_5, +#endif SW3 = PF_11, } PinName; diff --git a/targets/targets.json b/targets/targets.json index 705a70adf9..e803405d26 100755 --- a/targets/targets.json +++ b/targets/targets.json @@ -4489,5 +4489,47 @@ "device_name": "TMPM3H6FWFG", "detect_code": ["7012"], "release_versions": ["5"] + }, + "NUMAKER_IOT_M487": { + "core": "Cortex-M4F", + "default_toolchain": "ARM", + "extra_labels": ["NUVOTON", "M480", "FLASH_CMSIS_ALGO","NUVOTON_EMAC"], + "is_disk_virtual": true, + "supported_toolchains": ["ARM", "uARM", "GCC_ARM", "IAR"], + "config": { + "gpio-irq-debounce-enable": { + "help": "Enable GPIO IRQ debounce", + "value": 0 + }, + "gpio-irq-debounce-enable-list": { + "help": "Comma separated pin list to enable GPIO IRQ debounce", + "value": "NC" + }, + "gpio-irq-debounce-clock-source": { + "help": "Select GPIO IRQ debounce clock source: GPIO_DBCTL_DBCLKSRC_HCLK or GPIO_DBCTL_DBCLKSRC_LIRC", + "value": "GPIO_DBCTL_DBCLKSRC_LIRC" + }, + "gpio-irq-debounce-sample-rate": { + "help": "Select GPIO IRQ debounce sample rate: GPIO_DBCTL_DBCLKSEL_1, GPIO_DBCTL_DBCLKSEL_2, GPIO_DBCTL_DBCLKSEL_4, ..., or GPIO_DBCTL_DBCLKSEL_32768", + "value": "GPIO_DBCTL_DBCLKSEL_16" + }, + "usb-device-hsusbd": { + "help": "Select high-speed USB device or not", + "value": 1 + }, + "ctrl01-enable": { + "help": "Enable control_01", + "value": 0 + } + }, + "inherits": ["Target"], + "macros_add": ["MBEDTLS_CONFIG_HW_SUPPORT", "LPTICKER_DELAY_TICKS=3"], + "device_has": ["USTICKER", "LPTICKER", "RTC", "ANALOGIN", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "STDIO_MESSAGES", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "TRNG", "FLASH", "CAN", "EMAC"], + "release_versions": ["5"], + "device_name": "M487JIDAE", + "bootloader_supported": true, + "overrides": { + "network-default-interface-type": "ETHERNET" + } } } From d2c8be678ff017bafad93e3e7f6212f0d159b068 Mon Sep 17 00:00:00 2001 From: ccli8 Date: Tue, 11 Sep 2018 18:25:14 +0800 Subject: [PATCH 2/3] [M487] Add missing mbedtls_device.h for NUMAKER_IOT_M487 --- .../TARGET_M480/{TARGET_NUMAKER_PFM_M487 => }/mbedtls_device.h | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename features/mbedtls/targets/TARGET_NUVOTON/TARGET_M480/{TARGET_NUMAKER_PFM_M487 => }/mbedtls_device.h (100%) diff --git a/features/mbedtls/targets/TARGET_NUVOTON/TARGET_M480/TARGET_NUMAKER_PFM_M487/mbedtls_device.h b/features/mbedtls/targets/TARGET_NUVOTON/TARGET_M480/mbedtls_device.h similarity index 100% rename from features/mbedtls/targets/TARGET_NUVOTON/TARGET_M480/TARGET_NUMAKER_PFM_M487/mbedtls_device.h rename to features/mbedtls/targets/TARGET_NUVOTON/TARGET_M480/mbedtls_device.h From 9d2fcdb773e04df5605e08f66dfac1d530296ca1 Mon Sep 17 00:00:00 2001 From: ccli8 Date: Tue, 18 Sep 2018 17:15:59 +0800 Subject: [PATCH 3/3] [M487] Create MCU_M480 for inheritance by M487 targets In targets.json, create MCU_M480 for inheritance by NUMAKER_PFM_M487/NUMAKER_IOT_M487. --- targets/targets.json | 54 ++++++++------------------------------------ 1 file changed, 10 insertions(+), 44 deletions(-) diff --git a/targets/targets.json b/targets/targets.json index e803405d26..64b7c57455 100755 --- a/targets/targets.json +++ b/targets/targets.json @@ -4318,9 +4318,10 @@ "release_versions": ["5"], "device_name": "nRF52832_xxAA" }, - "NUMAKER_PFM_M487": { + "MCU_M480": { "core": "Cortex-M4F", "default_toolchain": "ARM", + "public": false, "extra_labels": ["NUVOTON", "M480", "FLASH_CMSIS_ALGO","NUVOTON_EMAC"], "is_disk_virtual": true, "supported_toolchains": ["ARM", "uARM", "GCC_ARM", "IAR"], @@ -4354,12 +4355,19 @@ "macros_add": ["MBEDTLS_CONFIG_HW_SUPPORT", "LPTICKER_DELAY_TICKS=3"], "device_has": ["USTICKER", "LPTICKER", "RTC", "ANALOGIN", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "STDIO_MESSAGES", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "TRNG", "FLASH", "CAN", "EMAC"], "release_versions": ["5"], - "device_name": "M487JIDAE", "bootloader_supported": true, "overrides": { "network-default-interface-type": "ETHERNET" } }, + "NUMAKER_PFM_M487": { + "inherits": ["MCU_M480"], + "device_name": "M487JIDAE" + }, + "NUMAKER_IOT_M487": { + "inherits": ["MCU_M480"], + "device_name": "M487JIDAE" + }, "TMPM066": { "inherits": ["Target"], "core": "Cortex-M0", @@ -4489,47 +4497,5 @@ "device_name": "TMPM3H6FWFG", "detect_code": ["7012"], "release_versions": ["5"] - }, - "NUMAKER_IOT_M487": { - "core": "Cortex-M4F", - "default_toolchain": "ARM", - "extra_labels": ["NUVOTON", "M480", "FLASH_CMSIS_ALGO","NUVOTON_EMAC"], - "is_disk_virtual": true, - "supported_toolchains": ["ARM", "uARM", "GCC_ARM", "IAR"], - "config": { - "gpio-irq-debounce-enable": { - "help": "Enable GPIO IRQ debounce", - "value": 0 - }, - "gpio-irq-debounce-enable-list": { - "help": "Comma separated pin list to enable GPIO IRQ debounce", - "value": "NC" - }, - "gpio-irq-debounce-clock-source": { - "help": "Select GPIO IRQ debounce clock source: GPIO_DBCTL_DBCLKSRC_HCLK or GPIO_DBCTL_DBCLKSRC_LIRC", - "value": "GPIO_DBCTL_DBCLKSRC_LIRC" - }, - "gpio-irq-debounce-sample-rate": { - "help": "Select GPIO IRQ debounce sample rate: GPIO_DBCTL_DBCLKSEL_1, GPIO_DBCTL_DBCLKSEL_2, GPIO_DBCTL_DBCLKSEL_4, ..., or GPIO_DBCTL_DBCLKSEL_32768", - "value": "GPIO_DBCTL_DBCLKSEL_16" - }, - "usb-device-hsusbd": { - "help": "Select high-speed USB device or not", - "value": 1 - }, - "ctrl01-enable": { - "help": "Enable control_01", - "value": 0 - } - }, - "inherits": ["Target"], - "macros_add": ["MBEDTLS_CONFIG_HW_SUPPORT", "LPTICKER_DELAY_TICKS=3"], - "device_has": ["USTICKER", "LPTICKER", "RTC", "ANALOGIN", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "STDIO_MESSAGES", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "TRNG", "FLASH", "CAN", "EMAC"], - "release_versions": ["5"], - "device_name": "M487JIDAE", - "bootloader_supported": true, - "overrides": { - "network-default-interface-type": "ETHERNET" - } } }