Commit Graph

673 Commits (feature-bluetooth-unit-test)

Author SHA1 Message Date
Chun-Chieh Li 3b9492fdbc M487: Update BSP
Relevant modifications:
1. Support degrading QSPI0/1 to SPI4/5 for normal SPI transfer
2. Fix with BSP crypto driver API change
3. Fix with BSP PDMA driver API change
4. Make necessary modifications to pass FPGA CI Test Shield tests
5. Don't distinguish pinmap among parts e.g. M480 LG. Application users must take care.
2020-04-01 13:55:12 +08:00
Martin Kojtal 0a6e586a9d
Merge pull request #12660 from OpenNuvoton/nuvoton_m2351_custom_board
M2351: Support custom board
2020-03-31 09:29:22 +02:00
Chun-Chieh Li e6823c6af5 M2351: Add SPDX license identifier for BSP files 2020-03-24 10:47:03 +08:00
Chun-Chieh Li d1655854c9 M2351: Add SPDX license identifier 2020-03-24 10:03:44 +08:00
Chun-Chieh Li dbd34ed63e NANO130: Enlarge timeout in CLK_WaitClockReady(...)
Most code doesn't check return code of CLK_WaitClockReady(...). Enlarge timeout to meet most cases.

lp_ticker initialization fails with this issue. Steps for reproducing:
1.  System runs in tickless from lp_ticker mode.
2.  Arm WDT reset.
3.  In next reset cycle, lp_ticker initialization fails (active flag doesn't become active).
2020-03-20 10:26:39 +08:00
Chun-Chieh Li 427e8eb777 M2351: Support custom board
1. Introduce MCU_M2351 target to be inheritable
2. Re-organize PinNames.h to be overridable
3. Enable configurability of USB/STDIO UART pins
2020-03-20 09:39:16 +08:00
Chun-Chieh Li f5cb899413 M263: Re-organize PinNames.h
This is to support custom boards based on M261 series chips.
2020-03-20 09:16:51 +08:00
Chun-Chieh Li 15fcdb1c36 M263: Support configurability for USB/STDIO UART pins
-   STDIO_UART and STDIO_UART_TX/STDIO_UART_RX
-   USB_UART and USBTX/USBRX
2020-03-20 09:16:51 +08:00
Chun-Chieh Li edcfcf0495 M263: Enable configurability for memory specification
This is to support custom boards based on M261 series chips.
2020-03-20 09:16:50 +08:00
Chun-Chieh Li 203a9fe0ec M263: Add SERIAL_TX/SERIAL_RX pin names
Don't set SERIAL_TX/SERIAL_RX to USBTX/USBRX which should be dedicated for USB VCOM and not for other uses.
2020-03-20 09:16:49 +08:00
Chun-Chieh Li 5ec86411c4 M487: Re-organize PinNames.h
This is to support custom targets based on M480 series chips.
2020-03-12 09:34:45 +08:00
Chun-Chieh Li 2cf82821dd M487: Support configurability of USB/STDIO UART pins
-   STDIO_UART and STDIO_UART_TX/STDIO_UART_RX
-   USB_UART and USBTX/USBRX
2020-03-12 09:34:45 +08:00
Chun-Chieh Li 9d26390595 M487: Make memory specification configurable
This is to support custom targets based on M480 series chips.
2020-03-12 09:34:14 +08:00
Chun-Chieh Li 98c151a9f2 M487: Make SPIM CCM mode configurable
This is to support custom targets based on M480 series chips.
2020-03-12 09:31:51 +08:00
Chun-Chieh Li 2f770b77a9 M487: Remove BUTTON1/2 for custom targets
This is to support custom targets based on M480 series chips.
2020-03-12 09:31:51 +08:00
Chun-Chieh Li c4ffd38a90 M487: Change SERIAL_TX/SERIAL_RX pin names to other than USBTX/USBRX
USBTX/USBRX should be dedicated for USB VCOM and not for other uses.
2020-03-12 09:31:51 +08:00
Chun-Chieh Li cbf1a8a6fd M487: Get around h/w issue with reset from power-down mode
When UART interrupt enabled and WDT reset from power-down mode, in the next
cycle, UART interrupt keeps breaking in and cannot block unless via NVIC. To
get around it, we deliberately make up a signal of WDT wake-up from power-down
mode in the start of boot proces when WDT reset is detected.
2020-02-27 17:46:19 +08:00
Chun-Chieh Li 55f88a0942 M487: Re-implement Reset_Handler() in naked inline assembly
This is to guarantee SRAM bank2, not initialized yet, isn't used for stack by function preamble code at the very start.
2020-02-27 17:38:53 +08:00
Martin Kojtal 119931e56d
Merge pull request #12478 from OpenNuvoton/nuvoton_m2351_minor
M2351: Fix some minor issues
2020-02-24 12:51:52 +00:00
Martin Kojtal dc733d8883
Merge pull request #12477 from fkjagodzinski/hal-gpio-get_capabilities
HAL: Add a get_capabilities() function to GPIO API
2020-02-24 07:47:39 +00:00
Filip Jagodzinski 09ecd2fdc0 Nuvoton: Add gpio_get_capabilities()
TARGET_NANO100, TARGET_NUC472 & TARGET_M451 do not support input pull
mode configuration.
2020-02-19 18:58:47 +01:00
Chun-Chieh Li 34d3d43f0d M2351: Fix NSC_Init(...)
Actually, NSC_Init(...) is not used by secure code currently. No need to rebuild secoure image/lib.
2020-02-19 17:59:49 +08:00
Chun-Chieh Li 7328467012 M2351: Fix interrupt vector with BSP update 2020-02-19 17:57:01 +08:00
Chun-Chieh Li d5620b66a7 M2351: Fix RTC comment 2020-02-19 17:51:49 +08:00
Chun-Chieh Li 8df96ec50a Nuvoton: Make SPI inter-frame (delay match configured suspend interval
In no MISO case, skip SPI read so that no more write/read delay contribute to SPI inter-frame delay when data is written successively.

Update targets:
-   NUMAKER_PFM_NANO130
-   NUMAKER_PFM_NUC472
-   NUMAKER_PFM_M453
-   NUMAKER_PFM_M487/NUMAKER_IOT_M487
-   NU_PFM_M2351_*
-   NUMAKER_IOT_M263A
-   NUMAKER_M252KG
2020-02-17 15:00:09 +08:00
Chun-Chieh Li 769781cfb3 M2351: Update PSA secure image/lib with RTC LXT 2020-02-13 11:24:02 +08:00
Chun-Chieh Li 4c9e0f1fcd M2351: Update non-PSA secure image/lib with RTC LXT 2020-02-13 11:24:02 +08:00
Chun-Chieh Li 9f9ca0acaa M2351: Fix CRYPTO_MODBASE() when crypto module is configured to secure
This bug results from BSP update:

-   CRPT: Base address of secure or non-secure crypto module, dependent on partition
-   CRPT_S: Base address of secure crypto module
-   CRPT_NS: Base address of non-secured crypto module
2020-02-13 11:24:02 +08:00
Chun-Chieh Li 834e1aad60 M2351: Fix delay code with RTC clock source
Explicitly configure RTC clock source to LXT
2020-02-13 11:24:02 +08:00
Chun-Chieh Li 28495bb075 M2351: Refine gpio_irq_set(...) with inconsistent GPIO_EnableInt(...) implementations
No logic change
2020-02-13 11:24:02 +08:00
Chun-Chieh Li 582c08c129 M2351: Refine code layout of PeripheralPins.c
No logic change
2020-02-13 11:24:01 +08:00
Chun-Chieh Li 4a1d612e90 Nuvoton: Fix delay code with RTC clock source
Explicitly configure RTC clock source to LXT

Update targets:

-   NUMAKER_PFM_NANO130
-   NUMAKER_PFM_NUC472
-   NUMAKER_PFM_M453
-   NUMAKER_PFM_M487/NUMAKER_IOT_M487
-   NUMAKER_M252KG
-   NUMAKER_IOT_M263A
2020-02-13 11:24:01 +08:00
Chun-Chieh Li 86fcae5b03 Nuvoton: Fix GPIO rising/falling edge interrupts cannot exist simultaneously
This is to pass mbed_hal_fpga_ci_test_shield-gpio_irq test.

Update targets:

-   NUMAKER_PFM_NANO130
-   NUMAKER_PFM_NUC472
-   NUMAKER_PFM_M453
-   NUMAKER_PFM_M487/NUMAKER_IOT_M487
-   NUMAKER_M252KG
-   NUMAKER_IOT_M263A
2020-02-13 11:24:01 +08:00
Martin Kojtal 8e522056a0
Merge pull request #12404 from OpenNuvoton/nuvoton_m2351_bsp
M2351: Update BSP and bugfix
2020-02-11 15:43:10 +00:00
Chun-Chieh Li 3d9c7b2519 M2351: Update PSA secure image/lib with BSP update 2020-02-10 18:37:30 +08:00
Chun-Chieh Li ee8236b22e M2351: Update non-PSA secure image/lib with BSP update 2020-02-10 17:50:15 +08:00
Chun-Chieh Li 6f793fbb5a M2351: Fix GPIO rising/falling edge interrupts cannot exist simultaneously 2020-02-10 17:44:55 +08:00
Chun-Chieh Li a2c9ae6b7d M2351: Update BSP and bugfix
Align with mainline BSP and fix relevant bugs:

1.  Align with SPI module naming
    (1) Remove SPI5
    (2) Degrade QSPI0 to SPI4 so that it can use for standard SPI
2.  Fix some code lacking GPIO H
3.  Implement __PC(...) by following BSP instead of with MBED_CALLER_ADDR()
4.  Add SCU_IRQHandler(). Change printf(...) with interrupt-safe error(...)
5.  Other minor alignment change
2020-02-10 16:23:32 +08:00
Chun-Chieh Li 82770d7e2b M2351: Refine PeripheralNames.h
No logic change and bugfix
2020-02-10 09:07:13 +08:00
Przemyslaw Stekiel a4e1354769 Remove pinmap_restricted_peripherals() function from Nuvoton (STDIO uart is restricted by default) 2020-02-07 10:45:02 +01:00
Martin Kojtal 32675cc6ac
Merge pull request #11874 from fkjagodzinski/armc6_build-enable_lto_for_release
ARMC6: Add a build profile extension with the link-time optimizer enabled
2020-02-05 14:42:16 +00:00
Chun-Chieh Li 9faa236dfc M2351: Refactor startup file
1.  Re-organize to make clear for all targets/toolchains support in single startup file
2.  Inline assembly syntax is limited, esp. on IAR. Try paving the way for accessing external symbols still in inline assembly instead of re-write in assembly.
2020-02-05 10:14:26 +08:00
Maciej Bocianski e3b8514a91 NUMAKER_IOT_M487: keep __vector_handlers symbols in LTO builds
Add a "used" attribute to __vector_handlers to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST. )

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:38:37 +01:00
Maciej Bocianski 6d896f032f NU_PFM_M2351_NPSA: keep __vector_handlers symbol in LTO builds
Add a "used" attribute to __vector_handlers to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST.)

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:38:26 +01:00
Maciej Bocianski 50c3b100a8 NUMAKER_PFM_NUC472: keep __vector_handlers symbol in LTO builds
Add a "used" attribute to __vector_handlers to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST.)

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:30:00 +01:00
Maciej Bocianski ad7f27bf77 NUMAKER_PFM_NANO130: keep __vector_handlers symbol in LTO builds
Add a "used" attribute to __vector_handlers to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST.)

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:29:59 +01:00
Maciej Bocianski ddd2cf8920 NUMAKER_PFM_M453: keep __vector_handlers symbol in LTO builds
Add a "used" attribute to __vector_handlers to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST.)

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:29:59 +01:00
Maciej Bocianski f0dc4abb3f NUMAKER_M252KG: keep __vector_handlers symbol in LTO builds
Add a "used" attribute to __vector_handlers to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST. )

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:29:58 +01:00
Maciej Bocianski 9aade4a816 NUMAKER_IOT_M263A: keep __vector_handlers symbol in LTO builds
Add a "used" attribute to __vector_handlers to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST. )

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:29:57 +01:00
Filip Jagodzinski 28b1169b7e NUVOTON: Fix undefined reference to Reset_Handler_Cascade
Add a "used" attribute to Reset_Handler_Cascade to fix GCC build with
the "-flto" flag.
This attribute, attached to a function, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:29:51 +01:00
Chun-Chieh Li 94762d02a1 M2351: Support IAR
1.  Enable IAR on non-secure targets
2.  Disable IAR on secure targets because:
    (1) IAR toolchain bug: As of IAR 8.32, cmse_nonsecure_caller() is not always inlined.
    (2) TFM hasn't supported IAR yet.
2020-01-30 13:12:31 +08:00
Chun-Chieh Li 359d41adef M2351: Remove LPTICKER to spare memory for non-PSA minimal secure build 2020-01-16 09:58:32 +08:00
Martin Kojtal 117201d77d "Update secure binaries for NU_PFM_M2351_S (ARMC6)" 2020-01-14 14:27:54 +00:00
Martin Kojtal 40b7901cfb
Merge pull request #12217 from OpenNuvoton/nuvoton_usbd
Nuvoton: Add DEVICE_USBDEVICE detection in usbd implementation
2020-01-08 17:00:23 +01:00
Martin Kojtal af03f839e2
Merge pull request #10959 from OpenNuvoton/nuvoton_m2351_psa
M2351: Support TFM level 1
2020-01-08 16:09:35 +01:00
cyliangtw b924a922a8 Add DEVICE_USBDEVICE detection in usbd implementation to avoid compiler error on target without usb-device 2020-01-08 19:36:51 +08:00
Martin Kojtal b77f6b457e
Merge pull request #12055 from 0xc0170/fix_12054
cmsis: remove arm math
2020-01-08 12:00:54 +01:00
cyliangtw 95be7da860 Add CLKSEL0_USBSEL_HIRC48 in m2351_clk.h 2020-01-06 19:08:52 +08:00
Chun-Chieh Li 22e4f93400 [M2351] Add pre-built secure images for PSA 2020-01-06 15:55:01 +08:00
Chun-Chieh Li c9b4474d50 [M2351] Merge secure idle/powerdown sequences into one
Merge SYS_UnlockReg_S()/CLK_Idle_S() or CLK_PowerDown_S()/SYS_LockReg_S()
into nu_idle_s() or nu_powerdown_s() when they are available.
2020-01-06 15:55:01 +08:00
Chun-Chieh Li a0a1c4d52c [M2351] Override NS interface by locking kernel scheduler
Lock kernel scheduler rather than mutex to guarantee serialization of NS
secure calls
2020-01-06 15:55:01 +08:00
ccli8 dec84ede7e [M2351] Enforce locked entry into TFM for platform-specific NSC calls
On M2351, some spaces like SYS/CLK are hard-wired to secure and cannot change.
To access these spaces from non-secure world, we must provide platform-specific NSC
functions. With TFM introduced, we must synchronize NSC calls into TFM to keep TFM
in sync instead of straight NSC calls. To achieve this goal, we go with the following
approach:

1. Like PSA APIs, enforce locked entry through tfm_ns_lock_dispatch().
2. Run platform-specific secure functions in default secure partition, in which SYS/CLK
   spaces have been configured to be accessible.
2020-01-06 15:55:00 +08:00
ccli8 41d95ef2fb [M2351] Support TFM level 1 2020-01-06 15:55:00 +08:00
ccli8 76a029e88d [M2351] Support initializing multiple .data/.bss sections with GCC_ARM 2020-01-06 15:54:59 +08:00
ccli8 db11eef0bc [M2351] Remove draft uvisor code with GCC_ARM
uVisor is deprecated since mbed-os 5.10, so remove related code with it.
2020-01-06 15:54:59 +08:00
ccli8 1aca8a5b56 [M2351] Make exported NSC symbols consistent across toolchains
This idea comes from TFM.
2020-01-06 15:54:59 +08:00
Martin Kojtal 078f71d72a nuvoton: remove dsp math from bitutil file 2020-01-03 15:25:02 +00:00
cyliangtw 115520a7b8 Add SPDX identifiers in Nuvoton USBD files 2020-01-03 20:40:47 +08:00
cyliangtw eab8555fc8 Support NUC472 with USB 2.0 only and set M487 USB1.1 in default 2020-01-03 20:40:46 +08:00
cyliangtw 4cddc5de25 Add M453 USBD 2020-01-03 20:40:45 +08:00
cyliangtw 6612ee8460 Set NANO130 CLK as 48 MHz for USBD support 2020-01-03 20:40:44 +08:00
cyliangtw abf3eeed64 Support NuMaker M453, NUC472, M2351 & M263 USBD; also support M0 usb-isr non-recloate vector limit 2020-01-03 20:40:43 +08:00
cyliangtw a5aaabff5d NANO130 add extern C into nano100_usbd.h for C++ caller 2020-01-03 20:40:42 +08:00
cyliangtw 93fbef2cde Refine M487 USBD code and build M263A successfully 2020-01-03 20:40:41 +08:00
cyliangtw 9b721bf327 Support M487 USBD 1.1 & 2.0 2020-01-03 20:40:39 +08:00
cyliangtw 84882f773e M487: Fixed USBD serial input pending issue 2020-01-03 20:40:37 +08:00
cyliangtw b34fd309e3 M487: Support USBD 2020-01-03 20:40:36 +08:00
Chun-Chieh Li c99dc34f65 Nuvoton: Support dynamic heap configuration on IAR
On IAR, configure heap to 1KiB at a minimum and expandable, dependent on available SRAM. This requires IAR 8.x.

Support targets:
-   NUMAKER_PFM_NUC472 w/ and w/o XRAM
-   NUMAKER_PFM_M453
-   NUMAKER_PFM_M487/NUMAKER_IOT_M487
-   NUMAKER_IOT_M263A
-   NUMAKER_M252KG
2019-12-27 09:01:07 +08:00
Chun-Chieh Li f90b6c9cb0 NANO130: Support dynamic heap configuration on IAR
On IAR, configure heap to 1KiB at a minimum and expandable, dependent on available SRAM. This requires IAR 8.x.
2019-12-10 10:00:05 +08:00
Chun-Chieh Li 3e4e0629dc NANO130: Decrease heap to 2.75KiB to spare SRAM for static allocation
This adjustment is to pass compile on IAR on which heap configuration is hard-coded and cannot be adjusted according to staic SRAM usage.
2019-12-09 18:56:42 +08:00
Chun-Chieh Li 6df5eea841 NANO130: Fix OOM with packing algorithm at IAR linking
At IAR linking, the default method of 'initialize by copy' is 'auto', which will estimate
different packing algorithms, including complex 'lz77', for smallest memory footprint. But
the algorithm itself can consume some SRAM and cause OOM at linking time for NANO130, which
just has 16KiB SRAM. To avoid this error, always choose 'none' packing algorithm.
2019-12-09 13:48:31 +08:00
Martin Kojtal a8ee2d8c7d
Merge pull request #11594 from OpenNuvoton/nuvoton_m2351_partition-memory-pelion
M2351: Pre-build secure image/lib to favor pelion application
2019-12-03 09:05:49 +01:00
Chun-Chieh Li aae04b2516 Nuvoton: Remove TRNG support
These targets below just support PRNG, not real TRNG. They cannot annouce TRNG.

-   NUMAKER_PFM_NUC472
-   NUMAKER_PFM_M487
-   NUMAKER_IOT_M487

On targets without TRNG, to run mbedtls applications which require entropy source,
there are two alternatives to TRNG:

-   Custom entropy source:
    Define MBEDTLS_ENTROPY_HARDWARE_ALT and provide custom mbedtls_hardware_poll(...)
-   NV seed:
    1.  Define MBEDTLS_ENTROPY_NV_SEED
    2.  Define MBEDTLS_PLATFORM_NV_SEED_READ_MACRO/MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO and provide custom mbedtls_nv_seed_read(...)/mbedtls_nv_seed_write(...).
    3.  Don't define MBEDTLS_PSA_INJECT_ENTROPY. Meet mbedtls_psa_inject_entropy(...) undefined and then provide custom one, which must be compatible with mbedtls_nv_seed_read(...)/mbedtls_nv_seed_write(...) above.
    4.  For development, simulating partial provision process, inject entropy seed via mbedtls_psa_inject_entropy(...) pre-main.
2019-11-13 18:01:24 +08:00
Martin Kojtal 5a1ccc0f2f
Merge pull request #11780 from OpenNuvoton/nuvoton_fpga_perif_free
Nuvoton: Add implementations of HAL API i2c_free and analogin_free
2019-11-04 09:49:36 +01:00
Martin Kojtal eea83007be
Merge pull request #11203 from Tharazi97/Watchdog_lower_limit_timeout_test
Add watchdog lower limit timeout test
2019-10-31 14:25:52 +01:00
Chun-Chieh Li 0260f1b3df NANO130: Remove unnecessary synchronization in analog-in HAL
Driver AnalogIn has done with it, so remove synchronization in analog-in HAL.
2019-10-31 15:23:57 +08:00
Chun-Chieh Li 72ea613a12 Nuvoton: Add i2c_free
1.  Disable interrupt
2.  Disable IP clock
3.  Free up pins

Support targets:

-   NUMAKER_PFM_NANO130
-   NUMAKER_PFM_NUC472
-   NUMAKER_PFM_M453
-   NUMAKER_PFM_M487/NUMAKER_IOT_M487
-   NU_PFM_M2351*
-   NUMAKER_IOT_M263A
-   NUMAKER_M252KG
2019-10-31 15:22:57 +08:00
Chun-Chieh Li 3abd02614a Nuvoton: Add analogin_free
1.  Deal with channel-wise and module-wise
2.  Disable IP clock
3.  Free up pin

Support targets:

-   NUMAKER_PFM_NANO130
-   NUMAKER_PFM_NUC472
-   NUMAKER_PFM_M453
-   NUMAKER_PFM_M487/NUMAKER_IOT_M487
-   NU_PFM_M2351*
-   NUMAKER_IOT_M263A
-   NUMAKER_M252KG
2019-10-31 15:19:15 +08:00
Chun-Chieh Li 26e6b15110 M2351: Re-build default secure image/gateway library to favor Pelion application
In this new memory partition, secure program is most simplified and non-secure program can make most use of memory for its large application like Pelion:

-   Flash (512KiB in total): 64KiB for secure and 448KiB for nonsecure.
-   SRAM (96KiB in total): 8KiB for secure and 88KiB for nonsecure.

Besides, to make secure program fit into 8KiB:

-   Decrease boot stack size to 0x600 bytes
-   Remove serial support
2019-10-28 10:23:43 +08:00
Chun-Chieh Li 8161386268 M2351: Update default secure image/gateway library
Update for change of TRNG security attribute
2019-10-24 10:55:24 +08:00
Chun-Chieh Li 4cd0332ada NUVOTON: Re-implement TRNG HAL with TRNG H/W
Targets supporting TRNG H/W:

-   NU_PFM_M2351_*
-   NUMAKER_IOT_M263A
2019-10-24 10:55:03 +08:00
Chun-Chieh Li 3f9ba9e61f NUVOTON: Fix BSP/MKROM header
Related targets:
-   NU_PFM_M2351_*
-   NUMAKER_IOT_M263A
2019-10-24 09:36:25 +08:00
Chun-Chieh Li d993c5a108 NUVOTON: Re-implement __PC() with toolchain built-in
Re-implement __PC() by replacing BSP assembly with toolchain built-in.
2019-10-24 09:36:25 +08:00
Chun-Chieh Li 3548d38a98 M2351: Change TRNG security attribute to secure 2019-10-24 09:36:24 +08:00
Chun-Chieh Li c326e07eb1 M2351: Update BSP/crypto driver 2019-10-24 09:36:24 +08:00
int_szyk d68a802f07 Add watchdog clock accuracy to Nuvoton targets. 2019-09-30 08:10:25 +02:00
Chun-Chieh Li f45ca72f11 [M252KG] Remove TRNG support
Reasons to remove TRNG support:
1.  M252 just has 32KiB SRAM and cannot afford mbedtls application.
2.  Implementing TRNG HAL with PRNG H/W has security concern.
2019-09-27 17:50:48 +08:00
Chun-Chieh Li 0168304e5b [M252KG] Add BSD-3-Clause license for BSP files 2019-09-27 17:45:57 +08:00
Chun-Chieh Li 967effe59f [M252KG] Free up peripheral pins in peripheral free-up HAL API
Without free-up of peripheral pins, peripheral pins of the same peripheral may
share by multiple ports after port iteration, and this peripheral may fail with
pin interference.
2019-09-27 17:45:56 +08:00
Chun-Chieh Li 38aaee0c1a [M252KG] Support GPIO input pull-high/pull-low
In Nuvoton, only new-design chips support GPIO input pull-high/pull-low modes.
Targets not supporting this feature are listed below:

- NUMAKER_PFM_NANO130
- NUMAKER_PFM_NUC472
- NUMAKER_PFM_M453
2019-09-27 17:45:56 +08:00