diff mbox series

[04/18] km: qrio: add function to read PGY_PRES pin status

Message ID AM9PR06MB8100108C1C51882800F2581DE9999@AM9PR06MB8100.eurprd06.prod.outlook.com
State Accepted
Commit 639ca4b7f121b50a88516717313fdff507b82cba
Delegated to: Priyanka Jain
Headers show
Series [01/18] arm: ls1021a: limit debug eth phy speed to 100Mbps | expand

Commit Message

Aleksandar Gerasimovski Nov. 16, 2021, 12:50 p.m. UTC
It is necessary to read the status of the PGY_PRES pin
so that u-boot can react accordingly.

Signed-off-by: Rainer Boschung <rainer.boschung@hitachienergy.com>
Signed-off-by: Aleksandar Gerasimovski <aleksandar.gerasimovski@hitachienergy.com>
---
 board/keymile/common/qrio.c | 13 +++++++++++++
 board/keymile/common/qrio.h |  1 +
 2 files changed, 14 insertions(+)
diff mbox series

Patch

diff --git a/board/keymile/common/qrio.c b/board/keymile/common/qrio.c
index ed5e472..89a9726 100644
--- a/board/keymile/common/qrio.c
+++ b/board/keymile/common/qrio.c
@@ -40,6 +40,19 @@  bool qrio_get_selftest_pin(void)
 	return (slftest & 1) > 0;
 }
 
+#define BPRTH_OFF		0x04
+
+bool qrio_get_pgy_pres_pin(void)
+{
+	u8 pgy_pres;
+
+	void __iomem *qrio_base = (void *)CONFIG_SYS_QRIO_BASE;
+
+	pgy_pres = in_8(qrio_base + BPRTH_OFF);
+
+	return (pgy_pres & 0x80) > 0;
+}
+
 int qrio_get_gpio(u8 port_off, u8 gpio_nr)
 {
 	u32 gprt;
diff --git a/board/keymile/common/qrio.h b/board/keymile/common/qrio.h
index c341cd9..2b997d9 100644
--- a/board/keymile/common/qrio.h
+++ b/board/keymile/common/qrio.h
@@ -13,6 +13,7 @@ 
 
 void show_qrio(void);
 bool qrio_get_selftest_pin(void);
+bool qrio_get_pgy_pres_pin(void);
 int qrio_get_gpio(u8 port_off, u8 gpio_nr);
 void qrio_set_opendrain_gpio(u8 port_off, u8 gpio_nr, u8 val);
 void qrio_set_gpio(u8 port_off, u8 gpio_nr, bool value);