# Change Log ## [1.2.0] - 2023-06-30: Main changes since 1.1.0 Tested Segger Embedded Studio Version: 7.22 ### Changed: - boards: hpm6750evk*: decrease core frequency from 816MHz to 648MHz - openocd: soc: hpm6280: simplify dual core release core1 approach. - cmake: segger: configure optimization level according to gcc level. - soc: dmamux: move it from ip to soc - soc: interrupt: adjust irq api. #659 - soc: improve svd file - soc: hpm_soc_feature.h: remove ADC16_SOC_TEMP_CH_EN for some specified Socs - components: enet_phy: update the common enet phy header file - components: sgtl5000 and wm8960: update clock setting - drivers: uart: update uart driver - drivers: pdma: improve quality of scale - drivers: adc: adjust wait_dis type in adc16_config_t struct - drivers: enet: update rmii reference clock setting API for ENET - utils: hpm_swap: escape for andes toolchain. - middleware: hpm_sdmmc: add spi sdcard - middleware: motor_ctrl: change the file organization - middleware: motor_ctrl: remove slide control content from foc - middleware: lvgl: upgrade to v8.3.5 (with pdma) - middleware: lvgl: Add direct mode - middleware: cherryusb: update version to v0.8.0 - samples: I2S_DMA and I2S Interrupt: update sample behavior - samples: cherryusb: hid host: separate mouse and keyboard urb - samples: cherryusb: increase max interface and endpoint number Configuration - samples: cherryusb: uac2: move setting sampling freq to isr - samples: cherryusb: audio: update descriptor for identification - samples: audio_codec: set codec voice to max and increase irq priority - samples: multicore: lvgl_coremark: delete custom linker files and using andes toolchain - samples: lvgl_audio_player: update CMakeLists.txt to using noncacheable framebuffer - samples: spi: clean the redundant code - samples: i2c: improve the processing of FIFO in ISR - samples: drivers: uart: update uart_rx_timeout demo - samples: drivers: gptmr: split sample into multiple function samples - samples: drivers: adc: optimization for all macro definitions in applications - samples: drivers: adc: update struct member names - samples: update clock divider setting for ADC-related examples - samples: cherryusb: move vid/pid etc definition to usb_config.h - samples: cherryusb: device: update vid to hpmicro 0x34B7 - samples: cherryusb: change API update for v0.8 - samples: cherryusb: device: audiov1: change to full speed mode - samples: tinyusb: uac2: update descriptor and sample - samples: lwip: disable mmc interrupt settings - samples: lwip: lwip_ptp: v1: sync precision improvement ### Added: - cmake: toolchains: add isa spec 20191213 support. - cmake: ses: support set ses raw option in CMakeLists.txt - cmake: add option to specify board search path. - cmake: generate compile_commands.json file - soc: hpm_soc_feature: add a common macro for ADC12 and ADC16 - drivers: cam: add new APIs - drivers: spi: add new APIs - drivers: i2c: add new APIs - drivers: I2S: add i2s_check_data_line_status API - drivers: dma: add dma_set_transfer_src_width_byte_size() API - drivers: gptmr: add output capture APIs - drivers: gptmr: add gptmr_channel_get_dma_request_event api - drivers: adc: add adc16_trigger_pmt_by_sw API - drivers: enet: add some APIs related to interrupt settings - drivers: enet: add a new API for transmisstion - drivers: usb: add macro CONFIG_USB_DEVICE_FS to set full speed mode - components: uart_lin: add uart lin component - components: add smbus - components: add sccb - middleware: lvgl: add macro HPM_LVGL_FRAMEBUFFER_NONCACHEABLE - middleware: add AzureRTOS (threadx/usbx/netx/guix) - middleware: hpm_mcl: sensorless over-zero - middleware: add smc - middleware: hpm_sdmmc Add eMMC support - middleware: hpm_math: add bit conversion function - middleware: add uC/OS-III - middleware: cherryusb: audio: add feedback descriptor - middleware: cherryusb: audio: add param to set endpoint bmAttributes - middleware: microros: add microros foxy sources - samples: drivers: spi: add spi_sdcard_fatfs sample - samples: drivers: spi: add sd sample - samples: add uart_lin - samples: motor_ctrl: sensorless: over-zero demo - samples: cherryusb: add rndis host dhcp samples - samples: drivers: sdxc :emmc Added eMMC sample - samples: drivers: adc12: update irq pattern for sequence usage - samples: drivers: pla: add pla tamagawa demo - samples: drivers: gptmr: add counter_sync sample - samples: drivers: gptmr: add timer_basic sample - samples: drivers: gptmr: add t_shape_accel_decel sample - samples: drivers: dma/gptmr: add trigger dma transfer using gptmr event sample - samples: drivers: uart add uart_rx_timeout sample - samples: i2c: add smbus samples - samples: lwip: lwip_tcpecho_freertos: add self-adaption - samples: cherryusb: hid host: move usbh_submit_urb() out of condition - samples: cherryusb: add composite freertos sample - samples: cherryusb: add rndis freertos sample - samples: cherryusb: add msc freertos sample - samples: cherryusb: add audio v2 mic speaker freertos sample - samples: cherryusb: add hid mouse freertos sample - samples: cherryusb: add hid keyboard freertos sample - samples: cherryusb: add cdc acm freertos sample - samples: cherryusb: add rndis tcp server sample - samples: cherryusb: add rndis device udp_echo sample - samples: cherryusb: add rndis device http_server sample - samples: cherryusb: device: add audio_v2_speaker_sync sample - samples: add several uC/OS-III samples - samples: smc: add smc demo - samples: microros: add subscriber, sevice and publisher - samples: uC/OS-III: mutex ### Fixed: - cmake: ses: fix __SEGGER_RTL_vfprintf issue with nds tool in SES 7.20. - soc: hpm6280: Modify the number of PWM cmps. - soc: reset.c: __dso_handle needs to be declared for nds toolchain. - soc: fix max buffer length in sequence mode for ADC - soc: HPM6750: enet soc drv: fix set clock delay settings - soc:hpm6360:sdxc Correct clock divider settting issue - drivers: pla: missing Union Field - drivers: spi: fix the problem of CMD and ADDR configuration order - drivers: i2c: fix clock frequency error rate problem - drivers: i2c: clear CMPL bit in API to avoid blocking the trans - drivers: i2c: fix i2c slave device read and write fail - drivers: i2c: fix read data unexpected multi transition. - drivers: i2c: fix w1c clear status error - driver: usb: fix w1c clear flag error - drivers: gptmr: fix dma request enum definition - drivers: adc: fix logics for judging the validity of arguments - component: uart_lin: fix break signal problem - middleware: cherryusb: fix buffer size error - middleware: lvgl: fix fbbuffer option - samples: gptmr: fix pwm_measure sample compile waring - samples: jpeg: fix interchange format of exif support - samples: jpeg: fix jpeg decode - samples: drivers: spi: fix the problem of CMD and ADDR configuration order - samples: drivers: mcan: can_fd loopback test setting is incorrect - samples: cherryusb: http_server_freertos: fix printf content error - samples: cherryusb: audio: change endpoint attributes for support MACBOOK - samples: tinyusb: msc: increase block numbers for windows format - samples: lwip: lwip_httpsrv: fix reload or refresh error ## [1.1.0] - 2023-03-31: Main changes since 1.0.0 Tested Segger Embedded Studio Version: 7.10 ### Changed: - docs: add new docs for rtd project. - soc: ip: enet: update the enet register file - soc: ip: adc16: update the adc16 header file - soc: hpm_romapi - Add APIs for configuring remapping, exip regions - drivers: enet: improve APIs related to PPS - drivers: adc: change adc bus blocking interface - drivers: adc: optimize getting oneshot result - drivers: src: update the default config for ADC12&ADC16 - boards: rename board-level APIs related to enet - components: enet_phy: rtl8201: update the register file - middleware: hpm_math: update dsp version - middleware: erpc: update to v1.10.0 - samples: uart: rename uart_dma_rx_idle to uart_software_rx_idle - samples: uart: add hardware rx idle detection sample - samples: multicore: erpc: core1 add sdk_compile_options(-O1) - samples: drivers: gptmr: update sample output. - samples: lwip: common: arch: ethernetif: update a calling function name - samples:drivers: adc: optimize oneshot handler ### Added: - arch: add FPU related APIs - soc/board: add HPM6280 support - soc: HPM6750: acmp: add ACMP section - components: add mt9m114 support - drivers: add raw8 pixel format support - drivers: csr - Implement CSR driver - drivers: adc: adc16: support resolution setting - drivers/samples: add SDM/PLA/CRC/MCAN - drivers: I2C: add new API - drivers: adc: adc16: support resolution setting - drivers: enet: add enet control config for transmission - middleware: cherryusb: audio: update class driver and demo template - middleware: add mbedtls lib files with SDP acceleration - freeRTOS: add support for static allocation - samples: drivers: enet: add a pps demo - samples: cherryusb: add audio samples - samples: add the resolution parameter in all demos with ADC16 - samples: add rfft demo - sampels: i2c: add interrupt b2b samples - samples: drivers: i2s: add an i2s_master demo - samples: drivers: i2s: add an i2s_slave demo - samples : rom_api : add sw_gm_api filter - samples: add the resolution parameter in all demos with ADC16 ### Fixed: - openocd: hpm6300evk: update sdram initialization. - drivers: trgmux: trigmux edge filter setting error - drivers: enet: fix register access error - drivers: adc16: fix the config error of ADC16_CONFIG1 - drivers: i2c: fix i2c timing configuration - drivers: SPI: fix SPI status API - drivers: fix gptmr cmp value don't minus one - drivers: mcan: correct the mcan ext_id filter issue - drivers: I2C: fix issue in i2c_master_address_read API - drivers: Self_ACK cannot be set in CAN driver - drivers: rtc rtc_config_alarm always return error code - cmake: correct source code compilation - soc: toolchain: gcc: initialize heap for SES - soc: gcc linker files: add NOLOAD keyword to noncacheable.bss section - soc: HPM6360: gcc: ld: correct noncacheable region name. - drivers: qei: Fix speed display always zero - middleware: freertos: disable global irq before vTaskStartScheduler - freeRTOS: fix trap when enable float feature - freeRTOS: fix tick lost - freeRTOS: fix segger project build warning - samples: drivers: i2s: fix CFGR config - samples: drivers: fix acmp toggle error - samples: lwip: fix the DHCP issue - samples: uart: fix irq_id judgment - samples: fix the order of uart pin configuration and clock configuration - samples: update spi dma sample - samples: drivers: sysctl: correct reset enable approach. - samples: fix dma_general_transfer sample memory out of bounds - samples: drivers: wdog: Fix logic issue on finding the nearest interrupt interval - sample: audio_codec: decoder_wav: add '\0' to fatfs path ## [1.00.0] - 2022-12-31: Main changes since 0.14.0 Tested Segger Embedded Studio Version: 7.10 ### Changed: - boards: add version info in banner. - board: lcdc: move panel para to board - components: spi component to support to transfer different width of data in dma handshake mode - drivers: rename dram to femc - middleware: cherryusb update to v0.7.0 - middleware: erpc: update for support rtos - middleware: hpm_mcl: update api naming - samples: erpc: rename erpc_matrix_multiply_rpmsg to erpc_matrix_multiply_rpmsg_bm - samples: erpc: reorganize erpc_matrix_multiply_rpmsg samples - samples: erpc: move samples folder to erpc_matrix_multiply_rpmsg - samples: update i2c/spi dma channel and dmamux channel definition - ses: project template: use demo.* as output file naming. - soc: HPM6750: toolchains: update linker files - soc: HPM6360: toolchains: update linker files ### Added: - arch: riscv: add read_clear_csr() API - component: add wm8960 support - component: add usb device iso transfer support - drivers: hpm_common: include hpm_sdk_version.h. - drivers: common: add NOP and WFI. - drivers: uart: add api to recv/send byte directly. - soc: HPM6750 linker files: rename rpmsg_sh_mem to sh_mem - cmake: add sdk version header file generation. - middleware: tinyusb: add audio class - middleware: hpm_math: add NN library - samples: erpc: add erpc_two_way_rpc_rpmsg_rtos sample - samples: erpc: add erpc_matrix_multiply_rpmsg_rtos sample - samples: add power mode switch demo. #282 - samples: drivers: adc: add a temperature measurement demo - samples: drviers: femc: add sram sample - samples: lwip demo for FreeRTOS - samples: lwip demo of interrupt usage - samples: tinyusb: add uac2 demo - samples: tflm: add face detection demo - samples: tflm: add MLPerf Tiny benchmark demo - samples: lwip: common: feature: add a LPI interrupt process ### Fixed: - drivers:interrupt: Fix FPU context crashing in nested irq case - drivers: src: adc: fix adc result in period mode - segger: update app directory structure in SES. - soc: disable irq during cache maintenance - middleware: lvgl: fps calculation to No. - samples: get off level based on board api. - samples: multicore: hello: core1 rgb led does not change correctly. ## [0.14.0] - 2022-10-31: Main changes since 0.13.0 Tested Segger Embedded Studio Version: 6.34a ### Changed: - drivers: inc: update adc driver - drivers: gptmr: update reload value - components: enet_phy: optimize APIs - components: enet_phy: dp83867: rename functions - components: conditionally add debug_console - middleware: add cherryusb (0.6.0) - middleware: littlevgl: update to v8.3.1 - middleware: fatfs: file name encoding in utf-8 - middleware: freertos: support nested irq handling - middleware: hpm_mcl: Optimized motor control foc speed - samples: drivers: dma src move to dma_general_transfer folder - samples: lwip: update all static addresses and all gateway addresses - samples: lwip: lwip_iperf: optimize the interactive log - samples: tinyusb: device: hid_generic_inout: optimize the python script - openocd: HPM6750A1 silicon in hpm6750-dual-core.cfg - header file: update the enet/conctl register files - header file: Update TRGMUX0 pin input source definition - header file: update the ADC12 header files - scripts: ses: organize file in ses according to real path. - cmake: split gcc and ses source - board: bump HPM6750 DCDC voltage to 1200mv ### Fixed: - drivers: pdma: fix scale api issue - drivers: i2c: update DATACNT processing - drivers: i2s: fix i2s interrupt workaround in i2s_init - drivers: pwm: fix pwm capture function error - drivers: pwm: fix pwm capture configuration error - drivers: clock: fix error in clock_set_xxx_source - drivers: wdg: timeout calculation error - drivers: trgm_drv: bugfix: include error - drivers: romapi: call fencei after flash erase/write operation - drivers: watchdog: overflow - drivers: usb: host controller initialization issue - drivers: i2s: i2s_enable() issue fix - middleware: tinyusb: src: class: fix the HID report desc macro - samples: drivers: adc: optimize all ADC demos - samples: drivers: adc: fix all channel initializations without a default value - samples: motor_ctrl: hardware trigger api usage error - samples: audio_codec: update clock process for 44100 sample rate - samples: lcdc: boundary pixel is incorrenct - samples: multicore: BOOT_HEADER was missing in multicore core0 example - samples: drivers: i2s: correct audio data if depth < 32bit. - samples: hpm_math: fft_perf_test: Fix error printing information - samples: fix pdm2dao noise problem - samples: lwip: fix the enet throughput degradation - soc: correct address overlapping SES XIP linker file - soc: correct the interrupt context switch issue - soc: fix Lack of interrupt claim for swi - boards: fix some rmii reference clock APIs ### Added: - boards: add hpm6750evk2 support - soc: add initfini.c - drivers: lcdc: add y8 support - drivers: spi: update data_length processing - drivers: spi: add api to enable/disable spi dma request - drivers: pmp: Add pmp_config_entry API - components: add ipc_event_mgr - component: spi: add cache maintain - middleware: add erpc - samples: lwip: support self-adaptive port speed and duplex mode - samples: jpeg: support grayscale - samples: drivers: spi: use api to get data length - samples: drivers: spi: add interrupt b2b sample - samples: drivers: mbx: add singlecore samples - samples: drivers: add dma circle transfer - samples: drivers: pwm: add pwm capture demo - samples: provide OTP API demo - samples: add cherryusb hid/msc/cdc samples - samples: add Guomi API example - samples: add erpc sample - samples: add segger_rtt ## [0.13.0] - 2022-07-31: Main changes since 0.12.1 ### Changed: - drivers: adc: fix sequence and preemption mode - drivers: usb: automatically change transceiver type in host mode - drivers: pwm: modify the interface for setting the pwm shadow register trigger function - drivers: sdxc: driver improvement - samples: jpeg demo update - samples: motor_ctrl: Optimize motor control performance - samples: motor_ctrl: Modify the pwm update method to be hardware triggered - samples: audio_codec: wav: Modify the interface - samples: audio_codec: add dao support - samples: tinyusb: update all USB project names - samples: adc: place DMA buffer in noncacheable - components: usb: update two struct definitions for the hcd_data_t and the dcd_data_t - middleware: littlevgl: update double buffer refresh approach. - middleware: fatfs: enable exfat format - middleware: fatfs: change 'USB' to lowercase - middleware: hpm_math: remove cache operations from the ffa interface - scripts: ses: update file path using $(HPM_SDK_BASE) ### Fixed: - drivers: gpiom: fix spelling errors in API names - drivers: enet: fix ptp time offset update - drivers: cam: fix store mode configuration - drivers: can: Fix the issue can timestamp cannot be enabled - drivers: gpio: incorrect return type gpio_get_port_interrupt_flags. - middleware: audio_codec: decoder_wav: fix wav codec problem - middleware: tinyusb: fix the alignment of _hcd_data - soc: driver: clock: i2s get clock error - soc: hpm_misc.h: fix incorrect system address mapping. - soc: SVD files: fix SDP peripheral reset value problem - soc: disable vector mode explicitly. - boards: correct device name in ses project - board: correct the printf format for frequency and register base - python: fix ses project generation on windows - samples: adc: fix not working in sequence mode and preemption mode - ses: set obj path for common configuration. - cmake: ses: put app source into separate category in ses. ### Added: - components: enet_phy: add rtl8211 driver - components: hpm_spi: add initial SPI component - components: add DMA Manager - drivers: cam: add new API - drivers: uart: add uart_set_baudrate API - drivers: spi: update dma transfer API - samples: tinyusb: host: add a hid demo - samples: drivers: spi: add master_trans_large_amount_of_data example - samples: decoder_wav: Add support for different bit rates and bits - samples: drivers: audio: automatic acquisition of i2s clock frequency - middleware: tinyusb: update portable file for USB host ## [0.12.1] - 2022-07-01: Main changes since 0.12.0 ### Fixed: - update lwipopt.h for updated enet driver ## [0.12.0] - 2022-06-30: Tested with SES 6.32 Main changes since 0.11.0 ### Changed: - boards: hpm6360evk has been renamed to hpm6300evk - boards: Use CSR_CYCLE in the clock_delay function - soc: hpm_soc.h: include hpm_common.h - driver: rename hpm_pmu_drv.c to hpm_pcfg_drv.h - driver: spi: change to non-blocking interfaces - driver: dma: update driver to adapt to different DMA instance constraints - components: enet_phy: update dp83867 driver - components: enet_phy: remove rtl8211 driver - cmake: enable nano newlib by default - cmake: move distclean to the beginning - middleware: littlevgl enable PDMA by default - middleware: tinyusb: upgrade to 0.13.0 - samples: tinyusb: device: cdc_msc: adjust buffer size - samples: drivers: plic: use gpio toggle count as nested irq ### Fixed: - drivers: pwm: fix function name inconsistency bug - drivers: enet: remove "board.h" in enet driver - drivers: clock: Fix bugs in hpm6360 clock driver - drivers: clock: returns wrong adc/dac clock in HPM6360 - drivers: dram: failed to configure 8bit mode. - freertos: fix issue about running on core1 - boards: hpm6300evk pmp_entry set initial value - middleware: littlevgl: fix pdma cache op issue - middleware: littlevgl: fix doxygen markdown for pdma driver - middleware: lvgl: ses: update ram linker. - middleware: hpm_math: fix ffa cache size error - samples: audio_codec: remove the wrong dependency - samples: FATFS demo cannot support write/read if FATFS passes unaligned buffer address ### Added: - samples: add memstress and flash stress - drivers: clock: add implement common delay function based on mcycle and mcycleh register - boards: add hpm6300evk support - boards: hpm6750evkmini: motor control support - soc: add svd files - middleware: lwip: iperf: enable iperf and add udp function - samples: lwip: add lwip_iperf ## [0.11.0] - 2022-05-31: Main changes since 0.10.0-hpm6360-er ### Changed: - readme: change the location of the starting document - components: change hal_adc_xx to hpm_adc_xx - drivers: update the I2C driver - cmake: change default rv_arch to rv32imac - cmake: modified in a zephyr-compatible way - drivers: uart: redefined struct with zephyr - cmake: change soc and board name - cmake: ses: support enable ext_dsp in project file. - samples/tinyusb/host: optimize the toggle rate of the blinking led - samples/tinyusb/device: replace mchtimer with board_timer for led_linking_taskk - samples/tinyusb/device: optimize the implement of led_blinking_task - soc: update IP header and soc header files ### Fixed: - samples: motor_ctrl: bldc_block: fix some error - middleware: hpm_math: fix andes toolchain compile error - middleware: hpm_math: fix libdsp.a error - middleware: hpm_math: add ext-dsp for SES - samples: openocd_algo: fix func_table placement. - boards: hpm6360evk: correct cpu frequency - boards: fix warning caused by code irregularities - boards: LED status is not the same between hpm6750mini rev-A and rev-B - boards: update board_led_write. ## Added: - driver: add spi_setup_dma_transfer() API - middleware: hpm_math: add software fft function - middleware: hpm_math: add ffa to hpm_math - samples: i2c: update the sample b2b - samples: hpm_math: add fft_performance demo - samples: add SPI DMA sample - samples: multicore coremark using debug console only - samples: 1588: add ptp v1 master/slave ## [0.10.0_hpm6300] - 2022-05-16: Main changes since 0.10.0 ### Changed: - ip register header file update - ses_proj: using generated complete cpu_regs_xml to replace general cpu registers xml - drivers: gpiom: move gpiom_gpio_t into hpm_gpiom_src.h - drivers: update the enet driver - samples: dram: change sdram test address in dma demo - samples: drivers: mbx: exclude flash targets for core0 as well. - samples: lwip: update ethernetif.c ### Fixed: - drivers: ptpc: update ptpc_init_timer_with_initial. - drivers: can: bug fix and update - soc: correct vector table inclusion and swi name - env.sh: fix HPM_SDK_BASE setting problem with msys. - samples: sha256_example: failed to run case 13 and 14 with gcc. ### Added: - soc: add HPM6360 support - drivers: add ffa, pllctlv2, dac - boards: add hpm6360evk support - components: add adcx module - components/enet_phy: add the RTL8201 driver - samples: drivers: dac, ffa - samples: rgb_red: add evkmini ver B support ## [0.10.0] - 2022-04-30: Main changes since 0.9.0 ### Changed: - drivers: gptmr: split irq enable/disable interface - drivers: can: 155 Update SJW setting in CAN driver - soc: HPM6750: rename safe stack symbol in link script - components: debug_console: wait uart tx flag on writing. ### Added: - drivers: enet: add 1588 support - drivers: can: Add TDC support - drivers: mchtmr: add counter init API. - drivers: dma: add dma_disable_channel() API - middleware: add wav decoder - samples: lwip: add ptp demos - samples: tinyusb: add msc, cdc demo - samples: audio_codec: add wav player demo - samples: add tinyuf2 initial support - samples: add initial uart dma rx idle demo ### Fixed: - soc: HPM6750: sysctl: fix cpu lp mode API. - drivers: uart: correct baudrate calculation. - drivers: usb: fix: no response in device mode when a USB cable is pluged out - boards: correct the pin setting related to USB ## [0.9.0] - 2022-04-01: Main changes since 0.8.0 ### Changed: - drivers: update WDG, UART, DMA, DMAMUX driver - drivers: enet remove enet_intf_selection - drivers: can: support configure bit timing via low-level bit timing parameters - drivers: optimize gpio driver - samples: exclude flash targets for mbx core1 - samples: adjust SES project setting for coremark - samples: jpeg: update and integration jpeg decode samples - ses: use relpath for linker script in project file - ses: add HPM device name in generated project file - soc: HPM6750: add an interface selection api ### Added: - soc: HPM6750: add ram linker for core1 - ses: support to use Andes toolchain - middleware: add hpm_math (replacing hpm_dsp) - samples: add lwip httpd - drivers: add section and alignment general instructions in hpm_common.h ### Fixed: - boards: hpm6750evk: fix bldc adc pinmux error - boards : hpm6750evk : pinmux : fix spi init pins error - samples: sdp: fix non-cacheable data initialization issue - samples: littlevgl: fix wrong picture patch in README ## [0.8.0] - 2022-03-04: All changes since 0.7.3 ### Changed: - rename middleware/sdmmc to middleware/hpm_sdmmc - place isr into .isr_vector section for irq non-vector mode - change csr functions to support llvm ### Fixed: - ses: fix issue in register xml - freertor: fix trap handler at non-vector mode - sdxc: fix software reset issue ### Added: - add sdk doc - add more sample doc - add multicore demo - i2c/uart: add dma support - add tensorflow lite for microcontroller ## [0.7.3] - 2022-02-23: All changes since 0.7.2 ### Changed: - freertos: change exception handling ## [0.7.2] - 2022-02-21: All changes since 0.7.1 ### Changed: - freertos: change freertos irq stack definition, passed in CMakeLists.txt, defined in linker - soc: hpm6750: add DISABLE_IRQ_PREEMPTIVE to check if it needs to enable irq preemption ### Fixed: - freertos: disable irq preemption ## [0.7.1] - 2022-02-13: All changes since 0.7.0 ### Changed: - drivers: adc12: update adc12_prd_config_t - samples: can: update case with interrupt and communication between two boards ### Fixed: - drivers: can: fix blocking transcation issue - samples: mbx: support run this example in SES - SES: startup: add fpu enable if abi is set to enable hw fp ### Added: - samples: multicore: add flash based multicore example - drivers: can: add apis to recvieve message for non-blocking use ## [0.7.0] - 2022-01-30: All changes since 0.6.2 ### Changed: - update default CPU frequency to 816MHz from 648MHz - update the ip headers - drivers: gpio: replace gpio_XXX_pins with gpio_XXX_port - drivers: gpio: remove pin level enum definition - drivers: i2s: driver update to remove mclk_div - drivers: ptpc: update driver - drivers: common: update get first set bit API - drivers: uart: split one enable with parameter into enable and disable interfaces - drivers: pwm: change name of output_channel config API - drivers: trgm: split separate API to enable/disable io output - soc: HPM6750: initialize noncacheable data in startup - soc: HPM6750: l1c: update fence.i call - samples: hello_world: add LED flashing - samples: littlevgl: remove lvgl example ### Fixed: - hpm6750evkmini: correct refresh cycle number of sdram - hpm6750evkmini: Fix the SDRAM memory range issue in flash_sdram_xip linker file - SES: remove no_relax option for linker, since segger has provide a patch to its ld for ses v6.10. - drivers: gpio: fix read pin issue: - drivers: usb: fix usb disconnection under linux environment - drivers: sdxc: Fixed the compatibility issue on different SD/eMMC cards in the sdcard_fatfs demo - drivers: gptmr: incorrect DMAEN configuration condition - drivers: gptmr: clear CNTRST bit after set. - SDK_DECLARE_EXT_ISR_M cannot work in the c++ file - FreeRTOS: fix ISR_STACK setting - components: touch: gt911: fix gpio write pin call ### Added: - SEG: add register definition file in generated embedded studio project - samples: drivers: gpiom: Add example to demonstrate gpiom's function - drivers: common: add macro to put data into noncacheable sections - middleware: integrate lwip