1 // Copyright (C) 2022 Beken Corporation 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 #pragma once 16 17 #include "power_hal.h" 18 #include "icu_driver.h" 19 extern icu_driver_t s_icu; 20 21 /**< uart related APIs */ 22 #define power_uart_pwr_up(id) power_hal_uart_pwr_up(&s_icu.hal, id) 23 #define power_uart_pwr_down(id) power_hal_uart_pwr_down(&s_icu.hal, id) 24 25 /**< i2c related APIs */ 26 #define power_i2c_pwr_up(id) power_hal_i2c_pwr_up(&s_icu.hal, id) 27 #define power_i2c_pwr_down(id) power_hal_i2c_pwr_down(&s_icu.hal, id) 28 29 /**< irda related APIs */ 30 #define power_irda_pwr_up() power_hal_irda_pwr_up(&s_icu.hal) 31 #define power_irda_pwr_down() power_hal_irda_pwr_down(&s_icu.hal) 32 33 /**< i2s related APIs */ 34 #define power_i2s_pwr_up() power_hal_i2s_pcm_pwr_up(&s_icu.hal) 35 #define power_i2s_pwr_down() power_hal_i2s_pcm_pwr_down(&s_icu.hal) 36 37 /**< spi related APIs */ 38 #define power_up_spi(id) power_hal_pwr_up_spi(&s_icu.hal, id) 39 #define power_down_spi(id) power_hal_pwr_down_spi(&s_icu.hal, id) 40 41 /**< saradc related APIs */ 42 #define power_saradc_pwr_up() power_hal_saradc_pwr_up(&s_icu.hal) 43 #define power_saradc_pwr_down() power_hal_saradc_pwr_down(&s_icu.hal) 44 45 /**<pwm related APIs */ 46 #define power_pwm_pwr_up(chan) power_hal_pwm_pwr_up(&s_icu.hal, chan) 47 #define power_pwm_pwr_down(chan) power_hal_pwm_pwr_down(&s_icu.hal, chan) 48 49 /**< timer related APIs */ 50 #define power_pwr_up_timer(chan) power_hal_pwr_up_timer(&s_icu.hal, chan) 51 #define power_pwr_down_timer(chan) power_hal_pwr_down_timer(&s_icu.hal, chan) 52 53 /**< sdio host related APIs */ 54 #define power_sdio_pwr_up() power_hal_sdio_pwr_up(&s_icu.hal) 55 #define power_sdio_pwr_down() power_hal_sdio_pwr_down(&s_icu.hal) 56 57 /**< arm wdt related APIs */ 58 #define power_arm_wdt_pwr_up() power_hal_arm_wdt_pwr_up(&s_icu.hal) 59 #define power_arm_wdt_pwr_down() power_hal_arm_wdt_pwr_down(&s_icu.hal) 60 61 /**< tl410 wdt related APIs */ 62 #define power_tl410_pwr_up() power_hal_tl410_pwr_up(&s_icu.hal) 63 #define power_tl410_pwr_down() power_hal_tl410_pwr_down(&s_icu.hal) 64 #define power_tl410_wdt_pwr_up() power_hal_tl410_wdt_pwr_up(&s_icu.hal) 65 #define power_tl410_wdt_pwr_down() power_hal_tl410_wdt_pwr_down(&s_icu.hal) 66 67 #define power_audio_pwr_up() power_hal_audio_pwr_up(&s_icu.hal) 68 #define power_audio_pwr_down() power_hal_audio_pwr_down(&s_icu.hal) 69 70 /**< usb related APIs */ 71 #define power_usb_pwr_up(id) power_hal_usb_pwr_up(&s_icu.hal, id) 72 #define power_usb_pwr_down(id) power_hal_usb_pwr_down(&s_icu.hal, id) 73 74 /**< fft related APIs */ 75 #define power_fft_pwr_up() power_hal_fft_pwr_up(&s_icu.hal) 76 #define power_fft_pwr_down() power_hal_fft_pwr_down(&s_icu.hal) 77 78 /**< jpeg related APIs */ 79 #define power_jpeg_pwr_up() power_hal_jpeg_pwr_up(&s_icu.hal) 80 #define power_jpeg_pwr_down() power_hal_jpeg_pwr_down(&s_icu.hal) 81 82 #define power_qspi_pwr_up() power_hal_qspi_pwr_up(&s_icu.hal) 83 #define power_qspi_pwr_down() power_hal_qspi_pwr_down(&s_icu.hal) 84 85 /**< ble related APIs */ 86 #define power_ble_pwr_up() power_hal_ble_pwr_up(&s_icu.hal) 87 #define power_ble_pwr_down() power_hal_ble_pwr_down(&s_icu.hal) 88 89 /**< security related APIs */ 90 #define power_security_pwr_up() power_hal_security_pwr_up(&s_icu.hal) 91 #define power_security_pwr_down() power_hal_security_pwr_down(&s_icu.hal) 92 93 /**< cec related APIs */ 94 #define power_cec_pwr_up() power_hal_cec_pwr_up(&s_icu.hal) 95 #define power_cec_pwr_down() power_hal_cec_pwr_down(&s_icu.hal) 96 97 /**< sdio_dma related APIs */ 98 #define power_sdio_dma_pwr_up() power_hal_sdio_dma_pwr_up(&s_icu.hal) 99 #define power_sdio_dma_pwr_down() power_hal_sdio_dma_pwr_down(&s_icu.hal) 100 101 /**< wdt related APIs */ 102 #define power_up_wdt() power_hal_pwr_up_wdt(&s_icu.hal) 103 #define power_down_wdt() power_hal_pwr_down_wdt(&s_icu.hal) 104 105