summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Wang <matt_wang@compal.corp-partner.google.com>2022-07-14 14:58:57 +0800
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-07-19 09:18:25 +0000
commite97b3e407b786e95cabef7977d42998f0ed13be8 (patch)
tree0fcbee812733c31b7b751417b63b179a123aeea9
parent26944b35448a9171219ee5e25a0ae7ccd64e8b3d (diff)
downloadchrome-ec-e97b3e407b786e95cabef7977d42998f0ed13be8.tar.gz
kinox: modify detect ADP_ID formula
Modify the comparison value is volage to voltage. Delete the ADP_ID factor_div's +1 method to make sure the method can to get max 2816 value(2.816v). BUG=b:211806236,b:238157622 BRANCH=none TEST=Can get the TIO and Tiny adapter watt. Signed-off-by: Matt Wang <matt_wang@compal.corp-partner.google.com> Change-Id: I1be5b834c40465664a79d50fa8c09603c8b2c94f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3760805 Commit-Queue: Ricky Chang <rickytlchang@chromium.org> Reviewed-by: Ricky Chang <rickytlchang@chromium.org>
-rw-r--r--board/kinox/power_detection.c23
-rw-r--r--board/kinox/sensors.c2
2 files changed, 14 insertions, 11 deletions
diff --git a/board/kinox/power_detection.c b/board/kinox/power_detection.c
index d930a7846e..679c76dea8 100644
--- a/board/kinox/power_detection.c
+++ b/board/kinox/power_detection.c
@@ -29,8 +29,8 @@ static const char *const adp_id_names[] = {
/* ADP_ID control */
struct adpater_id_params tio1_power[] = {
{
- .min_voltage = 3300,
- .max_voltage = 3300,
+ .min_voltage = 2816,
+ .max_voltage = 2816,
.charge_voltage = 20000,
.charge_current = 6000,
.watt = 120,
@@ -96,7 +96,7 @@ struct adpater_id_params tio2_power[] = {
},
{
.min_voltage = 2816,
- .max_voltage = 3300,
+ .max_voltage = 2816,
.charge_voltage = 20000,
.charge_current = 6000,
.watt = 120,
@@ -321,10 +321,10 @@ void set_the_obp(int power_type_index, int adp_type)
* | | |
* |---220 ms---|-----400 ms-----|
*
- * Tiny: Twice adapter ADC values are less than 0x3FF.
- * TIO1: Twice adapter ADC values are 0x3FF.
- * TIO2: First adapter ADC value less than 0x3FF.
- * Second adpater ADC value is 0x3FF.
+ * Tiny: Twice adapter ADC values are less than 2.816v.
+ * TIO1: Twice adapter ADC values are 2.816v.
+ * TIO2: First adapter ADC value less than 2.816v.
+ * Second adpater ADC value is 2.816v.
*/
static void adp_id_deferred(void);
DECLARE_DEFERRED(adp_id_deferred);
@@ -342,13 +342,16 @@ void adp_id_deferred(void)
adp_id_value_debounce = adp_id_value;
/* for delay the 400ms to get the next APD_ID value */
hook_call_deferred(&adp_id_deferred_data, 400 * MSEC);
- } else if (adp_id_value_debounce == 0x3FF && adp_id_value == 0x3FF) {
+ } else if (adp_id_value_debounce == ADC_MAX_VOLT &&
+ adp_id_value == ADC_MAX_VOLT) {
adp_finial_adc_value = adp_id_value;
adp_type = TIO1;
- } else if (adp_id_value_debounce < 0x3FF && adp_id_value == 0x3FF) {
+ } else if (adp_id_value_debounce < ADC_MAX_VOLT &&
+ adp_id_value == ADC_MAX_VOLT) {
adp_finial_adc_value = adp_id_value_debounce;
adp_type = TIO2;
- } else if (adp_id_value_debounce < 0x3FF && adp_id_value < 0x3FF) {
+ } else if (adp_id_value_debounce < ADC_MAX_VOLT &&
+ adp_id_value < ADC_MAX_VOLT) {
adp_finial_adc_value = adp_id_value;
adp_type = TINY;
} else {
diff --git a/board/kinox/sensors.c b/board/kinox/sensors.c
index 3441d2621e..7272e1b711 100644
--- a/board/kinox/sensors.c
+++ b/board/kinox/sensors.c
@@ -56,7 +56,7 @@ const struct adc_t adc_channels[] = {
.name = "ADP_ID",
.input_ch = NPCX_ADC_CH4,
.factor_mul = ADC_MAX_VOLT,
- .factor_div = ADC_READ_MAX + 1,
+ .factor_div = ADC_READ_MAX,
},
};
BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT);