summaryrefslogtreecommitdiff
path: root/board/twinkie
diff options
context:
space:
mode:
authorTom Hughes <tomhughes@chromium.org>2021-10-18 23:03:09 +0000
committerCommit Bot <commit-bot@chromium.org>2021-11-05 19:24:34 +0000
commita311557a3165950a5ef3d0a36e46764ecb428f32 (patch)
treebad21b73cb0cf601d06e1913a1d209096bdbb69e /board/twinkie
parentc1c881e4c88b298f34a5e776ec2bb1291a4c3d4d (diff)
downloadchrome-ec-a311557a3165950a5ef3d0a36e46764ecb428f32.tar.gz
tree: Create usb_pd_pdo.c
genvif depends on usb_pd_policy.c. However, the usb_pd_policy.c files often depend on other symbols that are not included when building genvif. genvif only needs the pd_src_pdo and pd_src_pdo_count variables (and charge_manager_get_source_pdo() in one case). Extract these variables into their own files. BRANCH=none BUG=b:172020503 TEST=CC=clang make BOARD=zinger -j TEST=make buildall TEST=compare generated *_vif.xml files before and after change: => MATCH Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: I765750cd86243a0a355dcc6a29b80fc23403d99f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3231026 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
Diffstat (limited to 'board/twinkie')
-rw-r--r--board/twinkie/build.mk2
-rw-r--r--board/twinkie/usb_pd_pdo.c24
-rw-r--r--board/twinkie/usb_pd_pdo.h17
-rw-r--r--board/twinkie/usb_pd_policy.c17
4 files changed, 43 insertions, 17 deletions
diff --git a/board/twinkie/build.mk b/board/twinkie/build.mk
index 6fc2067d8f..3ced5f2966 100644
--- a/board/twinkie/build.mk
+++ b/board/twinkie/build.mk
@@ -10,5 +10,5 @@ CHIP:=stm32
CHIP_FAMILY:=stm32f0
CHIP_VARIANT:=stm32f07x
-board-y=board.o usb_pd_policy.o injector.o simpletrace.o
+board-y=board.o usb_pd_policy.o injector.o simpletrace.o usb_pd_pdo.o
board-$(HAS_TASK_SNIFFER)+=sniffer.o
diff --git a/board/twinkie/usb_pd_pdo.c b/board/twinkie/usb_pd_pdo.c
new file mode 100644
index 0000000000..120c13125b
--- /dev/null
+++ b/board/twinkie/usb_pd_pdo.c
@@ -0,0 +1,24 @@
+/* Copyright 2021 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 "compile_time_macros.h"
+#include "usb_pd.h"
+#include "usb_pd_pdo.h"
+
+#define PDO_FIXED_FLAGS (PDO_FIXED_UNCONSTRAINED | PDO_FIXED_DATA_SWAP)
+
+const uint32_t pd_src_pdo[] = {
+ PDO_FIXED(5000, 3000, PDO_FIXED_FLAGS),
+ PDO_FIXED(12000, 3000, PDO_FIXED_FLAGS),
+ PDO_FIXED(20000, 3000, PDO_FIXED_FLAGS),
+};
+const int pd_src_pdo_cnt = ARRAY_SIZE(pd_src_pdo);
+
+const uint32_t pd_snk_pdo[] = {
+ PDO_FIXED(5000, 500, PDO_FIXED_FLAGS),
+ PDO_BATT(4750, 21000, 15000),
+ PDO_VAR(4750, 21000, 3000),
+};
+const int pd_snk_pdo_cnt = ARRAY_SIZE(pd_snk_pdo);
diff --git a/board/twinkie/usb_pd_pdo.h b/board/twinkie/usb_pd_pdo.h
new file mode 100644
index 0000000000..377ccce1b5
--- /dev/null
+++ b/board/twinkie/usb_pd_pdo.h
@@ -0,0 +1,17 @@
+/* Copyright 2021 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.
+ */
+
+#ifndef __CROS_EC_BOARD_TWINKIE_USB_PD_PDO_H
+#define __CROS_EC_BOARD_TWINKIE_USB_PD_PDO_H
+
+#include "stdint.h"
+
+extern const uint32_t pd_src_pdo[3];
+extern const int pd_src_pdo_cnt;
+
+extern const uint32_t pd_snk_pdo[3];
+extern const int pd_snk_pdo_cnt;
+
+#endif /* __CROS_EC_BOARD_TWINKIE_USB_PD_PDO_H */
diff --git a/board/twinkie/usb_pd_policy.c b/board/twinkie/usb_pd_policy.c
index 62ecd6e0db..a8f76b40e5 100644
--- a/board/twinkie/usb_pd_policy.c
+++ b/board/twinkie/usb_pd_policy.c
@@ -13,26 +13,11 @@
#include "timer.h"
#include "util.h"
#include "usb_pd.h"
+#include "usb_pd_pdo.h"
#define CPRINTF(format, args...) cprintf(CC_USBPD, format, ## args)
#define CPRINTS(format, args...) cprints(CC_USBPD, format, ## args)
-#define PDO_FIXED_FLAGS (PDO_FIXED_UNCONSTRAINED | PDO_FIXED_DATA_SWAP)
-
-const uint32_t pd_src_pdo[] = {
- PDO_FIXED(5000, 3000, PDO_FIXED_FLAGS),
- PDO_FIXED(12000, 3000, PDO_FIXED_FLAGS),
- PDO_FIXED(20000, 3000, PDO_FIXED_FLAGS),
-};
-const int pd_src_pdo_cnt = ARRAY_SIZE(pd_src_pdo);
-
-const uint32_t pd_snk_pdo[] = {
- PDO_FIXED(5000, 500, PDO_FIXED_FLAGS),
- PDO_BATT(4750, 21000, 15000),
- PDO_VAR(4750, 21000, 3000),
-};
-const int pd_snk_pdo_cnt = ARRAY_SIZE(pd_snk_pdo);
-
void pd_set_input_current_limit(int port, uint32_t max_ma,
uint32_t supply_voltage)
{