summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Hill <ecgh@chromium.org>2019-07-29 16:59:10 -0600
committerCommit Bot <commit-bot@chromium.org>2019-07-30 21:57:50 +0000
commit8dcd9a736b7da6c72b468124c3febbe0ede75a4e (patch)
treec310ca0e79178e218c57c3418fd199aeae79cbd1
parent2e3109ec6b964776e7c5bd12f1fc058ca96d33f7 (diff)
downloadchrome-ec-8dcd9a736b7da6c72b468124c3febbe0ede75a4e.tar.gz
Zork: Use more designated initializers.
Use designated initializers for adc_channels, power_signal_list, i2c_ports, temp_sensors. And minor related tidy up. BUG=none BRANCH=none TEST=make BOARD=trembyle Change-Id: Iee9d2d1d85ec6844d565e89d698d99d40644a088 Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1725369 Reviewed-by: Denis Brockus <dbrockus@chromium.org>
-rw-r--r--baseboard/zork/baseboard.c130
-rw-r--r--baseboard/zork/baseboard.h3
2 files changed, 110 insertions, 23 deletions
diff --git a/baseboard/zork/baseboard.c b/baseboard/zork/baseboard.c
index bedb37e0c4..79d8afd952 100644
--- a/baseboard/zork/baseboard.c
+++ b/baseboard/zork/baseboard.c
@@ -55,37 +55,106 @@ const int hibernate_wake_pins_used = ARRAY_SIZE(hibernate_wake_pins);
const struct adc_t adc_channels[] = {
[ADC_TEMP_SENSOR_CHARGER] = {
- "CHARGER", NPCX_ADC_CH2, ADC_MAX_VOLT, ADC_READ_MAX+1, 0
+ .name = "CHARGER",
+ .input_ch = NPCX_ADC_CH2,
+ .factor_mul = ADC_MAX_VOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
},
[ADC_TEMP_SENSOR_SOC] = {
- "SOC", NPCX_ADC_CH3, ADC_MAX_VOLT, ADC_READ_MAX+1, 0
+ .name = "SOC",
+ .input_ch = NPCX_ADC_CH3,
+ .factor_mul = ADC_MAX_VOLT,
+ .factor_div = ADC_READ_MAX + 1,
+ .shift = 0,
},
};
BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT);
-/* Power signal list. Must match order of enum power_signal. */
const struct power_signal_info power_signal_list[] = {
- {GPIO_PCH_SLP_S3_L, POWER_SIGNAL_ACTIVE_HIGH, "SLP_S3_DEASSERTED"},
- {GPIO_PCH_SLP_S5_L, POWER_SIGNAL_ACTIVE_HIGH, "SLP_S5_DEASSERTED"},
- {GPIO_S0_PGOOD, POWER_SIGNAL_ACTIVE_HIGH, "S0_PGOOD"},
- {GPIO_S5_PGOOD, POWER_SIGNAL_ACTIVE_HIGH, "S5_PGOOD"},
+ [X86_SLP_S3_N] = {
+ .gpio = GPIO_PCH_SLP_S3_L,
+ .flags = POWER_SIGNAL_ACTIVE_HIGH,
+ .name = "SLP_S3_DEASSERTED",
+ },
+ [X86_SLP_S5_N] = {
+ .gpio = GPIO_PCH_SLP_S5_L,
+ .flags = POWER_SIGNAL_ACTIVE_HIGH,
+ .name = "SLP_S5_DEASSERTED",
+ },
+ [X86_S0_PGOOD] = {
+ .gpio = GPIO_S0_PGOOD,
+ .flags = POWER_SIGNAL_ACTIVE_HIGH,
+ .name = "S0_PGOOD",
+ },
+ [X86_S5_PGOOD] = {
+ .gpio = GPIO_S5_PGOOD,
+ .flags = POWER_SIGNAL_ACTIVE_HIGH,
+ .name = "S5_PGOOD",
+ },
};
BUILD_ASSERT(ARRAY_SIZE(power_signal_list) == POWER_SIGNAL_COUNT);
-/* I2C port map. */
const struct i2c_port_t i2c_ports[] = {
- {"tcpc0", I2C_PORT_TCPC0, 400, GPIO_I2C0_SCL, GPIO_I2C0_SDA},
- {"tcpc1", I2C_PORT_TCPC1, 400, GPIO_I2C1_SCL, GPIO_I2C1_SDA},
- {"power", I2C_PORT_BATTERY, 100, GPIO_I2C2_SCL, GPIO_I2C2_SDA},
- {"mux", I2C_PORT_MUX, 400, GPIO_I2C3_SCL, GPIO_I2C3_SDA},
- {"thermal", I2C_PORT_THERMAL, 400, GPIO_I2C4_SCL, GPIO_I2C4_SDA},
- {"sensor", I2C_PORT_SENSOR, 400, GPIO_I2C5_SCL, GPIO_I2C5_SDA},
- {"ap_audio", I2C_PORT_AP_AUDIO, 400, GPIO_I2C6_SCL, GPIO_I2C6_SDA},
- {"ap_hdmi", I2C_PORT_AP_HDMI, 400, GPIO_I2C7_SCL, GPIO_I2C7_SDA},
+ {
+ .name = "tcpc0",
+ .port = I2C_PORT_TCPC0,
+ .kbps = 400,
+ .scl = GPIO_I2C0_SCL,
+ .sda = GPIO_I2C0_SDA,
+ },
+ {
+ .name = "tcpc1",
+ .port = I2C_PORT_TCPC1,
+ .kbps = 400,
+ .scl = GPIO_I2C1_SCL,
+ .sda = GPIO_I2C1_SDA,
+ },
+ {
+ .name = "power",
+ .port = I2C_PORT_BATTERY,
+ .kbps = 100,
+ .scl = GPIO_I2C2_SCL,
+ .sda = GPIO_I2C2_SDA,
+ },
+ {
+ .name = "mux",
+ .port = I2C_PORT_MUX,
+ .kbps = 400,
+ .scl = GPIO_I2C3_SCL,
+ .sda = GPIO_I2C3_SDA,
+ },
+ {
+ .name = "thermal",
+ .port = I2C_PORT_THERMAL,
+ .kbps = 400,
+ .scl = GPIO_I2C4_SCL,
+ .sda = GPIO_I2C4_SDA,
+ },
+ {
+ .name = "sensor",
+ .port = I2C_PORT_SENSOR,
+ .kbps = 400,
+ .scl = GPIO_I2C5_SCL,
+ .sda = GPIO_I2C5_SDA,
+ },
+ {
+ .name = "ap_audio",
+ .port = I2C_PORT_AP_AUDIO,
+ .kbps = 400,
+ .scl = GPIO_I2C6_SCL,
+ .sda = GPIO_I2C6_SDA,
+ },
+ {
+ .name = "ap_hdmi",
+ .port = I2C_PORT_AP_HDMI,
+ .kbps = 400,
+ .scl = GPIO_I2C7_SCL,
+ .sda = GPIO_I2C7_SDA,
+ },
};
const unsigned int i2c_ports_used = ARRAY_SIZE(i2c_ports);
-/* PWM channels. Must be in the exactly same order as in enum pwm_channel. */
const struct pwm_t pwm_channels[] = {
[PWM_CH_KBLIGHT] = {
.channel = 3,
@@ -106,7 +175,6 @@ const struct tcpc_config_t tcpc_config[CONFIG_USB_PD_PORT_COUNT] = {
.addr_flags = PS8751_I2C_ADDR1_FLAGS,
},
.drv = &ps8xxx_tcpm_drv,
- .flags = TCPC_FLAGS_RESET_ACTIVE_HIGH,
},
[USB_PD_PORT_TCPC_1] = {
.bus_type = EC_BUS_TYPE_I2C,
@@ -126,7 +194,7 @@ struct usb_mux usb_muxes[CONFIG_USB_PD_PORT_COUNT] = {
[USB_PD_PORT_TCPC_1] = {
.driver = &tcpci_tcpm_usb_mux_driver,
.hpd_update = &ps8xxx_tcpc_update_hpd_status,
- }
+ },
};
static void baseboard_chipset_suspend(void)
@@ -217,9 +285,27 @@ static int board_get_temp(int idx, int *temp_k)
}
const struct temp_sensor_t temp_sensors[] = {
- {"Charger", TEMP_SENSOR_TYPE_BOARD, board_get_temp, 0, 1},
- {"SOC", TEMP_SENSOR_TYPE_BOARD, board_get_temp, 1, 5},
- {"CPU", TEMP_SENSOR_TYPE_CPU, sb_tsi_get_val, 0, 4},
+ [TEMP_SENSOR_CHARGER] = {
+ .name = "Charger",
+ .type = TEMP_SENSOR_TYPE_BOARD,
+ .read = board_get_temp,
+ .idx = 0,
+ .action_delay_sec = 1,
+ },
+ [TEMP_SENSOR_SOC] = {
+ .name = "SOC",
+ .type = TEMP_SENSOR_TYPE_BOARD,
+ .read = board_get_temp,
+ .idx = 1,
+ .action_delay_sec = 5,
+ },
+ [TEMP_SENSOR_CPU] = {
+ .name = "CPU",
+ .type = TEMP_SENSOR_TYPE_CPU,
+ .read = sb_tsi_get_val,
+ .idx = 0,
+ .action_delay_sec = 4,
+ },
};
BUILD_ASSERT(ARRAY_SIZE(temp_sensors) == TEMP_SENSOR_COUNT);
diff --git a/baseboard/zork/baseboard.h b/baseboard/zork/baseboard.h
index f12f94e90b..2aedf0881b 100644
--- a/baseboard/zork/baseboard.h
+++ b/baseboard/zork/baseboard.h
@@ -58,7 +58,6 @@
/* CBI EEPROM for board version and SKU ID */
#define CONFIG_CROS_BOARD_INFO
#define CONFIG_BOARD_VERSION_CBI
-#define I2C_ADDR_EEPROM_FLAGS 0x50
#define CONFIG_CRC8
#define CONFIG_BATTERY_CUT_OFF
@@ -155,6 +154,8 @@
#define I2C_PORT_AP_AUDIO NPCX_I2C_PORT6_1
#define I2C_PORT_AP_HDMI NPCX_I2C_PORT7_0
+#define I2C_ADDR_EEPROM_FLAGS 0x50
+
/* Sensors */
#define CONFIG_MKBP_EVENT
#define CONFIG_DYNAMIC_MOTION_SENSOR_COUNT