summaryrefslogtreecommitdiff
path: root/baseboard/intelrvp
diff options
context:
space:
mode:
authorVijay Hiremath <vijay.p.hiremath@intel.com>2021-03-15 16:47:01 -0700
committerCommit Bot <commit-bot@chromium.org>2021-03-19 22:14:43 +0000
commit1275c78e5e75df6e9016015051ae0452b148f83b (patch)
tree9c9e819cbf0b02f22af1b1f29342215b2515539e /baseboard/intelrvp
parentce1407c152ffc13998eef13ec3f2f030b8b2205e (diff)
downloadchrome-ec-1275c78e5e75df6e9016015051ae0452b148f83b.tar.gz
intelrvp: cleanup: Shuffle the code
Shuffled the code to cleanup following 1. Moved the temperature sensor code from CONFIG_FANS to CONFIG_TEMP_SENSOR to avoid build errors when the FAN is disabled. 2. Moved ADC code to respective EC chip code as the ADC structure is not same for all the EC chip variants. 3. Moved PD reset code from EC chip to MECC files so that PD specific code can be added if needed. BUG=none BRANCH=none TEST=make buildall -j Change-Id: I614ce0c011f5080e46cd1095a534884925c13b2c Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2762806 Reviewed-by: caveh jalali <caveh@chromium.org>
Diffstat (limited to 'baseboard/intelrvp')
-rw-r--r--baseboard/intelrvp/baseboard.c85
-rw-r--r--baseboard/intelrvp/baseboard.h2
-rw-r--r--baseboard/intelrvp/chg_usb_pd_mecc_0_9.c6
-rw-r--r--baseboard/intelrvp/chg_usb_pd_mecc_1_0.c6
-rw-r--r--baseboard/intelrvp/ite_ec.c40
-rw-r--r--baseboard/intelrvp/mchp_ec.c42
6 files changed, 107 insertions, 74 deletions
diff --git a/baseboard/intelrvp/baseboard.c b/baseboard/intelrvp/baseboard.c
index 6bf955b100..0f61f33b0f 100644
--- a/baseboard/intelrvp/baseboard.c
+++ b/baseboard/intelrvp/baseboard.c
@@ -25,39 +25,6 @@ const enum gpio_signal hibernate_wake_pins[] = {
};
const int hibernate_wake_pins_used = ARRAY_SIZE(hibernate_wake_pins);
-/* ADC channels */
-const struct adc_t adc_channels[] = {
- [ADC_TEMP_SNS_AMBIENT] = {
- .name = "ADC_TEMP_SNS_AMBIENT",
- .factor_mul = ADC_MAX_MVOLT,
- .factor_div = ADC_READ_MAX + 1,
- .shift = 0,
- .channel = ADC_TEMP_SNS_AMBIENT_CHANNEL,
- },
- [ADC_TEMP_SNS_DDR] = {
- .name = "ADC_TEMP_SNS_DDR",
- .factor_mul = ADC_MAX_MVOLT,
- .factor_div = ADC_READ_MAX + 1,
- .shift = 0,
- .channel = ADC_TEMP_SNS_DDR_CHANNEL,
- },
- [ADC_TEMP_SNS_SKIN] = {
- .name = "ADC_TEMP_SNS_SKIN",
- .factor_mul = ADC_MAX_MVOLT,
- .factor_div = ADC_READ_MAX + 1,
- .shift = 0,
- .channel = ADC_TEMP_SNS_SKIN_CHANNEL,
- },
- [ADC_TEMP_SNS_VR] = {
- .name = "ADC_TEMP_SNS_VR",
- .factor_mul = ADC_MAX_MVOLT,
- .factor_div = ADC_READ_MAX + 1,
- .shift = 0,
- .channel = ADC_TEMP_SNS_VR_CHANNEL,
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT);
-
#ifdef CONFIG_TEMP_SENSOR
/* Temperature sensors */
const struct temp_sensor_t temp_sensors[] = {
@@ -101,32 +68,6 @@ const struct temp_sensor_t temp_sensors[] = {
},
};
BUILD_ASSERT(ARRAY_SIZE(temp_sensors) == TEMP_SENSOR_COUNT);
-#endif /* CONFIG_TEMP_SENSOR */
-
-#ifdef CONFIG_FANS
-/* Physical fan config */
-const struct fan_conf fan_conf_0 = {
- .flags = FAN_USE_RPM_MODE,
- .ch = 0,
- .pgood_gpio = GPIO_ALL_SYS_PWRGD,
- .enable_gpio = GPIO_FAN_POWER_EN,
-};
-
-/* Physical fan rpm config */
-const struct fan_rpm fan_rpm_0 = {
- .rpm_min = BOARD_FAN_MIN_RPM,
- .rpm_start = BOARD_FAN_MIN_RPM,
- .rpm_max = BOARD_FAN_MAX_RPM,
-};
-
-/* FAN channels */
-const struct fan_t fans[] = {
- [FAN_CH_0] = {
- .conf = &fan_conf_0,
- .rpm = &fan_rpm_0,
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(fans) == FAN_CH_COUNT);
const static struct ec_thermal_config thermal_a = {
.temp_host = {
@@ -154,6 +95,32 @@ struct ec_thermal_config thermal_params[] = {
[TEMP_SNS_VR] = thermal_a,
};
BUILD_ASSERT(ARRAY_SIZE(thermal_params) == TEMP_SENSOR_COUNT);
+#endif /* CONFIG_TEMP_SENSOR */
+
+#ifdef CONFIG_FANS
+/* Physical fan config */
+const struct fan_conf fan_conf_0 = {
+ .flags = FAN_USE_RPM_MODE,
+ .ch = 0,
+ .pgood_gpio = GPIO_ALL_SYS_PWRGD,
+ .enable_gpio = GPIO_FAN_POWER_EN,
+};
+
+/* Physical fan rpm config */
+const struct fan_rpm fan_rpm_0 = {
+ .rpm_min = BOARD_FAN_MIN_RPM,
+ .rpm_start = BOARD_FAN_MIN_RPM,
+ .rpm_max = BOARD_FAN_MAX_RPM,
+};
+
+/* FAN channels */
+const struct fan_t fans[] = {
+ [FAN_CH_0] = {
+ .conf = &fan_conf_0,
+ .rpm = &fan_rpm_0,
+ },
+};
+BUILD_ASSERT(ARRAY_SIZE(fans) == FAN_CH_COUNT);
#endif /* CONFIG_FANS */
static void board_init(void)
diff --git a/baseboard/intelrvp/baseboard.h b/baseboard/intelrvp/baseboard.h
index 82f62c340e..7ec90f0507 100644
--- a/baseboard/intelrvp/baseboard.h
+++ b/baseboard/intelrvp/baseboard.h
@@ -261,8 +261,6 @@ struct tcpc_aic_gpio_config_t {
};
extern const struct tcpc_aic_gpio_config_t tcpc_aic_gpios[];
-/* Reset PD MCU */
-void board_reset_pd_mcu(void);
void board_charging_enable(int port, int enable);
void board_vbus_enable(int port, int enable);
void board_set_vbus_source_current_limit(int port, enum tcpc_rp_value rp);
diff --git a/baseboard/intelrvp/chg_usb_pd_mecc_0_9.c b/baseboard/intelrvp/chg_usb_pd_mecc_0_9.c
index b587691123..fa9f1e147f 100644
--- a/baseboard/intelrvp/chg_usb_pd_mecc_0_9.c
+++ b/baseboard/intelrvp/chg_usb_pd_mecc_0_9.c
@@ -13,6 +13,12 @@
#define CPRINTF(format, args...) cprintf(CC_USBPD, format, ## args)
#define CPRINTS(format, args...) cprints(CC_USBPD, format, ## args)
+/* Reset PD MCU */
+void board_reset_pd_mcu(void)
+{
+ /* Add code if TCPC chips need a reset */
+}
+
int board_vbus_source_enabled(int port)
{
int src_en = 0;
diff --git a/baseboard/intelrvp/chg_usb_pd_mecc_1_0.c b/baseboard/intelrvp/chg_usb_pd_mecc_1_0.c
index 74fd933f2e..0fa9716b07 100644
--- a/baseboard/intelrvp/chg_usb_pd_mecc_1_0.c
+++ b/baseboard/intelrvp/chg_usb_pd_mecc_1_0.c
@@ -17,6 +17,12 @@
#define CPRINTF(format, args...) cprintf(CC_USBPD, format, ## args)
#define CPRINTS(format, args...) cprints(CC_USBPD, format, ## args)
+/* Reset PD MCU */
+void board_reset_pd_mcu(void)
+{
+ /* Add code if TCPC chips need a reset */
+}
+
static void baseboard_tcpc_init(void)
{
int i;
diff --git a/baseboard/intelrvp/ite_ec.c b/baseboard/intelrvp/ite_ec.c
index 44ddf6d53e..9254a3b39b 100644
--- a/baseboard/intelrvp/ite_ec.c
+++ b/baseboard/intelrvp/ite_ec.c
@@ -5,6 +5,7 @@
/* Intel BASEBOARD-RVP ITE EC specific configuration */
+#include "adc_chip.h"
#include "common.h"
#include "it83xx_pd.h"
#include "keyboard_scan.h"
@@ -13,12 +14,6 @@
#include "timer.h"
#include "usb_pd_tcpm.h"
-/* Reset PD MCU */
-void board_reset_pd_mcu(void)
-{
- /* Not applicable for ITE TCPC */
-}
-
/* Keyboard scan setting */
struct keyboard_scan_config keyscan_config = {
.output_settle_us = 35,
@@ -33,6 +28,39 @@ struct keyboard_scan_config keyscan_config = {
},
};
+/* ADC channels */
+const struct adc_t adc_channels[] = {
+ [ADC_TEMP_SNS_AMBIENT] = {
+ .name = "ADC_TEMP_SNS_AMBIENT",
+ .factor_mul = ADC_MAX_MVOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
+ .channel = ADC_TEMP_SNS_AMBIENT_CHANNEL,
+ },
+ [ADC_TEMP_SNS_DDR] = {
+ .name = "ADC_TEMP_SNS_DDR",
+ .factor_mul = ADC_MAX_MVOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
+ .channel = ADC_TEMP_SNS_DDR_CHANNEL,
+ },
+ [ADC_TEMP_SNS_SKIN] = {
+ .name = "ADC_TEMP_SNS_SKIN",
+ .factor_mul = ADC_MAX_MVOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
+ .channel = ADC_TEMP_SNS_SKIN_CHANNEL,
+ },
+ [ADC_TEMP_SNS_VR] = {
+ .name = "ADC_TEMP_SNS_VR",
+ .factor_mul = ADC_MAX_MVOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
+ .channel = ADC_TEMP_SNS_VR_CHANNEL,
+ },
+};
+BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT);
+
/*
* PWM HW channelx binding tachometer channelx for fan control.
* Four tachometer input pins but two tachometer modules only,
diff --git a/baseboard/intelrvp/mchp_ec.c b/baseboard/intelrvp/mchp_ec.c
index 908a2a3c9e..adaba23d3a 100644
--- a/baseboard/intelrvp/mchp_ec.c
+++ b/baseboard/intelrvp/mchp_ec.c
@@ -3,8 +3,9 @@
* found in the LICENSE file.
*/
-/* Intel BASEBOARD-RVP ITE EC specific configuration */
+/* Intel BASEBOARD-RVP MCHP EC specific configuration */
+#include "adc_chip.h"
#include "common.h"
#include "keyboard_scan.h"
#include "pwm.h"
@@ -12,12 +13,6 @@
#include "timer.h"
#include "usb_pd_tcpm.h"
-/* Reset PD MCU */
-void board_reset_pd_mcu(void)
-{
- /* TODO: Is this true? Not applicable for I2C TCPC. */
-}
-
/* Keyboard scan setting */
struct keyboard_scan_config keyscan_config = {
/*
@@ -38,6 +33,39 @@ struct keyboard_scan_config keyscan_config = {
},
};
+/* ADC channels */
+const struct adc_t adc_channels[] = {
+ [ADC_TEMP_SNS_AMBIENT] = {
+ .name = "ADC_TEMP_SNS_AMBIENT",
+ .factor_mul = ADC_MAX_MVOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
+ .channel = ADC_TEMP_SNS_AMBIENT_CHANNEL,
+ },
+ [ADC_TEMP_SNS_DDR] = {
+ .name = "ADC_TEMP_SNS_DDR",
+ .factor_mul = ADC_MAX_MVOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
+ .channel = ADC_TEMP_SNS_DDR_CHANNEL,
+ },
+ [ADC_TEMP_SNS_SKIN] = {
+ .name = "ADC_TEMP_SNS_SKIN",
+ .factor_mul = ADC_MAX_MVOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
+ .channel = ADC_TEMP_SNS_SKIN_CHANNEL,
+ },
+ [ADC_TEMP_SNS_VR] = {
+ .name = "ADC_TEMP_SNS_VR",
+ .factor_mul = ADC_MAX_MVOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
+ .channel = ADC_TEMP_SNS_VR_CHANNEL,
+ },
+};
+BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT);
+
/*
* TODO - Fan and tach table.
* MCHP MEC1322 and MEC170x have fan speed controller(s)