1 /* 2 * Copyright (c) 2023 hpmicro 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 * 6 */ 7 8 #ifndef HPM_PINMUX_H 9 #define HPM_PINMUX_H 10 11 #ifdef __cplusplus 12 extern "C" { 13 #endif 14 void init_uart_pins(UART_Type *ptr); 15 void init_uart_pin_as_gpio(UART_Type *ptr); 16 void init_i2c_pins_as_gpio(I2C_Type *ptr); 17 void init_i2c_pins(I2C_Type *ptr); 18 void init_femc_pins(void); 19 void init_ppi_pins(void); 20 void init_sdm_pins(void); 21 void init_pwm_pin_as_sdm_clock(void); 22 void init_gpio_pins(void); 23 void init_spi_pins(SPI_Type *ptr); 24 void init_spi_pins_with_gpio_as_cs(SPI_Type *ptr); 25 void init_gptmr_pins(GPTMR_Type *ptr); 26 void init_hall_trgm_pins(void); 27 void init_qei_trgm_pins(void); 28 void init_butn_pins(void); 29 void init_acmp_pins(void); 30 void init_pwm_pins(PWMV2_Type *ptr); 31 void init_usb_pins(void); 32 void init_i2s_pins(I2S_Type *ptr); 33 void init_qeo_pins(QEOV2_Type *ptr); 34 void init_sei_pins(SEI_Type *ptr, uint8_t sei_ctrl_idx); 35 void init_qeiv2_uvw_pins(QEIV2_Type *ptr); 36 void init_qeiv2_ab_pins(QEIV2_Type *ptr); 37 void init_qeiv2_abz_pins(QEIV2_Type *ptr); 38 void init_rdc_pin(void); 39 void init_dao_pins(void); 40 void init_pdm_pins(void); 41 void init_enet_pins(ENET_Type *ptr); 42 void init_enet_pps_pins(void); 43 void init_adc16_pins(void); 44 void init_adc_bldc_pins(void); 45 void init_adc_qeiv2_pins(void); 46 void init_can_pins(MCAN_Type *ptr); 47 void init_led_pins_as_gpio(void); 48 void init_led_pins_as_pwm(void); 49 void init_plb_pins(void); 50 void init_esc_pins(void); 51 void init_esc_in_out_pin(void); 52 void init_tsw_pins(void); 53 void init_tamper_pins(void); 54 void init_pwm_fault_pins(void); 55 void init_uart_break_signal_pin(void); 56 57 #ifdef __cplusplus 58 } 59 #endif 60 #endif /* HPM_PINMUX_H */ 61