diff options
Diffstat (limited to 'board/oak/board.c')
-rw-r--r-- | board/oak/board.c | 137 |
1 files changed, 67 insertions, 70 deletions
diff --git a/board/oak/board.c b/board/oak/board.c index 1c2e65b12a..468b6e6677 100644 --- a/board/oak/board.c +++ b/board/oak/board.c @@ -1,4 +1,4 @@ -/* Copyright 2015 The Chromium OS Authors. All rights reserved. +/* Copyright 2015 The ChromiumOS Authors * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ @@ -52,8 +52,8 @@ #include "usb_pd_tcpm.h" #include "util.h" -#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ## args) -#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ## args) +#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ##args) +#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ##args) /* Dispaly port hardware can connect to port 0, 1 or neither. */ #define PD_PORT_NONE -1 @@ -76,8 +76,8 @@ void usb_evt(enum gpio_signal signal) /* power signal list. Must match order of enum power_signal. */ const struct power_signal_info power_signal_list[] = { - {GPIO_SOC_POWER_GOOD, POWER_SIGNAL_ACTIVE_HIGH, "POWER_GOOD"}, - {GPIO_SUSPEND_L, POWER_SIGNAL_ACTIVE_LOW, "SUSPEND#_ASSERTED"}, + { GPIO_SOC_POWER_GOOD, POWER_SIGNAL_ACTIVE_HIGH, "POWER_GOOD" }, + { GPIO_SUSPEND_L, POWER_SIGNAL_ACTIVE_LOW, "SUSPEND#_ASSERTED" }, }; BUILD_ASSERT(ARRAY_SIZE(power_signal_list) == POWER_SIGNAL_COUNT); @@ -87,39 +87,32 @@ const struct adc_t adc_channels[] = { * PSYS_MONITOR(PA2): ADC_IN2, 1.44 uA/W on 6.05k Ohm * output in mW */ - [ADC_PSYS] = {"PSYS", 379415, 4096, 0, STM32_AIN(2)}, + [ADC_PSYS] = { "PSYS", 379415, 4096, 0, STM32_AIN(2) }, /* AMON_BMON(PC0): ADC_IN10, output in uV */ - [ADC_AMON_BMON] = {"AMON_BMON", 183333, 4096, 0, STM32_AIN(10)}, + [ADC_AMON_BMON] = { "AMON_BMON", 183333, 4096, 0, STM32_AIN(10) }, /* VDC_BOOSTIN_SENSE(PC1): ADC_IN11, output in mV */ - [ADC_VBUS] = {"VBUS", 33000, 4096, 0, STM32_AIN(11)}, + [ADC_VBUS] = { "VBUS", 33000, 4096, 0, STM32_AIN(11) }, }; BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT); /* I2C ports */ -const struct i2c_port_t i2c_ports[] = { - { - .name = "battery", - .port = I2C_PORT_BATTERY, - .kbps = 100, - .scl = GPIO_I2C0_SCL, - .sda = GPIO_I2C0_SDA - }, - { - .name = "pd", - .port = I2C_PORT_PD_MCU, - .kbps = 1000, - .scl = GPIO_I2C1_SCL, - .sda = GPIO_I2C1_SDA - } -}; +const struct i2c_port_t i2c_ports[] = { { .name = "battery", + .port = I2C_PORT_BATTERY, + .kbps = 100, + .scl = GPIO_I2C0_SCL, + .sda = GPIO_I2C0_SDA }, + { .name = "pd", + .port = I2C_PORT_PD_MCU, + .kbps = 1000, + .scl = GPIO_I2C1_SCL, + .sda = GPIO_I2C1_SDA } }; const unsigned int i2c_ports_used = ARRAY_SIZE(i2c_ports); #ifdef CONFIG_ACCELGYRO_BMI160 /* SPI devices */ -const struct spi_device_t spi_devices[] = { - { CONFIG_SPI_ACCEL_PORT, 1, GPIO_SPI2_NSS } -}; +const struct spi_device_t spi_devices[] = { { CONFIG_SPI_ACCEL_PORT, 1, + GPIO_SPI2_NSS } }; const unsigned int spi_devices_used = ARRAY_SIZE(spi_devices); #endif @@ -184,42 +177,47 @@ const struct charger_config_t chg_chips[] = { * src/mainboard/google/${board}/acpi/dptf.asl */ const struct temp_sensor_t temp_sensors[] = { - {"TMP432_Internal", TEMP_SENSOR_TYPE_BOARD, tmp432_get_val, - TMP432_IDX_LOCAL}, - {"TMP432_Sensor_1", TEMP_SENSOR_TYPE_BOARD, tmp432_get_val, - TMP432_IDX_REMOTE1}, - {"TMP432_Sensor_2", TEMP_SENSOR_TYPE_BOARD, tmp432_get_val, - TMP432_IDX_REMOTE2}, - {"Battery", TEMP_SENSOR_TYPE_BATTERY, charge_get_battery_temp, - 0}, + { "TMP432_Internal", TEMP_SENSOR_TYPE_BOARD, tmp432_get_val, + TMP432_IDX_LOCAL }, + { "TMP432_Sensor_1", TEMP_SENSOR_TYPE_BOARD, tmp432_get_val, + TMP432_IDX_REMOTE1 }, + { "TMP432_Sensor_2", TEMP_SENSOR_TYPE_BOARD, tmp432_get_val, + TMP432_IDX_REMOTE2 }, + { "Battery", TEMP_SENSOR_TYPE_BATTERY, charge_get_battery_temp, 0 }, }; BUILD_ASSERT(ARRAY_SIZE(temp_sensors) == TEMP_SENSOR_COUNT); #ifdef HAS_TASK_ALS /* ALS instances. Must be in same order as enum als_id. */ struct als_t als[] = { - {"TI", opt3001_init, opt3001_read_lux, 5}, + { "TI", opt3001_init, opt3001_read_lux, 5 }, }; BUILD_ASSERT(ARRAY_SIZE(als) == ALS_COUNT); #endif -const struct usb_mux usb_muxes[CONFIG_USB_PD_PORT_MAX_COUNT] = { +const struct usb_mux_chain usb_muxes[CONFIG_USB_PD_PORT_MAX_COUNT] = { { - .usb_port = 0, - .i2c_port = I2C_PORT_USB_MUX, - .i2c_addr_flags = PI3USB3X532_I2C_ADDR0, - .driver = &pi3usb3x532_usb_mux_driver, + .mux = + &(const struct usb_mux){ + .usb_port = 0, + .i2c_port = I2C_PORT_USB_MUX, + .i2c_addr_flags = PI3USB3X532_I2C_ADDR0, + .driver = &pi3usb3x532_usb_mux_driver, + }, }, { - .usb_port = 1, - .i2c_port = I2C_PORT_USB_MUX, + .mux = + &(const struct usb_mux){ + .usb_port = 1, + .i2c_port = I2C_PORT_USB_MUX, #if (BOARD_REV <= OAK_REV4) - .i2c_addr_flags = PI3USB3X532_I2C_ADDR1, - .driver = &pi3usb3x532_usb_mux_driver, + .i2c_addr_flags = PI3USB3X532_I2C_ADDR1, + .driver = &pi3usb3x532_usb_mux_driver, #else - .i2c_addr_flags = 0x10, - .driver = &ps8740_usb_mux_driver, + .i2c_addr_flags = 0x10, + .driver = &ps8740_usb_mux_driver, #endif + }, }, }; @@ -340,10 +338,12 @@ int board_set_active_charge_port(int charge_port) } else { /* Make sure non-charging port is disabled */ gpio_set_level(charge_port ? GPIO_USB_C0_CHARGE_L : - GPIO_USB_C1_CHARGE_L, 1); + GPIO_USB_C1_CHARGE_L, + 1); /* Enable charging port */ gpio_set_level(charge_port ? GPIO_USB_C1_CHARGE_L : - GPIO_USB_C0_CHARGE_L, 0); + GPIO_USB_C0_CHARGE_L, + 0); } return EC_SUCCESS; @@ -357,11 +357,11 @@ int board_set_active_charge_port(int charge_port) * @param charge_ma Desired charge limit (mA). * @param charge_mv Negotiated charge voltage (mV). */ -void board_set_charge_limit(int port, int supplier, int charge_ma, - int max_ma, int charge_mv) +void board_set_charge_limit(int port, int supplier, int charge_ma, int max_ma, + int charge_mv) { - charge_set_input_current_limit(MAX(charge_ma, - CONFIG_CHARGER_INPUT_CURRENT), charge_mv); + charge_set_input_current_limit( + MAX(charge_ma, CONFIG_CHARGER_INPUT_CURRENT), charge_mv); pd_send_host_event(PD_EVENT_POWER_CHANGE); } @@ -552,8 +552,8 @@ void vbus_task(void *u) } if (wake) - usb_charger_task_set_event( - port, USB_CHG_EVENT_BC12); + usb_charger_task_set_event(port, + USB_CHG_EVENT_BC12); } task_wait_event(-1); } @@ -569,15 +569,15 @@ void vbus_task(void *u) #ifdef CONFIG_TEMP_SENSOR_TMP432 static void tmp432_set_power_deferred(void) { - /* Shut tmp432 down if not in S0 && no external power */ - if (!extpower_is_present() && !chipset_in_state(CHIPSET_STATE_ON)) { - if (EC_SUCCESS != tmp432_set_power(TMP432_POWER_OFF)) + /* Shut tmp432 down if not in S0 && no external power */ + if (!extpower_is_present() && !chipset_in_state(CHIPSET_STATE_ON)) { + if (EC_SUCCESS != tmp432_set_power(TMP432_POWER_OFF)) CPRINTS("ERROR: Can't shutdown TMP432."); - return; - } + return; + } - /* else, turn it on. */ - if (EC_SUCCESS != tmp432_set_power(TMP432_POWER_ON)) + /* else, turn it on. */ + if (EC_SUCCESS != tmp432_set_power(TMP432_POWER_ON)) CPRINTS("ERROR: Can't turn on TMP432."); } DECLARE_DEFERRED(tmp432_set_power_deferred); @@ -602,7 +602,7 @@ static void board_chipset_pre_init(void) board_extpower_buffer_to_soc(); #if BOARD_REV >= OAK_REV5 /* Enable DP muxer */ - gpio_set_level(GPIO_DP_MUX_EN_L , 0); + gpio_set_level(GPIO_DP_MUX_EN_L, 0); gpio_set_level(GPIO_PARADE_MUX_EN, 1); #endif } @@ -615,13 +615,12 @@ static void board_chipset_shutdown(void) gpio_set_level(GPIO_LEVEL_SHIFT_EN_L, 1); #if BOARD_REV >= OAK_REV5 /* Disable DP muxer */ - gpio_set_level(GPIO_DP_MUX_EN_L , 1); + gpio_set_level(GPIO_DP_MUX_EN_L, 1); gpio_set_level(GPIO_PARADE_MUX_EN, 0); #endif } DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, board_chipset_shutdown, HOOK_PRIO_DEFAULT); - /* Called on AP S3 -> S0 transition */ static void board_chipset_resume(void) { @@ -650,11 +649,9 @@ static struct mutex g_lid_mutex; static struct mutex g_base_mutex; /* Matrix to rotate accelrator into standard reference frame */ -const mat33_fp_t base_standard_ref = { - { FLOAT_TO_FP(-1), 0, 0}, - { 0, FLOAT_TO_FP(-1), 0}, - { 0, 0, FLOAT_TO_FP(1)} -}; +const mat33_fp_t base_standard_ref = { { FLOAT_TO_FP(-1), 0, 0 }, + { 0, FLOAT_TO_FP(-1), 0 }, + { 0, 0, FLOAT_TO_FP(1) } }; #endif static struct kionix_accel_data g_kx022_data; |