diff options
Diffstat (limited to 'board')
-rw-r--r-- | board/host/board.h | 5 | ||||
-rw-r--r-- | board/host/build.mk | 1 | ||||
-rw-r--r-- | board/host/ec.tasklist | 4 | ||||
-rw-r--r-- | board/host/usb_pd_config.c | 35 | ||||
-rw-r--r-- | board/host/usb_pd_config.h | 41 | ||||
-rw-r--r-- | board/host/usb_pd_policy.c | 122 |
6 files changed, 1 insertions, 207 deletions
diff --git a/board/host/board.h b/board/host/board.h index e2fb3fbb9a..b8ce98513a 100644 --- a/board/host/board.h +++ b/board/host/board.h @@ -16,11 +16,6 @@ #undef CONFIG_WATCHDOG #define CONFIG_SWITCH -#define CONFIG_USB_POWER_DELIVERY -#define CONFIG_USB_PD_CUSTOM_VDM -#define CONFIG_USB_PD_DUAL_ROLE -#define CONFIG_SW_CRC - #undef CONFIG_CONSOLE_HISTORY #define CONFIG_CONSOLE_HISTORY 4 diff --git a/board/host/build.mk b/board/host/build.mk index 91451188a7..9b50c501ae 100644 --- a/board/host/build.mk +++ b/board/host/build.mk @@ -12,4 +12,3 @@ board-y=board.o board-$(HAS_TASK_CHIPSET)+=chipset.o board-$(CONFIG_BATTERY_MOCK)+=battery.o charger.o board-$(CONFIG_FANS)+=fan.o -board-$(CONFIG_USB_POWER_DELIVERY)+=usb_pd_policy.o usb_pd_config.o diff --git a/board/host/ec.tasklist b/board/host/ec.tasklist index 939cac3efc..dc03085807 100644 --- a/board/host/ec.tasklist +++ b/board/host/ec.tasklist @@ -20,6 +20,4 @@ #define CONFIG_TASK_LIST \ TASK_ALWAYS(HOOKS, hook_task, NULL, TASK_STACK_SIZE) \ TASK_ALWAYS(HOSTCMD, host_command_task, NULL, TASK_STACK_SIZE) \ - TASK_ALWAYS(CONSOLE, console_task, NULL, TASK_STACK_SIZE) \ - TASK_ALWAYS(PD_C0, pd_task, NULL, LARGER_TASK_STACK_SIZE) \ - TASK_ALWAYS(PD_C1, pd_task, NULL, LARGER_TASK_STACK_SIZE) + TASK_ALWAYS(CONSOLE, console_task, NULL, TASK_STACK_SIZE) diff --git a/board/host/usb_pd_config.c b/board/host/usb_pd_config.c deleted file mode 100644 index aec495a0c9..0000000000 --- a/board/host/usb_pd_config.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright (c) 2014 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. - */ - -/* USB Power delivery board configuration */ - -#include "test_util.h" - -test_mockable void pd_select_polarity(int port, int polarity) -{ - /* Not implemented */ -} - -test_mockable void pd_tx_init(void) -{ - /* Not implemented */ -} - -test_mockable void pd_set_host_mode(int port, int enable) -{ - /* Not implemented */ -} - -test_mockable int pd_adc_read(int port, int cc) -{ - /* Not implemented */ - return 0; -} - -test_mockable int pd_snk_is_vbus_provided(int port) -{ - /* Not implemented */ - return 1; -} diff --git a/board/host/usb_pd_config.h b/board/host/usb_pd_config.h deleted file mode 100644 index 6770b8e11d..0000000000 --- a/board/host/usb_pd_config.h +++ /dev/null @@ -1,41 +0,0 @@ -/* Copyright (c) 2014 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. - */ - -/* USB Power delivery board configuration */ - -#ifndef __USB_PD_CONFIG_H -#define __USB_PD_CONFIG_H - -/* Port and task configuration */ -#define PD_PORT_COUNT 2 -#define PORT_TO_TASK_ID(port) ((port) ? TASK_ID_PD_C1 : TASK_ID_PD_C0) -#define TASK_ID_TO_PORT(id) ((id) == TASK_ID_PD_C0 ? 0 : 1) - -/* Use software CRC */ -#define CONFIG_SW_CRC - -void pd_select_polarity(int port, int polarity); - -void pd_tx_init(void); - -void pd_set_host_mode(int port, int enable); - -int pd_adc_read(int port, int cc); - -int pd_snk_is_vbus_provided(int port); - -/* Standard-current DFP : no-connect voltage is 1.55V */ -#define PD_SRC_VNC 1550 /* mV */ - -/* UFP-side : threshold for DFP connection detection */ -#define PD_SNK_VA 200 /* mV */ - -/* start as a sink in case we have no other power supply/battery */ -#define PD_DEFAULT_STATE PD_STATE_SNK_DISCONNECTED - -/* delay necessary for the voltage transition on the power supply */ -#define PD_POWER_SUPPLY_TRANSITION_DELAY 50000 /* us */ - -#endif /* __USB_PD_CONFIG_H */ diff --git a/board/host/usb_pd_policy.c b/board/host/usb_pd_policy.c deleted file mode 100644 index ffa6d53be9..0000000000 --- a/board/host/usb_pd_policy.c +++ /dev/null @@ -1,122 +0,0 @@ -/* Copyright (c) 2014 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. - */ - -#include "common.h" -#include "console.h" -#include "usb_pd.h" -#include "util.h" - -const uint32_t pd_src_pdo[] = { - PDO_FIXED(5000, 500, PDO_FIXED_EXTERNAL), - PDO_FIXED(5000, 900, 0), -}; -const int pd_src_pdo_cnt = ARRAY_SIZE(pd_src_pdo); - -const uint32_t pd_snk_pdo[] = { - PDO_BATT(4500, 5500, 15000), - PDO_BATT(11500, 12500, 36000), -}; -const int pd_snk_pdo_cnt = ARRAY_SIZE(pd_snk_pdo); - -/* Cap on the max voltage requested as a sink (in millivolts) */ -static unsigned max_mv = -1; /* no cap */ - -int pd_choose_voltage(int cnt, uint32_t *src_caps, uint32_t *rdo) -{ - int i; - int sel_mv; - int max_uw = 0; - int max_i = -1; - - /* Get max power */ - for (i = 0; i < cnt; i++) { - int uw; - int mv = ((src_caps[i] >> 10) & 0x3FF) * 50; - if ((src_caps[i] & PDO_TYPE_MASK) == PDO_TYPE_BATTERY) { - uw = 250000 * (src_caps[i] & 0x3FF); - } else { - int ma = (src_caps[i] & 0x3FF) * 10; - uw = ma * mv; - } - if ((uw > max_uw) && (mv <= max_mv)) { - max_i = i; - max_uw = uw; - sel_mv = mv; - } - } - if (max_i < 0) - return -EC_ERROR_UNKNOWN; - - /* request all the power ... */ - if ((src_caps[max_i] & PDO_TYPE_MASK) == PDO_TYPE_BATTERY) { - int uw = 250000 * (src_caps[max_i] & 0x3FF); - *rdo = RDO_BATT(max_i + 1, uw/2, uw, 0); - ccprintf("Request [%d] %dV %d/%d mW\n", - max_i, sel_mv/1000, uw/1000, uw/1000); - } else { - int ma = 10 * (src_caps[max_i] & 0x3FF); - *rdo = RDO_FIXED(max_i + 1, ma / 2, ma, 0); - ccprintf("Request [%d] %dV %d/%d mA\n", - max_i, sel_mv/1000, max_i, ma/2, ma); - } - return EC_SUCCESS; -} - -void pd_set_max_voltage(unsigned mv) -{ - max_mv = mv; -} - -int pd_request_voltage(uint32_t rdo) -{ - int op_ma = rdo & 0x3FF; - int max_ma = (rdo >> 10) & 0x3FF; - int idx = rdo >> 28; - uint32_t pdo; - uint32_t pdo_ma; - - if (!idx || idx > pd_src_pdo_cnt) - return EC_ERROR_INVAL; /* Invalid index */ - - /* check current ... */ - pdo = pd_src_pdo[idx - 1]; - pdo_ma = (pdo & 0x3ff); - if (op_ma > pdo_ma) - return EC_ERROR_INVAL; /* too much op current */ - if (max_ma > pdo_ma) - return EC_ERROR_INVAL; /* too much max current */ - - ccprintf("Switch to %d V %d mA (for %d/%d mA)\n", - ((pdo >> 10) & 0x3ff) * 50, (pdo & 0x3ff) * 10, - ((rdo >> 10) & 0x3ff) * 10, (rdo & 0x3ff) * 10); - - return EC_SUCCESS; -} - -int pd_set_power_supply_ready(int port) -{ - /* Not implemented */ - return EC_SUCCESS; -} - -void pd_power_supply_reset(int port) -{ - /* Not implemented */ -} - -void pd_set_input_current_limit(uint32_t max_ma) -{ - /* Not implemented */ -} - -int pd_board_checks(void) -{ - return EC_SUCCESS; -} - -int pd_custom_vdm(int port, int cnt, uint32_t *payload, uint32_t **rpayload) -{ - return 0; -} |