driver: Add driver header for PCA9555 I/O port controller [chromiumos/platform/ec : master]

13 views
Skip to first unread message

ChromeOS bot (Gerrit)

unread,
Aug 8, 2017, 1:20:10 AM8/8/17
to Vijay P Hiremath, ChromeOS Commit Bot, Aaron Durbin, Aseda Aboagye, Shawn N, Divya S Sasidharan, Hannah Williams, Shaunak Saha, Srinivas Sripathi, Li1 Feng, Jagadish Krishnamoorthy, Shamile Khan, Divya Jyothi, Ravishankar Sarawadi, Kyoung Il Kim

ChromeOS bot merged this change.

View Change

driver: Add driver header for PCA9555 I/O port controller

BUG=b:64394037
BRANCH=glkrvp
TEST=Manually tested on GLKRVP, i2cxfer works

Change-Id: If65e5039987ecbb7fa2a3a5eeeef5af6d73ab66a
Signed-off-by: Vijay Hiremath <vijay.p....@intel.com>
Reviewed-on: https://chromium-review.googlesource.com/603987
Commit-Ready: Vijay P Hiremath <vijay.p....@intel.com>
Tested-by: Vijay P Hiremath <vijay.p....@intel.com>
Reviewed-by: Aaron Durbin <adu...@chromium.org>
Reviewed-by: Aseda Aboagye <aabo...@chromium.org>
---
A driver/ioexpander_pca9555.h
1 file changed, 41 insertions(+), 0 deletions(-)

diff --git a/driver/ioexpander_pca9555.h b/driver/ioexpander_pca9555.h
new file mode 100644
index 0000000..3a932ce
--- /dev/null
+++ b/driver/ioexpander_pca9555.h
@@ -0,0 +1,41 @@
+/* Copyright 2017 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.
+ *
+ * NXP PCA9555 I/O Port expander driver header
+ */
+
+#ifndef __CROS_EC_IOEXPANDER_PCA9555_H
+#define __CROS_EC_IOEXPANDER_PCA9555_H
+
+#include "i2c.h"
+
+#define PCA9555_CMD_INPUT_PORT_0 0
+#define PCA9555_CMD_INPUT_PORT_1 1
+#define PCA9555_CMD_OUTPUT_PORT_0 2
+#define PCA9555_CMD_OUTPUT_PORT_1 3
+#define PCA9555_CMD_POLARITY_INVERSION_PORT_0 4
+#define PCA9555_CMD_POLARITY_INVERSION_PORT_1 5
+#define PCA9555_CMD_CONFIGURATION_PORT_0 6
+#define PCA9555_CMD_CONFIGURATION_PORT_1 7
+
+#define PCA9555_IO_0 (1 << 0)
+#define PCA9555_IO_1 (1 << 1)
+#define PCA9555_IO_2 (1 << 2)
+#define PCA9555_IO_3 (1 << 3)
+#define PCA9555_IO_4 (1 << 4)
+#define PCA9555_IO_5 (1 << 5)
+#define PCA9555_IO_6 (1 << 6)
+#define PCA9555_IO_7 (1 << 7)
+
+static inline int pca9555_read(int port, int addr, int reg, int *data_ptr)
+{
+ return i2c_read8(port, addr, reg, data_ptr);
+}
+
+static inline int pca9555_write(int port, int addr, int reg, int data)
+{
+ return i2c_write8(port, addr, reg, data);
+}
+
+#endif /* __CROS_EC_IOEXPANDER_PCA9555_H */

To view, visit change 603987. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: chromiumos/platform/ec
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: If65e5039987ecbb7fa2a3a5eeeef5af6d73ab66a
Gerrit-Change-Number: 603987
Gerrit-PatchSet: 4
Gerrit-Owner: Vijay P Hiremath <vijay.p....@intel.com>
Gerrit-Reviewer: Aaron Durbin <adu...@chromium.org>
Gerrit-Reviewer: Aseda Aboagye <aabo...@chromium.org>
Gerrit-Reviewer: Divya Jyothi <divya....@intel.com>
Gerrit-Reviewer: Divya S Sasidharan <divya.s.s...@intel.com>
Gerrit-Reviewer: Hannah Williams <hannah....@intel.com>
Gerrit-Reviewer: Jagadish Krishnamoorthy <jagadish.kr...@intel.com>
Gerrit-Reviewer: Kyoung Il Kim <kyoung...@intel.com>
Gerrit-Reviewer: Li1 Feng <li1....@intel.com>
Gerrit-Reviewer: Ravishankar Sarawadi <ravishanka...@intel.com>
Gerrit-Reviewer: Shamile Khan <shamil...@intel.com>
Gerrit-Reviewer: Shaunak Saha <shauna...@intel.com>
Gerrit-Reviewer: Shawn N <sha...@chromium.org>
Gerrit-Reviewer: Srinivas Sripathi <srinivas...@intel.com>
Gerrit-Reviewer: Vijay P Hiremath <vijay.p....@intel.com>
Gerrit-CC: ChromeOS Commit Bot <chromeos-...@chromium.org>
Reply all
Reply to author
Forward
0 new messages