Enumerations | Functions
platform_sdk.h File Reference
`#include <stdint.h>`
`#include <stdbool.h>`
`#include <stdio.h>`
`#include "system_gr55xx.h"`
`#include "gr55xx_hal_def.h"`
Include dependency graph for platform_sdk.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_mode_set (mem_power_t mem_pwr_mode)
| Set the memory power management mode, which can be automatic mode or full power on mode. 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 | 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. 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 | lfrc32k_calibration (void)
| LFRC32K calibration. 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...
void | pwr_mgmt_warm_boot (void)
| Power Management warm boot. More...

## Detailed Description

Attention

  ##### Copyright (c) 2019 GOODIX

All rights reserved.

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.