diff options
-rw-r--r-- | driver/bc12/mt6360.c | 2 | ||||
-rw-r--r-- | driver/bc12/mt6360.h | 52 | ||||
-rw-r--r-- | include/driver/bc12/mt6360_public.h | 62 |
3 files changed, 64 insertions, 52 deletions
diff --git a/driver/bc12/mt6360.c b/driver/bc12/mt6360.c index 4bd780190c..41b5b0e244 100644 --- a/driver/bc12/mt6360.c +++ b/driver/bc12/mt6360.c @@ -7,7 +7,7 @@ #include "charge_manager.h" #include "console.h" #include "crc8.h" -#include "driver/bc12/mt6360.h" +#include "mt6360.h" #include "ec_commands.h" #include "hooks.h" #include "i2c.h" diff --git a/driver/bc12/mt6360.h b/driver/bc12/mt6360.h index 34642967e1..e23a2623ed 100644 --- a/driver/bc12/mt6360.h +++ b/driver/bc12/mt6360.h @@ -5,10 +5,7 @@ #ifndef __CROS_EC_MT6360_H -#define MT6360_PMU_I2C_ADDR_FLAGS 0x34 -#define MT6360_PMIC_I2C_ADDR_FLAGS 0x1A -#define MT6360_LDO_I2C_ADDR_FLAGS 0x64 -#define MT6360_PD_I2C_ADDR_FLAGS 0x4E +#include "bc12/mt6360_public.h" #define MT6360_IRQ_MASK 0x0C @@ -91,51 +88,4 @@ (MT6360_BUCK_VOSEL_MIN + \ MT6360_BUCK_VOSEL_STEP_MV * MT6360_BUCK_VOSEL_MAX_STEP) -enum mt6360_regulator_id { - MT6360_LDO3, - MT6360_LDO5, - MT6360_LDO6, - MT6360_LDO7, - MT6360_BUCK1, - MT6360_BUCK2, - - MT6360_REGULATOR_COUNT, -}; - -int mt6360_regulator_get_info(enum mt6360_regulator_id id, char *name, - uint16_t *voltage_count, uint16_t *voltages_mv); - -int mt6360_regulator_enable(enum mt6360_regulator_id id, uint8_t enable); - -int mt6360_regulator_is_enabled(enum mt6360_regulator_id id, uint8_t *enabled); - -int mt6360_regulator_set_voltage(enum mt6360_regulator_id id, int min_mv, - int max_mv); - -int mt6360_regulator_get_voltage(enum mt6360_regulator_id id, int *voltage_mv); - -enum mt6360_led_id { - MT6360_LED_RGB1, - MT6360_LED_RGB2, - MT6360_LED_RGB3, - MT6360_LED_RGB_ML, - - MT6360_LED_COUNT, -}; - -#define MT6360_LED_BRIGHTNESS_MAX 15 - -struct mt6360_config_t { - int i2c_port; - int i2c_addr_flags; -}; - -int mt6360_led_enable(enum mt6360_led_id led_id, int enable); - -int mt6360_led_set_brightness(enum mt6360_led_id led_id, int brightness); - -extern const struct mt6360_config_t mt6360_config; - -extern const struct bc12_drv mt6360_drv; - #endif /* __CROS_EC_MT6360_H */ diff --git a/include/driver/bc12/mt6360_public.h b/include/driver/bc12/mt6360_public.h new file mode 100644 index 0000000000..d2b8499e1f --- /dev/null +++ b/include/driver/bc12/mt6360_public.h @@ -0,0 +1,62 @@ +/* Copyright 2021 The Chromium OS Authors. All rights reserved. + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#ifndef __CROS_EC_DRIVER_BC12_MT6360_PUBLIC_H +#define __CROS_EC_DRIVER_BC12_MT6360_PUBLIC_H + +#include <inttypes.h> + +#define MT6360_PMU_I2C_ADDR_FLAGS 0x34 +#define MT6360_PMIC_I2C_ADDR_FLAGS 0x1a +#define MT6360_LDO_I2C_ADDR_FLAGS 0x64 +#define MT6360_PD_I2C_ADDR_FLAGS 0x4e + +enum mt6360_regulator_id { + MT6360_LDO3, + MT6360_LDO5, + MT6360_LDO6, + MT6360_LDO7, + MT6360_BUCK1, + MT6360_BUCK2, + + MT6360_REGULATOR_COUNT, +}; + +int mt6360_regulator_get_info(enum mt6360_regulator_id id, char *name, + uint16_t *voltage_count, uint16_t *voltages_mv); + +int mt6360_regulator_enable(enum mt6360_regulator_id id, uint8_t enable); + +int mt6360_regulator_is_enabled(enum mt6360_regulator_id id, uint8_t *enabled); + +int mt6360_regulator_set_voltage(enum mt6360_regulator_id id, int min_mv, + int max_mv); + +int mt6360_regulator_get_voltage(enum mt6360_regulator_id id, int *voltage_mv); + +enum mt6360_led_id { + MT6360_LED_RGB1, + MT6360_LED_RGB2, + MT6360_LED_RGB3, + MT6360_LED_RGB_ML, + + MT6360_LED_COUNT, +}; + +#define MT6360_LED_BRIGHTNESS_MAX 15 + +int mt6360_led_enable(enum mt6360_led_id led_id, int enable); + +int mt6360_led_set_brightness(enum mt6360_led_id led_id, int brightness); + +extern const struct mt6360_config_t mt6360_config; + +struct mt6360_config_t { + int i2c_port; + int i2c_addr_flags; +}; +extern const struct bc12_drv mt6360_drv; + +#endif /* __CROS_EC_DRIVER_BC12_MT6360_PUBLIC_H */ |