#include <stdint.h>
#include <stdbool.h>
#include <stdio.h>
#include "system_gr55xx.h"
#include "gr55xx_hal_def.h"
Go to the source code of this file.
Enumerations | |
enum | run_mode_t { XIP_64M = 0, XIP_48M, XIP_XO16M, XIP_24M, XIP_16M, XIP_32M, MIRROR_64M, MIRROR_48M, MIRROR_XO16M, MIRROR_24M, MIRROR_16M, MIRROR_32M } |
system clock and run mode. More... | |
enum | sdk_clock_type_t { RNG_OSC_CLK = 0, RTC_OSC_CLK, RNG_OSC_CLK2 } |
sdk clock type. More... | |
enum | mem_power_t { MEM_POWER_FULL_MODE = 0, MEM_POWER_AUTO_MODE } |
memory power setting mode. More... | |
Functions | |
void | platform_sdk_init (void) |
platform sdk init function. More... | |
void | mem_pwr_mgmt_full_power_set (void) |
set the memory power state to full. This function is mainly used in some scenarios where all SRAMs need to be powered on More... | |
void | mem_pwr_mgmt_mode_set_from (uint32_t start_addr, uint32_t size) |
Control the memory power supply by specifying start address and length. More... | |
void | mem_pwr_mgmt_init (void) |
memory check process More... | |
void | system_lp_counter_set (uint8_t cnt_a, uint8_t cnt_b) |
update the counter A and counter B. More... | |
void | ble_wakeup_osc_time_set (run_mode_t run_mode, uint16_t osc_us) |
Set Time to wakeup oscillator before BLE Activity. More... | |
uint16_t | ble_wakeup_osc_time_get (run_mode_t run_mode) |
Get Time to wakeup oscillator before BLE Activity. More... | |
uint32_t | nvds_get_start_addr (void) |
Get NVDS Start Address. More... | |
void | ble_program_delay_set (run_mode_t run_mode, uint8_t hslot) |
Set BLE Program Delay. More... | |
void | ble_sleep_algo_dur_set (run_mode_t run_mode, uint16_t dur_hus) |
Set BLE Sleep Algorithm Duration. More... | |
void | ble_max_push_frame_time_set (run_mode_t run_mode, uint16_t max_push_hus) |
Set Maximum BLE Pushing Frame Time. More... | |
void | sys_min_sleep_threshold_set (run_mode_t run_mode, uint32_t min_sleep_us) |
Set Minimum System Sleep Time. More... | |
void | platform_clock_init (mcu_clock_type_t sys_clock, sdk_clock_type_t clock, uint16_t accuracy, uint16_t xo_offset) |
Platform low power clock init function. More... | |
void | platform_clock_init_rng (mcu_clock_type_t sys_clock, sdk_clock_type_t clock, uint16_t accuracy, uint16_t xo_offset) |
Platform low power clock init function. More... | |
void | platform_set_rtc_crystal_delay (uint16_t wait) |
Set RTC crystal oscillator stabilization time. More... | |
void | platform_rng2_calibration_start (void) |
Start RNG2 OSC calibration. More... | |
void | platform_rng2_calibration_stop (bool wait) |
Stop RNG2 OSC calibration. More... | |
bool | platform_rng2_calibration_is_busy (void) |
Check whether RNG2 OSC calibration is on going. More... | |
uint32_t | platform_rng2_calibration_get (bool wait_result, bool allow_cached) |
Get RNG2 OSC calibration result. More... | |
void | platform_init (void) |
Platform init function. More... | |
void | warm_boot_first (void) |
the first warm boot stage. More... | |
void | warm_boot_second (void) |
the second warm boot stage. More... | |
void | system_pmu_init (mcu_clock_type_t clock_type) |
PMU init function. More... | |
void | system_pmu_deinit (void) |
PMU deinit function. More... | |
void | warm_boot (void) |
Warm boot process. More... | |
void | warm_boot_set_exflash_readid_delay (uint32_t delay_us) |
Set delay time between flash wakeup and read chip id in warm boot. Please referrent the time of Flash Deep Power- down to Stand-by mode. More... | |
uint32_t | warm_boot_get_exflash_readid_delay (void) |
Get delay time between flash wakeup and read chip id in warm boot. More... | |
void | pmu_calibration_handler (void *p_arg) |
PMU calibration handler. More... | |
void | platform_init_push (void) |
protection platform timeout through watchdog. More... | |
void | platform_init_pop (void) |
protection platform timeout through watchdog. More... | |
hal_status_t | platform_flash_enable_quad (void) |
write flash QE More... | |
hal_status_t | platform_flash_protection (uint32_t base_priority) |
During Flash erase/write operation, Disable external interrupts with a priority less than or equal to base_priority in the system. More... | |
hal_status_t | platform_interrupt_protection_push (void) |
protection interrupt handler during writing/erasing flash. More... | |
hal_status_t | platform_interrupt_protection_pop (void) |
protection interrupt handler during writing/erasing flash. More... | |
void | pwr_mgmt_warm_boot (void) |
Power Management warm boot. More... | |
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of GOODIX nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Definition in file platform_sdk.h.