Thread (12 messages) 12 messages, 4 authors, 2014-12-11

[PATCH v5 1/5] phy: add a driver for the Rockchip SoC internal USB2.0 PHY

flat view

From: Yunzhi Li <hidden>
Date: 2014-12-11 07:44:48
Also in: linux-devicetree, lkml

Hi Kishon:

On 2014/12/11 14:02, Kishon Vijay Abraham I wrote:
Hi,

On Wednesday 10 December 2014 04:16 PM, Yunzhi Li wrote:
quoted
This patch to add a generic PHY driver for ROCKCHIP usb PHYs,
currently this driver can support RK3288. The RK3288 SoC have
three independent USB PHY IPs which are all configured through a
set of registers located in the GRF (general register files)
module.

Signed-off-by: Yunzhi Li <redacted>

+
+#define ROCKCHIP_RK3288_UOC(n)	(0x320 + n * 0x14)
+
+/*
+ * The higher 16-bit of this register is used for write protection
+ * only if BIT(13 + 16) set to 1 the BIT(13) can be written.
+ */
+#define SIDDQ_MSK		BIT(13 + 16)
I think here the "MSK" is misleading. it should be something that refers write
protection?
So, #define SIDDQ_WRITE_ENA  BIT(29) , could be ok ?
quoted
+#define SIDDQ_ON		BIT(13)
+#define SIDDQ_OFF		(0 << 13)
+
+struct rockchip_usb_phy {
+	struct regmap	*reg_base;
+	unsigned int	reg_offset;
+	struct clk	*clk;
+	struct phy	*phy;
+	unsigned	index;
+};
+
+struct rockchip_usb_phy_priv {
+	struct rockchip_usb_phy	*phys;
+	unsigned		nphys;
+};
+
+static int rockchip_usb_phy_power(struct rockchip_usb_phy *phy,
+					   bool siddq)
+{
+	return regmap_write(phy->reg_base, phy->reg_offset,
+			    SIDDQ_MSK | (siddq ? SIDDQ_ON : SIDDQ_OFF));
Shouldn't we actually reset the bit for power off?
Sorry, which bit you refer to here  and why should it be reset? could 
you give more infomation.

---
Yunzhi Li @ rockchip
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help