/** ************************************************************************************************ * SEMIDRIVE Copyright Statement * Copyright (c) SEMIDRIVE. All rights reserved * * This software and all rights therein are owned by SEMIDRIVE, and are * protected by copyright law and other relevant laws, regulations and * protection. Without SEMIDRIVE's prior written consent and/or related rights, * please do not use this software or any potion thereof in any form or by any * means. You may not reproduce, modify or distribute this software except in * compliance with the License. Unless required by applicable law or agreed to * in writing, software distributed under the License is distributed on * an 'AS IS' basis, WITHOUT WARRANTIES OF ANY KIND, either express or implied. * **************************************************************************************************/ /** ************************************************************************************************ * \file sdrv_firewall_gpio.h * \brief This file contains interface header for SSDk Firewall GPIO module. * * *
Date Version *
2023/11/29 1.0.0 *
**************************************************************************************************/ #ifndef FIREWALL_GPIO_H #define FIREWALL_GPIO_H #ifdef __cplusplus extern "C" { #endif /*************************************************************************************************** * Include header files **************************************************************************************************/ #include /*************************************************************************************************** * Global Function Declarations **************************************************************************************************/ /** * @brief Configure the dio rule space and perimissions. * * This function Configure the dio rule space and perimissions. * This function should be called only once. * * @param[in] io_cfg the configuration of pin permission. * @param[in] core_num the number of cores. * * @return The result of this function. * @details - return FIREWALL_E_OK : Configure the dio rule space and perimissions success. * - return FIREWALL_E_NULL_POINTER : The pointer is a NULL_PTR. * - return FIREWALL_E_GPIO_CORE_NUM : The number of the core configurations is unvalid. */ status_t sdrv_firewall_gpio_rulespace_configure( const sdrv_gpio_core_cfg_t *io_cfg, uint8_t core_num); /** * @brief Lock the configurations of the dio rule space and perimissions. * * This function locks the configurations of the dio rule space and perimissions. * This function is called by sdrv_firewall_init(). * This function should be called after sdrv_firewall_gpio_rulespace_configure(). */ void sdrv_firewall_gpio_rulespace_Lock(void); #ifdef __cplusplus } #endif #endif /* FIREWALL_GPIO_H */ /* End of file */