<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/stable/linux-stable.git/drivers/phy/rockchip, branch linux-5.18.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/atom?h=linux-5.18.y</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/atom?h=linux-5.18.y'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/'/>
<updated>2022-08-17T12:41:48+00:00</updated>
<entry>
<title>phy: rockchip-inno-usb2: Ignore OTG IRQs in host mode</title>
<updated>2022-08-17T12:41:48+00:00</updated>
<author>
<name>Samuel Holland</name>
<email>samuel@sholland.org</email>
</author>
<published>2022-07-08T06:14:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=074cac513b5808cc135ef4e4d3283e551ce95608'/>
<id>urn:sha1:074cac513b5808cc135ef4e4d3283e551ce95608</id>
<content type='text'>
[ Upstream commit fd7d47484125c7d04578de9294faa7fec6e5df0a ]

When the OTG port is fixed to host mode, the driver does not request its
IRQs, nor does it enable those IRQs in hardware. Similarly, the driver
should ignore the OTG port IRQs when handling the shared interrupt.

Otherwise, it would update the extcon based on an ID pin which may be in
an undefined state, or try to queue a uninitialized work item.

Fixes: 6a98df08ccd5 ("phy: rockchip-inno-usb2: Fix muxed interrupt support")
Reported-by: Frank Wunderlich &lt;frank-w@public-files.de&gt;
Signed-off-by: Samuel Holland &lt;samuel@sholland.org&gt;
Tested-by: Peter Geis &lt;pgwipeout@gmail.com&gt;
Tested-by: Frank Wunderlich &lt;frank-w@public-files.de&gt;
Link: https://lore.kernel.org/r/20220708061434.38115-1-samuel@sholland.org
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: rockchip-inno-usb2: Fix muxed interrupt support</title>
<updated>2022-06-14T16:44:46+00:00</updated>
<author>
<name>Samuel Holland</name>
<email>samuel@sholland.org</email>
</author>
<published>2022-04-14T03:22:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=5bc9dd160de1055bf313b66ad5419c20a8e3624f'/>
<id>urn:sha1:5bc9dd160de1055bf313b66ad5419c20a8e3624f</id>
<content type='text'>
[ Upstream commit 6a98df08ccd55e87947d253b19925691763e755c ]

This commit fixes two issues with the muxed interrupt handler. First,
the OTG port has the "bvalid" interrupt enabled, not "linestate". Since
only the linestate interrupt was handled, and not the bvalid interrupt,
plugging in a cable to the OTG port caused an interrupt storm.

Second, the return values from the individual port IRQ handlers need to
be OR-ed together. Otherwise, the lack of an interrupt from the last
port would cause the handler to erroneously return IRQ_NONE.

Fixes: ed2b5a8e6b98 ("phy: phy-rockchip-inno-usb2: support muxed interrupts")
Signed-off-by: Samuel Holland &lt;samuel@sholland.org&gt;
Tested-by: Michael Riesch &lt;michael.riesch@wolfvision.net&gt;
Link: https://lore.kernel.org/r/20220414032258.40984-2-samuel@sholland.org
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: rockchip: add naneng combo phy for RK3568</title>
<updated>2022-02-24T14:43:52+00:00</updated>
<author>
<name>Yifeng Zhao</name>
<email>yifeng.zhao@rock-chips.com</email>
</author>
<published>2022-02-08T09:13:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=7160820d742a16313f7802e33c2956c19548e488'/>
<id>urn:sha1:7160820d742a16313f7802e33c2956c19548e488</id>
<content type='text'>
This patch implements a combo phy driver for Rockchip SoCs
with NaNeng IP block. This phy can be used as pcie-phy, usb3-phy,
sata-phy or sgmii-phy.

Signed-off-by: Yifeng Zhao &lt;yifeng.zhao@rock-chips.com&gt;
Signed-off-by: Johan Jonker &lt;jbx6244@gmail.com&gt;
Tested-by: Peter Geis &lt;pgwipeout@gmail.com&gt;
Tested-by: Frank Wunderlich &lt;frank-w@public-files.de&gt;
Link: https://lore.kernel.org/r/20220208091326.12495-4-yifeng.zhao@rock-chips.com
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: dphy: Correct clk_pre parameter</title>
<updated>2022-02-02T05:03:04+00:00</updated>
<author>
<name>Liu Ying</name>
<email>victor.liu@nxp.com</email>
</author>
<published>2022-01-24T02:40:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=9a8406ba1a9a2965c27e0db1d7753471d12ee9ff'/>
<id>urn:sha1:9a8406ba1a9a2965c27e0db1d7753471d12ee9ff</id>
<content type='text'>
The D-PHY specification (v1.2) explicitly mentions that the T-CLK-PRE
parameter's unit is Unit Interval(UI) and the minimum value is 8.  Also,
kernel doc of the 'clk_pre' member of struct phy_configure_opts_mipi_dphy
mentions that it should be in UI.  However, the dphy core driver wrongly
sets 'clk_pre' to 8000, which seems to hint that it's in picoseconds.

So, let's fix the dphy core driver to correctly reflect the T-CLK-PRE
parameter's minimum value according to the D-PHY specification.

I'm assuming that all impacted custom drivers shall program values in
TxByteClkHS cycles into hardware for the T-CLK-PRE parameter.  The D-PHY
specification mentions that the frequency of TxByteClkHS is exactly 1/8
the High-Speed(HS) bit rate(each HS bit consumes one UI).  So, relevant
custom driver code is changed to program those values as
DIV_ROUND_UP(cfg-&gt;clk_pre, BITS_PER_BYTE), then.

Note that I've only tested the patch with RM67191 DSI panel on i.MX8mq EVK.
Help is needed to test with other i.MX8mq, Meson and Rockchip platforms,
as I don't have the hardwares.

Fixes: 2ed869990e14 ("phy: Add MIPI D-PHY configuration options")
Tested-by: Liu Ying &lt;victor.liu@nxp.com&gt; # RM67191 DSI panel on i.MX8mq EVK
Reviewed-by: Andrzej Hajda &lt;andrzej.hajda@intel.com&gt;
Reviewed-by: Neil Armstrong &lt;narmstrong@baylibre.com&gt; # for phy-meson-axg-mipi-dphy.c
Tested-by: Neil Armstrong &lt;narmstrong@baylibre.com&gt; # for phy-meson-axg-mipi-dphy.c
Tested-by: Guido Günther &lt;agx@sigxcpu.org&gt; # Librem 5 (imx8mq) with it's rather picky panel
Reviewed-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Liu Ying &lt;victor.liu@nxp.com&gt;
Link: https://lore.kernel.org/r/20220124024007.1465018-1-victor.liu@nxp.com
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: phy-rockchip-inno-usb2: add rk3568 support</title>
<updated>2021-12-23T11:24:48+00:00</updated>
<author>
<name>Peter Geis</name>
<email>pgwipeout@gmail.com</email>
</author>
<published>2021-12-15T21:02:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=42b559727a45d79c811f493515eb9b7e56016421'/>
<id>urn:sha1:42b559727a45d79c811f493515eb9b7e56016421</id>
<content type='text'>
The rk3568 usb2phy is a standalone device with a single muxed interrupt.
Add support for the registers to the usb2phy driver.

Signed-off-by: Peter Geis &lt;pgwipeout@gmail.com&gt;
Tested-by: Michael Riesch &lt;michael.riesch@wolfvision.net&gt;
Link: https://lore.kernel.org/r/20211215210252.120923-7-pgwipeout@gmail.com
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: phy-rockchip-inno-usb2: support muxed interrupts</title>
<updated>2021-12-23T11:24:48+00:00</updated>
<author>
<name>Peter Geis</name>
<email>pgwipeout@gmail.com</email>
</author>
<published>2021-12-15T21:02:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=ed2b5a8e6b98d042b323afbe177a5dc618921b31'/>
<id>urn:sha1:ed2b5a8e6b98d042b323afbe177a5dc618921b31</id>
<content type='text'>
The rk3568 usb2phy has a single muxed interrupt that handles all
interrupts.
Allow the driver to plug in only a single interrupt as necessary.

Signed-off-by: Peter Geis &lt;pgwipeout@gmail.com&gt;
Tested-by: Michael Riesch &lt;michael.riesch@wolfvision.net&gt;
Link: https://lore.kernel.org/r/20211215210252.120923-6-pgwipeout@gmail.com
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: phy-rockchip-inno-usb2: support standalone phy nodes</title>
<updated>2021-12-23T11:24:48+00:00</updated>
<author>
<name>Peter Geis</name>
<email>pgwipeout@gmail.com</email>
</author>
<published>2021-12-15T21:02:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=e6915e1acca57bc4fdb61dccd5cc2e49f72ef743'/>
<id>urn:sha1:e6915e1acca57bc4fdb61dccd5cc2e49f72ef743</id>
<content type='text'>
New Rockchip devices have the usb2 phy devices as standalone nodes
instead of children of the grf node.
Allow the driver to find the grf node from a phandle.

Signed-off-by: Peter Geis &lt;pgwipeout@gmail.com&gt;
Tested-by: Michael Riesch &lt;michael.riesch@wolfvision.net&gt;
Link: https://lore.kernel.org/r/20211215210252.120923-5-pgwipeout@gmail.com
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: phy-rockchip-inno-usb2: support #address_cells = 2</title>
<updated>2021-12-23T11:24:48+00:00</updated>
<author>
<name>Peter Geis</name>
<email>pgwipeout@gmail.com</email>
</author>
<published>2021-12-15T21:02:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=9c19c531dc98d7ba49b44802a607042e763ebe21'/>
<id>urn:sha1:9c19c531dc98d7ba49b44802a607042e763ebe21</id>
<content type='text'>
New Rockchip devices have the usb phy nodes as standalone devices.
These nodes have register nodes with #address_cells = 2, but only use 32
bit addresses.

Adjust the driver to check if the returned address is "0", and adjust
the index in that case.

Signed-off-by: Peter Geis &lt;pgwipeout@gmail.com&gt;
Tested-by: Michael Riesch &lt;michael.riesch@wolfvision.net&gt;
Link: https://lore.kernel.org/r/20211215210252.120923-4-pgwipeout@gmail.com
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: rockchip-inno-usb2: remove redundant assignment to variable delay</title>
<updated>2021-12-14T09:15:07+00:00</updated>
<author>
<name>Colin Ian King</name>
<email>colin.i.king@gmail.com</email>
</author>
<published>2021-12-11T18:00:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=b156117aed1b9d192efcb27f5b37f78cd21fa545'/>
<id>urn:sha1:b156117aed1b9d192efcb27f5b37f78cd21fa545</id>
<content type='text'>
Variable delay is being assigned to zero and the code falls through to
the next case in a switch statement that returns out of the function.
The variable is never read in this scenario and so the assignment is
redundant and can be removed.

Cleans up scan-build static analysis warning:
drivers/phy/rockchip/phy-rockchip-inno-usb2.c:753:3: warning: Value
stored to 'delay' is never read [deadcode.DeadStores]

Signed-off-by: Colin Ian King &lt;colin.i.king@gmail.com&gt;
Link: https://lore.kernel.org/r/20211211180054.525368-1-colin.i.king@gmail.com
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
</content>
</entry>
<entry>
<title>phy: rockchip-inno-usb2: Make use of the helper function devm_add_action_or_reset()</title>
<updated>2021-10-01T10:24:23+00:00</updated>
<author>
<name>Cai Huoqing</name>
<email>caihuoqing@baidu.com</email>
</author>
<published>2021-09-22T13:00:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=717e04fba4fa0e2f8e5a1fa810c5eff4d4d5e7db'/>
<id>urn:sha1:717e04fba4fa0e2f8e5a1fa810c5eff4d4d5e7db</id>
<content type='text'>
The helper function devm_add_action_or_reset() will internally
call devm_add_action(), and gif devm_add_action() fails then it will
execute the action mentioned and return the error code. So
use devm_add_action_or_reset() instead of devm_add_action()
to simplify the error handling, reduce the code.

Signed-off-by: Cai Huoqing &lt;caihuoqing@baidu.com&gt;
Link: https://lore.kernel.org/r/20210922130024.745-1-caihuoqing@baidu.com
Signed-off-by: Vinod Koul &lt;vkoul@kernel.org&gt;
</content>
</entry>
</feed>
