diff options
Diffstat (limited to 'board/samus_pd/board.h')
-rw-r--r-- | board/samus_pd/board.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/board/samus_pd/board.h b/board/samus_pd/board.h index be1dad7f8d..8729cdc2a2 100644 --- a/board/samus_pd/board.h +++ b/board/samus_pd/board.h @@ -18,12 +18,14 @@ /* Optional features */ #define CONFIG_ADC #define CONFIG_BOARD_PRE_INIT +#define CONFIG_CHARGE_MANAGER #define CONFIG_FORCE_CONSOLE_RESUME #define CONFIG_HIBERNATE_WAKEUP_PINS (STM32_PWR_CSR_EWUP3|STM32_PWR_CSR_EWUP8) #define CONFIG_HW_CRC #define CONFIG_I2C #undef CONFIG_LID_SWITCH #define CONFIG_LOW_POWER_IDLE +#define CONFIG_PWM #define CONFIG_STM_HWTIMER32 #undef CONFIG_TASK_PROFILING #define CONFIG_USB_POWER_DELIVERY @@ -35,9 +37,11 @@ #define CONFIG_USB_PD_DUAL_ROLE #define CONFIG_USB_PD_FLASH_ERASE_CHECK #define CONFIG_USB_PD_INTERNAL_COMP +#define CONFIG_USB_SWITCH_PI3USB9281 +#undef CONFIG_USB_SWITCH_PI3USB9281_MUX_GPIO +#define CONFIG_USB_SWITCH_PI3USB9281_MUX_GPIO GPIO_USB_C_BC12_SEL #define CONFIG_USBC_SS_MUX #define CONFIG_USBC_VCONN -#define CONFIG_USB_SWITCH_TSU6721 #define CONFIG_VBOOT_HASH #undef CONFIG_WATCHDOG_HELP @@ -63,6 +67,7 @@ #define TIM_CLOCK32 2 #define TIM_ADC 3 +#include "charge_manager.h" #include "gpio_signal.h" /* ADC signal */ @@ -76,12 +81,31 @@ enum adc_channel { ADC_CH_COUNT }; +enum pwm_channel { + PWM_CH_ILIM = 0, + /* Number of PWM channels */ + PWM_CH_COUNT +}; + +/* Charge current limit min / max, based on PWM duty cycle */ +#define PWM_0_MA 500 +#define PWM_100_MA 4000 + +/* Map current in milli-amps to PWM duty cycle percentage */ +#define MA_TO_PWM(curr) (((curr) - PWM_0_MA) * 100 / (PWM_100_MA - PWM_0_MA)) + /* Called when we receive battery level info from the EC. */ void board_update_battery_soc(int soc); /* Get the last received battery level. */ int board_get_battery_soc(void); +/* Set the active charge port. */ +void board_set_active_charge_port(int charge_port); + +/* Set the charge current limit. */ +void board_set_charge_limit(int charge_ma); + #endif /* !__ASSEMBLER__ */ #endif /* __BOARD_H */ |