]> git.ipfire.org Git - people/ms/linux.git/log
people/ms/linux.git
3 years agodt-bindings: usb: atmel: Add Microchip LAN9662 compatible string
Herve Codina [Mon, 4 Jul 2022 10:28:44 +0000 (12:28 +0200)] 
dt-bindings: usb: atmel: Add Microchip LAN9662 compatible string

The USB device controller available in the Microchip LAN9662 SOC
is the same IP as the one present in the SAMA5D3 SOC.

Add the LAN9662 compatible string and set the SAMA5D3 compatible
string as a fallback for the LAN9662.

Signed-off-by: Herve Codina <herve.codina@bootlin.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Link: https://lore.kernel.org/r/20220704102845.168438-3-herve.codina@bootlin.com
3 years agophy: phy-brcm-usb: drop unexpected word "the" in the comments
Jiang Jian [Tue, 21 Jun 2022 12:24:01 +0000 (20:24 +0800)] 
phy: phy-brcm-usb: drop unexpected word "the" in the comments

there is an unexpected word "the" in the comments that need to be dropped

file: ./drivers/phy/broadcom/phy-brcm-usb-init.c
line: 864
 * Make sure the the second and third memory controller
changed to
 * Make sure the second and third memory controller

Signed-off-by: Jiang Jian <jiangjian@cdjrlc.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20220621122401.115500-1-jiangjian@cdjrlc.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: rockchip-inno-usb2: Sync initial otg state
Peter Geis [Wed, 22 Jun 2022 00:31:40 +0000 (20:31 -0400)] 
phy: rockchip-inno-usb2: Sync initial otg state

The initial otg state for the phy defaults to device mode. The actual
state isn't detected until an ID IRQ fires. Fix this by syncing the ID
state during initialization.

Fixes: 51a9b2c03dd3 ("phy: rockchip-inno-usb2: Handle ID IRQ")
Signed-off-by: Peter Geis <pgwipeout@gmail.com>
Reviewed-by: Samuel Holland <samuel@sholland.org>
Link: https://lore.kernel.org/r/20220622003140.30365-1-pgwipeout@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agoARM: dts: stm32: add optee reserved memory on stm32mp135f-dk
Gabriel Fernandez [Fri, 13 May 2022 14:51:48 +0000 (16:51 +0200)] 
ARM: dts: stm32: add optee reserved memory on stm32mp135f-dk

Add the static OP-TEE reserved memory regions.

Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
3 years agoARM: dts: stm32: add RCC on STM32MP13x SoC family
Gabriel Fernandez [Wed, 23 Feb 2022 09:18:19 +0000 (10:18 +0100)] 
ARM: dts: stm32: add RCC on STM32MP13x SoC family

Enables Reset and Clocks Controller on STM32MP13

Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
3 years agoARM: dts: stm32: enable optee firmware and SCMI support on STM32MP13
Gabriel Fernandez [Wed, 23 Feb 2022 09:16:06 +0000 (10:16 +0100)] 
ARM: dts: stm32: enable optee firmware and SCMI support on STM32MP13

Enable optee and SCMI clocks support.

Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
3 years agodt-bindings: rcc: stm32: select the "secure" path for stm32mp13
Alexandre Torgue [Mon, 13 Jun 2022 09:34:19 +0000 (11:34 +0200)] 
dt-bindings: rcc: stm32: select the "secure" path for stm32mp13

Like for stm32mp15, when stm32 RCC node is used to interact with a secure
context (using clock SCMI protocol), a different path has to be used for
yaml verification.

Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Acked-by: Rob Herring <robh@kernel.org>
3 years agoARM: dts: stm32: correct vcc-supply for eeprom on stm32mp15xx-osd32
Leonard Göhrs [Fri, 3 Jun 2022 09:44:21 +0000 (11:44 +0200)] 
ARM: dts: stm32: correct vcc-supply for eeprom on stm32mp15xx-osd32

According to the OSD32MP1 Power System overview[1] the EEPROM is connected to
the VDD line and not to some single-purpose fixed regulator.
Set the EEPROM supply according to the diagram to eliminate this parent-less
regulator.

[1]: https://octavosystems.com/app_notes/osd32mp1-power-system-overview/#connections

Signed-off-by: Leonard Göhrs <l.goehrs@pengutronix.de>
Acked-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
3 years agoARM: dts: stm32: fix missing internally connected voltage regulator for OSD32MP1
Leonard Göhrs [Fri, 3 Jun 2022 09:44:20 +0000 (11:44 +0200)] 
ARM: dts: stm32: fix missing internally connected voltage regulator for OSD32MP1

According to the OSD32MP1 Power System overview[1] ldo3's input is always
internally connected to vdd_ddr.

[1]: https://octavosystems.com/app_notes/osd32mp1-power-system-overview/#connections

Signed-off-by: Leonard Göhrs <l.goehrs@pengutronix.de>
Reviewed-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
3 years agoARM: dts: stm32: adjust whitespace around '=' on MCU boards
Krzysztof Kozlowski [Thu, 26 May 2022 20:36:32 +0000 (22:36 +0200)] 
ARM: dts: stm32: adjust whitespace around '=' on MCU boards

Fix whitespace coding style: use single space instead of tabs or
multiple spaces around '=' sign in property assignment.  No functional
changes (same DTB).

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
3 years agoARM: dts: stm32: Move DHCOR BUCK3 VDD 2V9 adjustment to 1V8 DTSI
Marek Vasut [Wed, 4 May 2022 12:49:45 +0000 (14:49 +0200)] 
ARM: dts: stm32: Move DHCOR BUCK3 VDD 2V9 adjustment to 1V8 DTSI

The Buck3 on DHCOR is used to supply IO voltage. It can output either 3V3
in the default DHCOR configuration, or 2V9 in case of AV96 DHCOR variant
which has extra Empirion DCDC converter in front of the 1V8 IO supply, or
outright 1V8 in case of 1V8 IO DHCOR without the Empirion DCDC converter.

The 2V9 mode in case of AV96 DHCOR variant is used to reduce unnecessarily
high input voltage to the Empirion DCDC converter, so move it into matching
DTSI to stop confusing users.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: linux-stm32@st-md-mailman.stormreply.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
3 years agoARM: dts: stm32: remove the IPCC "wakeup" IRQ on stm32mp151
Fabien Dessenne [Tue, 3 May 2022 14:56:06 +0000 (16:56 +0200)] 
ARM: dts: stm32: remove the IPCC "wakeup" IRQ on stm32mp151

The stm32 ipcc mailbox driver supports only two interrupts (rx and tx), so
remove the unsupported "wakeup" one.
Note that the EXTI interrupt 61 has two roles : it is hierarchically linked
to the GIC IPCC "rx" interrupt, and it acts as a wakeup source.

Signed-off-by: Fabien Dessenne <fabien.dessenne@foss.st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
3 years agoARM: dts: lan966x: Cleanup flexcom3 usart pinctrl settings.
Kavyasree Kotagiri [Mon, 4 Jul 2022 13:58:09 +0000 (11:58 -0200)] 
ARM: dts: lan966x: Cleanup flexcom3 usart pinctrl settings.

On pcb8291, Flexcom3 usart has only tx and rx pins.
Cleaningup usart3 pinctrl settings.

Signed-off-by: Kavyasree Kotagiri <kavyasree.kotagiri@microchip.com>
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Link: https://lore.kernel.org/r/20220704135809.6952-1-kavyasree.kotagiri@microchip.com
3 years agophy: qcom-qmp-pcie: add IPQ8074 PCIe Gen3 QMP PHY support
Robert Marko [Tue, 21 Jun 2022 19:55:12 +0000 (21:55 +0200)] 
phy: qcom-qmp-pcie: add IPQ8074 PCIe Gen3 QMP PHY support

IPQ8074 has 2 different single lane PCIe PHY-s, one Gen2 and one Gen3.
Gen2 one is already supported, so add the support for the Gen3 one.
It uses the same register layout as IPQ6018.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20220621195512.1760362-3-robimarko@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agodt-bindings: phy: qcom,qmp: add IPQ8074 PCIe Gen3 PHY binding
Robert Marko [Tue, 21 Jun 2022 19:55:11 +0000 (21:55 +0200)] 
dt-bindings: phy: qcom,qmp: add IPQ8074 PCIe Gen3 PHY binding

IPQ8074 has 2 different single lane PCIe PHY-s, one Gen2 and one Gen3.
Gen2 one is already supported, document the bindings for the Gen3 one.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20220621195512.1760362-2-robimarko@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: qcom-qmp-pcie: make pipe clock rate configurable
Robert Marko [Tue, 21 Jun 2022 19:55:10 +0000 (21:55 +0200)] 
phy: qcom-qmp-pcie: make pipe clock rate configurable

IPQ8074 Gen3 PCIe PHY uses 250MHz as the pipe clock rate instead of 125MHz
like every other PCIe QMP PHY does, so make it configurable as part of the
qmp_phy_cfg.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20220621195512.1760362-1-robimarko@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agoclk: renesas: rcar-gen4: Fix initconst confusion for cpg_pll_config
Andi Kleen [Thu, 23 Jun 2022 08:32:17 +0000 (10:32 +0200)] 
clk: renesas: rcar-gen4: Fix initconst confusion for cpg_pll_config

A variable pointing to const isn't const itself. It'd have to contain
"const" keyword after "*" too. Therefore, cpg_pll_config cannot be put
to "rodata".  Hence use __initdata instead of __initconst to fix this.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
[js] more explanatory commit message.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/20220623083217.26433-2-jslaby@suse.cz
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agoclk: renesas: r9a07g043: Add support for RZ/Five SoC
Lad Prabhakar [Wed, 22 Jun 2022 18:17:23 +0000 (19:17 +0100)] 
clk: renesas: r9a07g043: Add support for RZ/Five SoC

Renesas RZ/Five SoC has almost the same clock structure compared to the
Renesas RZ/G2UL SoC, re-use the r9a07g043-cpg.c file to add support for
RZ/Five SoC.

This patch splits up the clocks and reset arrays for RZ/G2UL and RZ/Five
SoC using #ifdef CONFIG_ARM64 and #ifdef CONFIG_RISCV checks.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Link: https://lore.kernel.org/r/20220622181723.13033-3-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agoMerge tag 'renesas-r9a07g043-dt-binding-defs-tag2' into HEAD
Geert Uytterhoeven [Tue, 5 Jul 2022 07:20:22 +0000 (09:20 +0200)] 
Merge tag 'renesas-r9a07g043-dt-binding-defs-tag2' into HEAD

Renesas RZ/Five DT Binding Definitions

Clock and reset definitions for the Renesas RZ/Five (R9A07G043) SoC,
shared by driver and DT source files.

3 years agodt-bindings: clock: r9a07g043-cpg: Add Renesas RZ/Five CPG Clock and Reset Definitions
Lad Prabhakar [Wed, 22 Jun 2022 18:17:22 +0000 (19:17 +0100)] 
dt-bindings: clock: r9a07g043-cpg: Add Renesas RZ/Five CPG Clock and Reset Definitions

Renesas RZ/Five SoC has almost the same clock structure compared to the
Renesas RZ/G2UL SoC, re-use the r9a07g043-cpg.h header file and just
amend the RZ/Five CPG clock and reset definitions.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20220622181723.13033-2-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing MODSELx for AVBx
Kuninori Morimoto [Fri, 1 Jul 2022 01:41:02 +0000 (01:41 +0000)] 
pinctrl: renesas: r8a779g0: Add missing MODSELx for AVBx

AVB1 needs MODSEL6, AVB2 needs MODSEL5 settings.
This patch adds missing MODSELx settings for the affected pins.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87k08xsj81.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing MODSELx for TSN0
Kuninori Morimoto [Fri, 1 Jul 2022 01:40:49 +0000 (01:40 +0000)] 
pinctrl: renesas: r8a779g0: Add missing MODSELx for TSN0

TSN0 needs MODSEL4 settings.
This patch adds missing MODSELx settings for the affected pins.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87letdsj8e.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing ERROROUTC_A
Kuninori Morimoto [Fri, 1 Jul 2022 01:40:42 +0000 (01:40 +0000)] 
pinctrl: renesas: r8a779g0: Add missing ERROROUTC_A

This patch adds missing ERROROUTC_A settings.
Current existing ERROROUTC should be _B, this patch tidies it up.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87mtdtsj8m.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing PWM
Kuninori Morimoto [Fri, 1 Jul 2022 01:40:27 +0000 (01:40 +0000)] 
pinctrl: renesas: r8a779g0: Add missing PWM

R-Car V4H has PWM/PWM_A/PWM_B, but current PFC setting is mixed.
This patch adds missing PWM settings, and tidies these up.

According to Document, GP3_14 Function4 is PWM2_A,
but we can't select it at P1SR3[27:24].
This patch just ignore it for now.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87o7y9sj90.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing FlexRay
Kuninori Morimoto [Fri, 1 Jul 2022 01:40:17 +0000 (01:40 +0000)] 
pinctrl: renesas: r8a779g0: Add missing FlexRay

This patch adds missing FlexRay pins.
Because Document (Rev.0.51) has 2x FXR_TXENA/B pin with no suffix (_A, _B),
this patch names them as _X.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87pmipsj9a.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing TPU0TOx_A
Kuninori Morimoto [Fri, 1 Jul 2022 01:40:09 +0000 (01:40 +0000)] 
pinctrl: renesas: r8a779g0: Add missing TPU0TOx_A

This patch adds missing TPU0TOx_A.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87r135sj9j.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing CANFD5_B
Kuninori Morimoto [Fri, 1 Jul 2022 01:39:59 +0000 (01:39 +0000)] 
pinctrl: renesas: r8a779g0: Add missing CANFD5_B

This patch adds missing CANFD5_B.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87sfnlsj9t.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing SCIF1_X
Kuninori Morimoto [Fri, 1 Jul 2022 01:39:51 +0000 (01:39 +0000)] 
pinctrl: renesas: r8a779g0: Add missing SCIF1_X

This patch adds missing SCIF1_X.
Because Document (Rev.0.51) has 2x SCIF1 with no suffix (_A, _B),
this patch names it as _X.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87tu81sja1.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing SCIF3
Kuninori Morimoto [Fri, 1 Jul 2022 01:39:44 +0000 (01:39 +0000)] 
pinctrl: renesas: r8a779g0: Add missing SCIF3

R-Car V4H has SCIF3 and SCIF3_A, but current PFC setting is mixed.
This patch cleans up SCIF3/SCIF3_A, based on Rev.0.51.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87v8shsja7.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing HSCIF1_X
Kuninori Morimoto [Fri, 1 Jul 2022 01:39:34 +0000 (01:39 +0000)] 
pinctrl: renesas: r8a779g0: Add missing HSCIF1_X

This patch adds missing HSCIF1.
Because Document (Rev.0.51) has 2x HSCIF1 with no suffix (_A, _B),
this patch names it as _X.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87wncxsjah.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing HSCIF3_A
Kuninori Morimoto [Fri, 1 Jul 2022 01:39:24 +0000 (01:39 +0000)] 
pinctrl: renesas: r8a779g0: Add missing HSCIF3_A

This patch adds missing HSCIF3_A.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87y1xdsjar.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing IRQx_A/IRQx_B
Kuninori Morimoto [Fri, 1 Jul 2022 01:39:11 +0000 (01:39 +0000)] 
pinctrl: renesas: r8a779g0: Add missing IRQx_A/IRQx_B

This patch adds missing IRQx_A/IRQx_B, and tidies up existing IRQs.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87zghtsjb4.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add missing TCLKx_A/TCLKx_B/TCLKx_X
Kuninori Morimoto [Fri, 1 Jul 2022 01:39:03 +0000 (01:39 +0000)] 
pinctrl: renesas: r8a779g0: Add missing TCLKx_A/TCLKx_B/TCLKx_X

This patch adds missing TCLKx_A/TCLKx_B/TCLKx_X.

Because Document (Rev.0.51) has 2x TCLK3/TCLK4 with no suffix (_A, _B),
this patch names them as _X.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/871qv5txvt.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Tidyup POC1 voltage
Kuninori Morimoto [Fri, 1 Jul 2022 01:38:40 +0000 (01:38 +0000)] 
pinctrl: renesas: r8a779g0: Tidyup POC1 voltage

According to Rev.0.51 datasheet 004_R-CarV4H_pin_function.xlsx,
GP1_23 - GP1_28 are 1.8/3.3V.  But they are not on Table 7.28.
According to the HW team, there are no bits assigned.
This patch follows HW team's comment.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/8735fltxwg.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Tidy up ioctrl_regs
Kuninori Morimoto [Fri, 1 Jul 2022 01:37:34 +0000 (01:37 +0000)] 
pinctrl: renesas: r8a779g0: Tidy up ioctrl_regs

Remove POC2 which is not documented, and remove TD0SEL3 which is not
needed.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/874k01txy9.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Remove unused MOD_SELx definitions
Kuninori Morimoto [Fri, 1 Jul 2022 01:37:21 +0000 (01:37 +0000)] 
pinctrl: renesas: r8a779g0: Remove unused MOD_SELx definitions

Current R-Car V4H PFC code has many MOD_SELx definitions with all 0.
But these have no meaning.  This patch removes them.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/875ykhtxym.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Remove unused IPxSRx definitions
Kuninori Morimoto [Fri, 1 Jul 2022 01:37:12 +0000 (01:37 +0000)] 
pinctrl: renesas: r8a779g0: Remove unused IPxSRx definitions

Current R-Car V4H PFC code has many IPxSRx definitions with all 0.
But these have no meaning.  This patch removes them.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/877d4xtxyv.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Remove unused NOGP definitions
Kuninori Morimoto [Fri, 1 Jul 2022 01:36:59 +0000 (01:36 +0000)] 
pinctrl: renesas: r8a779g0: Remove unused NOGP definitions

Current R-Car V4H PFC code has many NOGP definitions.  But these are not
used, and they are different from original usage.  This patch removes
them.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/878rpdtxz8.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Fixup MODSEL8
Kuninori Morimoto [Fri, 1 Jul 2022 01:36:51 +0000 (01:36 +0000)] 
pinctrl: renesas: r8a779g0: Fixup MODSEL8

MODSEL8 controls I2C vs. GPIO modes, and the Datasheet (Rev.0.51) is
indicating that I2C needs 1.  But we should use 0 for all cases in
reality.  New Datasheet should be updated.

Signed-off-by: Takeshi Kihara <takeshi.kihara.df@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87a69ttxzg.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: r8a779g0: Add pins, groups and functions
Phong Hoang [Fri, 1 Jul 2022 01:36:21 +0000 (01:36 +0000)] 
pinctrl: renesas: r8a779g0: Add pins, groups and functions

This patch adds SCIF, I2C, EthernetAVB, HSCIF, MMC, QSPI, MSIOF, PWM,
CAN-FD, Ethernet-TSN, PCIe pins, groups, and functions.

This patch was created based on the Rev.0.51 datasheet.

Signed-off-by: Phong Hoang <phong.hoang.wz@renesas.com>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Thanh Quan <thanh.quan.xn@renesas.com>
Signed-off-by: CongDang <cong.dang.xn@renesas.com>
Signed-off-by: Kazuya Mizuguch <kazuya.mizuguchi.ks@renesas.com>
Signed-off-by: Tho Vu <tho.vu.wh@renesas.com>
[Morimoto: merged above patches into one, cleanup white space, sort modules alphabetically, fixup comments]
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87bku9ty0b.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: Initial R8A779G0 (R-Car V4H) PFC support
LUU HOAI [Fri, 1 Jul 2022 01:36:13 +0000 (01:36 +0000)] 
pinctrl: renesas: Initial R8A779G0 (R-Car V4H) PFC support

This patch adds initial pinctrl support for the R-Car V4H (R8A779G0)
SoC, including bias, drive strength and voltage control.

This patch was created based on the Rev.0.51 datasheet.

Signed-off-by: LUU HOAI <hoai.luu.ub@renesas.com>
Signed-off-by: Takeshi Kihara <takeshi.kihara.df@renesas.com>
[Morimoto: merge Kihara-san's MODSEL8 fixup patch, cleanup white space, care about reserved bits on each configs, fixup comments, etc.]
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87czepty0j.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: Add PORT_GP_CFG_13 macros
Kuninori Morimoto [Fri, 1 Jul 2022 01:36:04 +0000 (01:36 +0000)] 
pinctrl: renesas: Add PORT_GP_CFG_13 macros

Add PORT_GP_CFG_13() and PORT_GP_13() helper macros, to be used by the
r8a779g0 subdriver.

Based on a larger patch in the BSP by LUU HOAI.

Signed-off-by: LUU HOAI <hoai.luu.ub@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87edz5ty0r.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agodt-bindings: pinctrl: renesas,pfc: Document r8a779g0 support
Kuninori Morimoto [Fri, 1 Jul 2022 01:35:52 +0000 (01:35 +0000)] 
dt-bindings: pinctrl: renesas,pfc: Document r8a779g0 support

Document Pin Function Controller (PFC) support for the Renesas R-Car V4H
(R8A779G0) SoC.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87fsjlty13.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agopinctrl: renesas: Add RZ/V2M pin and gpio controller driver
Phil Edworthy [Fri, 24 Jun 2022 08:48:33 +0000 (09:48 +0100)] 
pinctrl: renesas: Add RZ/V2M pin and gpio controller driver

Add support for pin and gpio controller driver for RZ/V2M SoC.
Based on the RZ/G2L driver.

Note that the DETDO and DETMS dedicated pins are currently not
documented in the HW manual as to which pin group they are in.
HW team has since said that the output level of 1.8V I/O group 4
(for MD0-7, and debugger) is the same as the 1.8V I/O group 3.

Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Link: https://lore.kernel.org/r/20220624084833.22605-3-phil.edworthy@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agophy: qcom-qmp: clean up hex defines
Johan Hovold [Thu, 9 Jun 2022 12:03:38 +0000 (14:03 +0200)] 
phy: qcom-qmp: clean up hex defines

Use lower case hex consistently for define values.

Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20220609120338.4080-4-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: qcom-qmp: clean up define alignment
Johan Hovold [Thu, 9 Jun 2022 12:03:37 +0000 (14:03 +0200)] 
phy: qcom-qmp: clean up define alignment

Clean up the QMP defines by removing some stray white space and making
sure values are aligned.

Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20220609120338.4080-3-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: qcom-qmp: clean up v4 and v5 define order
Johan Hovold [Thu, 9 Jun 2022 12:03:36 +0000 (14:03 +0200)] 
phy: qcom-qmp: clean up v4 and v5 define order

Clean up the QMP v4 and v5 defines by moving a few entries that were out
of order.

Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20220609120338.4080-2-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agoarm64: dts: renesas: spider-cpu: Fix scif0/scif3 sort order
Geert Uytterhoeven [Mon, 4 Jul 2022 16:16:26 +0000 (18:16 +0200)] 
arm64: dts: renesas: spider-cpu: Fix scif0/scif3 sort order

The scif0 nodes were accidentally inserted after the scif3 nodes,
breaking alphabetical sort order.

Fixes: 1614c8624a48b9c9 ("arm64: dts: renesas: spider-cpu: Enable SCIF0 on second connector")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/2fe0e782351c202ed009dcd658f4bceec8f3a56d.1656951240.git.geert+renesas@glider.be
3 years agoARM: shmobile: rcar-gen2: Increase refcount for new reference
Liang He [Fri, 1 Jul 2022 12:18:04 +0000 (20:18 +0800)] 
ARM: shmobile: rcar-gen2: Increase refcount for new reference

In rcar_gen2_regulator_quirk(), for_each_matching_node_and_match() will
automatically increase and decrease the refcount.  However, we should
call of_node_get() for the new reference created in 'quirk->np'.
Besides, we also should call of_node_put() before the 'quirk' being
freed.

Signed-off-by: Liang He <windhl@126.com>
Link: https://lore.kernel.org/r/20220701121804.234223-1-windhl@126.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
3 years agophy: qcom-qmp-usb: clean up pipe clock handling
Johan Hovold [Thu, 23 Jun 2022 11:33:14 +0000 (13:33 +0200)] 
phy: qcom-qmp-usb: clean up pipe clock handling

Clean up the pipe clock handling by using dev_err_probe() to handle
probe deferral and dropping the obsolete comment that claimed that the
pipe clock was optional for some other PHY types.

Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20220623113314.29761-4-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: qcom-qmp-pcie-msm8996: drop obsolete pipe clock type check
Johan Hovold [Thu, 23 Jun 2022 11:33:13 +0000 (13:33 +0200)] 
phy: qcom-qmp-pcie-msm8996: drop obsolete pipe clock type check

Drop the obsolete pipe clock handling which was used to treat the pipe
clock as optional for types other than PCIe and USB and which is no
longer needed since splitting the PHY driver.

Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20220623113314.29761-3-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: qcom-qmp-pcie: drop obsolete pipe clock type check
Johan Hovold [Thu, 23 Jun 2022 11:33:12 +0000 (13:33 +0200)] 
phy: qcom-qmp-pcie: drop obsolete pipe clock type check

Drop the obsolete pipe clock handling which was used to treat the pipe
clock as optional for types other than PCIe and USB and which is no
longer needed since splitting the PHY driver.

Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20220623113314.29761-2-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: phy-mtk-dp: Add driver for DP phy
Markus Schneider-Pargmann [Fri, 24 Jun 2022 06:27:25 +0000 (14:27 +0800)] 
phy: phy-mtk-dp: Add driver for DP phy

This is a new driver that supports the integrated DisplayPort phy for
mediatek SoCs, especially the mt8195. The phy is integrated into the
DisplayPort controller and will be created by the mtk-dp driver. This
driver expects a struct regmap to be able to work on the same registers
as the DisplayPort controller. It sets the device data to be the struct
phy so that the DisplayPort controller can easily work with it.

The driver does not have any devicetree bindings because the datasheet
does not list the controller and the phy as distinct units.

The interaction with the controller can be covered by the configure
callback of the phy framework and its displayport parameters.

Signed-off-by: Markus Schneider-Pargmann <msp@baylibre.com>
Signed-off-by: Guillaume Ranquet <granquet@baylibre.com>
[Bo-Chen: Modify reviewers' comments.]
Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20220624062725.4095-1-rex-bc.chen@mediatek.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: cdns-dphy: Add support for DPHY TX on J721e
Rahul T R [Thu, 23 Jun 2022 12:54:33 +0000 (18:24 +0530)] 
phy: cdns-dphy: Add support for DPHY TX on J721e

Add support new compatible for dphy-tx on j721e
and implement dphy ops required.

Signed-off-by: Rahul T R <r-ravikumar@ti.com>
Reviewed-by: Pratyush Yadav <p.yadav@ti.com>
Link: https://lore.kernel.org/r/20220623125433.18467-4-r-ravikumar@ti.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: cdns-dphy: Add band config for dphy tx
Rahul T R [Thu, 23 Jun 2022 12:54:32 +0000 (18:24 +0530)] 
phy: cdns-dphy: Add band config for dphy tx

Add support for band ctrl config for dphy tx.

Signed-off-by: Rahul T R <r-ravikumar@ti.com>
Reviewed-by: Pratyush Yadav <p.yadav@ti.com>
Link: https://lore.kernel.org/r/20220623125433.18467-3-r-ravikumar@ti.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: dt-bindings: cdns,dphy: Add compatible for dphy on j721e
Rahul T R [Thu, 23 Jun 2022 12:54:31 +0000 (18:24 +0530)] 
phy: dt-bindings: cdns,dphy: Add compatible for dphy on j721e

Add compatible to support dphy tx on j721e

Signed-off-by: Rahul T R <r-ravikumar@ti.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20220623125433.18467-2-r-ravikumar@ti.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: rockchip-inno-usb2: Prevent incorrect error on probe
Peter Geis [Sat, 25 Jun 2022 21:27:11 +0000 (17:27 -0400)] 
phy: rockchip-inno-usb2: Prevent incorrect error on probe

If a phy supply is designated but isn't available at probe time, an
EPROBE_DEFER is returned. Use dev_err_probe to prevent this from
incorrectly printing during boot.

Signed-off-by: Peter Geis <pgwipeout@gmail.com>
Link: https://lore.kernel.org/r/20220625212711.558495-1-pgwipeout@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: dphy: drop unexpected word "the" in the comments
Jiang Jian [Tue, 21 Jun 2022 12:00:15 +0000 (20:00 +0800)] 
phy: dphy: drop unexpected word "the" in the comments

there is an unexpected word "the" in the comments that need to be dropped

file: ./drivers/phy/amlogic/phy-meson-axg-mipi-dphy.c
line: 139
* when in RxULPS check state, after the the logic enable the analog,
changed to
* when in RxULPS check state, after the logic enable the analog,

Signed-off-by: Jiang Jian <jiangjian@cdjrlc.com>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Link: https://lore.kernel.org/r/20220621120015.113682-1-jiangjian@cdjrlc.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: tegra: Add PCIe PIPE2UPHY support for Tegra234
Vidya Sagar [Wed, 29 Jun 2022 06:04:32 +0000 (11:34 +0530)] 
phy: tegra: Add PCIe PIPE2UPHY support for Tegra234

Synopsys DesignWare core based PCIe controllers in Tegra234 SoC
interface with Universal PHY (UPHY) module through a PIPE2UPHY (P2U)
module. For each PCIe lane of a controller, there is a P2U unit
instantiated at hardware level. This driver provides support for the
programming required for each P2U that is going to be used for a PCIe
controller.

Signed-off-by: Vidya Sagar <vidyas@nvidia.com>
Link: https://lore.kernel.org/r/20220629060435.25297-9-vidyas@nvidia.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agodt-bindings: PHY: P2U: Add support for Tegra234 P2U block
Vidya Sagar [Wed, 29 Jun 2022 06:04:25 +0000 (11:34 +0530)] 
dt-bindings: PHY: P2U: Add support for Tegra234 P2U block

Add support for Tegra234 P2U (PIPE to UPHY) module block which is a glue
module instantiated once for each PCIe lane between Synopsys DesignWare
core based PCIe IP and Universal PHY block.

Signed-off-by: Vidya Sagar <vidyas@nvidia.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220629060435.25297-2-vidyas@nvidia.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: mediatek: Add PCIe PHY driver
Jianjun Wang [Fri, 17 Jun 2022 07:02:46 +0000 (15:02 +0800)] 
phy: mediatek: Add PCIe PHY driver

Add PCIe GEN3 PHY driver support on MediaTek chipsets.

Signed-off-by: Jianjun Wang <jianjun.wang@mediatek.com>
Reviewed-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
Reviewed-by: AngeloGioachino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20220617070246.20142-3-jianjun.wang@mediatek.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agodt-bindings: phy: mediatek: Add YAML schema for PCIe PHY
Jianjun Wang [Fri, 17 Jun 2022 07:02:45 +0000 (15:02 +0800)] 
dt-bindings: phy: mediatek: Add YAML schema for PCIe PHY

Add YAML schema documentation for PCIe PHY on MediaTek chipsets.

Signed-off-by: Jianjun Wang <jianjun.wang@mediatek.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20220617070246.20142-2-jianjun.wang@mediatek.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agophy: ti: tusb1210: Don't check for write errors when powering on
Andy Shevchenko [Mon, 13 Jun 2022 16:08:48 +0000 (19:08 +0300)] 
phy: ti: tusb1210: Don't check for write errors when powering on

On some platforms, like Intel Merrifield, the writing values during power on
may timeout:

   tusb1210 dwc3.0.auto.ulpi: error -110 writing val 0x41 to reg 0x80
   phy phy-dwc3.0.auto.ulpi.0: phy poweron failed --> -110
   dwc3 dwc3.0.auto: error -ETIMEDOUT: failed to initialize core
   dwc3: probe of dwc3.0.auto failed with error -110

which effectively fails the probe of the USB controller.
Drop the check as it was before the culprit commit (see Fixes tag).

Fixes: 09a3512681b3 ("phy: ti: tusb1210: Improve ulpi_read()/_write() error checking")
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Tested-by: Ferry Toth <fntoth@gmail.com>
Link: https://lore.kernel.org/r/20220613160848.82746-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
3 years agoMerge tag 'linux-can-fixes-for-5.19-20220704' of git://git.kernel.org/pub/scm/linux...
Jakub Kicinski [Tue, 5 Jul 2022 03:21:01 +0000 (20:21 -0700)] 
Merge tag 'linux-can-fixes-for-5.19-20220704' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can

Marc Kleine-Budde says:

====================
can 2022-07-04

The 1st patch is by Oliver Hartkopp, targets the BCM CAN protocol and
converts a costly synchronize_rcu() to call_rcu() to fix a performance
regression.

Srinivas Neeli's patch for the xilinx_can driver drops the brp limit
down to 1, as only the pre-production silicon have an issue with a brp
of 1.

The next patch is by Duy Nguyen and fixes the data transmission on
R-Car V3U SoCs in the rcar_canfd driver.

Rhett Aultman's patch fixes a DMA memory leak in the gs_usb driver.

Liang He's patch removes an extra of_node_get() in the grcan driver.

The next 2 patches are by me, target the m_can driver and fix the
timestamp handling used for peripheral devices like the tcan4x5x.

Jimmy Assarsson contributes 3 patches for the kvaser_usb driver and
fixes CAN clock and bit timing related issues.

The remaining 5 patches target the mcp251xfd driver. Thomas Kopp
contributes 2 patches to improve the workaround for broken CRC when
reading the TBC register. 3 patches by me add a missing
hrtimer_cancel() during the ndo_stop() callback, and fix the reading
of the Device ID register.

* tag 'linux-can-fixes-for-5.19-20220704' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can:
  can: mcp251xfd: mcp251xfd_register_get_dev_id(): fix endianness conversion
  can: mcp251xfd: mcp251xfd_register_get_dev_id(): use correct length to read dev_id
  can: mcp251xfd: mcp251xfd_stop(): add missing hrtimer_cancel()
  can: mcp251xfd: mcp251xfd_regmap_crc_read(): update workaround broken CRC on TBC register
  can: mcp251xfd: mcp251xfd_regmap_crc_read(): improve workaround handling for mcp2517fd
  can: kvaser_usb: kvaser_usb_leaf: fix bittiming limits
  can: kvaser_usb: kvaser_usb_leaf: fix CAN clock frequency regression
  can: kvaser_usb: replace run-time checks with struct kvaser_usb_driver_info
  can: m_can: m_can_{read_fifo,echo_tx_event}(): shift timestamp to full 32 bits
  can: m_can: m_can_chip_config(): actually enable internal timestamping
  can: grcan: grcan_probe(): remove extra of_node_get()
  can: gs_usb: gs_usb_open/close(): fix memory leak
  can: rcar_canfd: Fix data transmission failed on R-Car V3U
  Revert "can: xilinx_can: Limit CANFD brp to 2"
  can: bcm: use call_rcu() instead of costly synchronize_rcu()
====================

Link: https://lore.kernel.org/r/20220704122613.1551119-1-mkl@pengutronix.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
3 years agoMerge branches 'msm-next-lumag-core', 'msm-next-lumag-dpu', 'msm-next-lumag-dp',...
Dmitry Baryshkov [Tue, 5 Jul 2022 03:01:16 +0000 (06:01 +0300)] 
Merge branches 'msm-next-lumag-core', 'msm-next-lumag-dpu', 'msm-next-lumag-dp', 'msm-next-lumag-dsi', 'msm-next-lumag-hdmi', 'msm-next-lumag-mdp5' and 'msm-next-lumag-mdp4' into msm-next-lumag

Changes in this merge:
Core:
- client utilization via fdinfo support
- fix fence rollover issue

DPU:
- constification of HW catalog
- support for using encoder as CRC source
- WB support on sc7180
- WB resolution fixes
- enable DSPP support for sc7280

DP:
- dropped custom bulk clock implementation
- made dp_bridge_mode_valid() return MODE_CLOCK_HIGH where applicable
- fix link retraining on resolution change

MDP5:
- MSM8953 perf data

HDMI:
- YAML'ification of schema
- dropped obsolete GPIO support
- misc cleanups

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm: Fix fence rollover issue
Rob Clark [Wed, 15 Jun 2022 16:24:35 +0000 (09:24 -0700)] 
drm/msm: Fix fence rollover issue

And while we are at it, let's start the fence counter close to the
rollover point so that if issues slip in, they are more obvious.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Fixes: fde5de6cb461 ("drm/msm: move fence code to it's own file")
Fixes: 5f3aee4ceb5b ("drm/msm: Handle fence rollover")
Patchwork: https://patchwork.freedesktop.org/patch/489619/
Link: https://lore.kernel.org/r/20220615162435.3011793-1-robdclark@gmail.com
[DB: fixed the conflict while applying the patch]
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm: Use div64_ul instead of do_div
Wan Jiabing [Tue, 26 Apr 2022 13:21:26 +0000 (21:21 +0800)] 
drm/msm: Use div64_ul instead of do_div

Fix following coccicheck warning:
drivers/gpu/drm/msm/msm_gpu_devfreq.c:72:1-7: WARNING: do_div() does a 64-by-32 division, please consider using div64_ul instead.

Use div64_ul instead of do_div to avoid a possible truncation.

Signed-off-by: Wan Jiabing <wanjiabing@vivo.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Acked-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Patchwork: https://patchwork.freedesktop.org/patch/483499/
Link: https://lore.kernel.org/r/20220426132126.686447-1-wanjiabing@vivo.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm: Expose client engine utilization via fdinfo
Rob Clark [Thu, 9 Jun 2022 17:42:12 +0000 (10:42 -0700)] 
drm/msm: Expose client engine utilization via fdinfo

Similar to AMD commit
874442541133 ("drm/amdgpu: Add show_fdinfo() interface"), using the
infrastructure added in previous patches, we add basic client info
and GPU engine utilisation for msm.

Example output:

# cat /proc/`pgrep glmark2`/fdinfo/6
pos: 0
flags: 02400002
mnt_id: 21
ino: 162
drm-driver: msm
drm-client-id: 7
drm-engine-gpu: 1734371319 ns
drm-cycles-gpu: 1153645024
drm-maxfreq-gpu: 800000000 Hz

See also: https://patchwork.freedesktop.org/patch/468505/

v2: Add dev-maxfreq-$engine and update drm-usage-stats.rst
v3: spelling and compiler warning

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Acked-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Patchwork: https://patchwork.freedesktop.org/patch/488906/
Link: https://lore.kernel.org/r/20220609174213.2265938-2-robdclark@gmail.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm: Add DRM_GEM_FOPS
Rob Clark [Thu, 9 Jun 2022 17:42:11 +0000 (10:42 -0700)] 
drm: Add DRM_GEM_FOPS

The DEFINE_DRM_GEM_FOPS() helper is a bit limiting if a driver wants to
provide additional file ops, like show_fdinfo().

v2: Split out DRM_GEM_FOPS instead of making DEFINE_DRM_GEM_FOPS
    varardic
v3: nits

Signed-off-by: Rob Clark <robdclark@chromium.org>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Patchwork: https://patchwork.freedesktop.org/patch/488904/
Link: https://lore.kernel.org/r/20220609174213.2265938-1-robdclark@gmail.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm: Make msm_gem_free_object() static
Rob Clark [Mon, 13 Jun 2022 20:49:10 +0000 (13:49 -0700)] 
drm/msm: Make msm_gem_free_object() static

Misc small cleanup I noticed.  Not called from another object file since
commit 3c9edd9c85f5 ("drm/msm: Introduce GEM object funcs")

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/489362/
Link: https://lore.kernel.org/r/20220613204910.2651747-1-robdclark@gmail.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agoclk: qcom: gcc-msm8960: create tsens device if there are no child nodes
Dmitry Baryshkov [Sat, 21 May 2022 15:14:36 +0000 (18:14 +0300)] 
clk: qcom: gcc-msm8960: create tsens device if there are no child nodes

Currently gcc-msm8960 driver manually creates tsens platform device
manually. It would be better to follow IPQ8064 approach, where tsens
device is defined as gcc's child device in the device tree. If nothing
else, it removes gcc's dependency on QFPROM, thus allowing clock
controller to be probed earlier.

Don't create it in case there are available child nodes (tsens) inside
the gcc's device tree node.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220521151437.1489111-4-dmitry.baryshkov@linaro.org
3 years agodt-bindings: clock: qcom,gcc-apq8064: split tsens to the child node
Dmitry Baryshkov [Sat, 21 May 2022 15:14:35 +0000 (18:14 +0300)] 
dt-bindings: clock: qcom,gcc-apq8064: split tsens to the child node

Split tsens properties to the child node of the gcc. This follows the
lead of ipq8064 (which also uses a separate node for tsens) and makes
device tree closer to other platforms, where tsens is a completely
separate device.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220521151437.1489111-3-dmitry.baryshkov@linaro.org
3 years agodt-bindings: clock: qcom,gcc-apq8064: move msm8960 compat from gcc-other.yaml
Dmitry Baryshkov [Sat, 21 May 2022 15:14:34 +0000 (18:14 +0300)] 
dt-bindings: clock: qcom,gcc-apq8064: move msm8960 compat from gcc-other.yaml

MSM8960 shares the design (and the driver) of the global clock
controller with APQ8064. Move it from clock/qcom,gcc-other.yaml to
clock/qcom,gcc-apq8064.yaml.

As the example in gcc-other.yaml was using qcom,gcc-msm8960 compat string,
change it to qcom,gcc-msm8974.

Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220521151437.1489111-2-dmitry.baryshkov@linaro.org
3 years agoarm64: dts: qcom: msm8996: Add interconnect support
Yassine Oudjana [Thu, 21 Oct 2021 13:25:23 +0000 (13:25 +0000)] 
arm64: dts: qcom: msm8996: Add interconnect support

Add interconnect providers for the multiple NoCs available on the platform,
and assign interconnects used by some blocks.

Signed-off-by: Yassine Oudjana <y.oudjana@protonmail.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20211021132329.234942-6-y.oudjana@protonmail.com
3 years agoARM: dts: imx6qdl-ts7970: Fix ngpio typo and count
Kris Bahnsen [Thu, 30 Jun 2022 21:03:27 +0000 (14:03 -0700)] 
ARM: dts: imx6qdl-ts7970: Fix ngpio typo and count

Device-tree incorrectly used "ngpio" which caused the driver to
fallback to 32 ngpios.

This platform has 62 GPIO registers.

Fixes: 9ff8e9fccef9 ("ARM: dts: TS-7970: add basic device tree")
Signed-off-by: Kris Bahnsen <kris@embeddedTS.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: ls1028a: Update SFP node to include clock
Sean Anderson [Thu, 28 Apr 2022 18:16:59 +0000 (14:16 -0400)] 
arm64: dts: ls1028a: Update SFP node to include clock

The clocks property is now mandatory. Add it to avoid warning message.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Reviewed-by: Michael Walle <michael@walle.cc>
Fixes: eba5bea8f37f ("arm64: dts: ls1028a: add efuse node")
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: Add SFP node for TA 3.0 devices
Sean Anderson [Thu, 30 Jun 2022 22:32:07 +0000 (18:32 -0400)] 
arm64: dts: Add SFP node for TA 3.0 devices

This adds an SFP node for Trust Architecture 3.0 devices.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoarm64: dts: layerscape: Add SFP node for TA 2.1 devices
Sean Anderson [Thu, 30 Jun 2022 22:32:05 +0000 (18:32 -0400)] 
arm64: dts: layerscape: Add SFP node for TA 2.1 devices

This adds an appropriate SFP node for Trust Architecture 2.1 devices.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: layerscape: Add SFP node for TA 2.1 devices
Sean Anderson [Thu, 30 Jun 2022 22:32:06 +0000 (18:32 -0400)] 
ARM: dts: layerscape: Add SFP node for TA 2.1 devices

This adds an appropriate SFP node for Trust Architecture 2.1 devices.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agosoc: fsl: guts: check return value after calling of_iomap() in fsl_guts_get_soc_uid()
Yang Yingliang [Tue, 28 Jun 2022 14:02:49 +0000 (22:02 +0800)] 
soc: fsl: guts: check return value after calling of_iomap() in fsl_guts_get_soc_uid()

of_iomap() may return NULL, so we need check the return value.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Michael Walle <michael@walle.cc>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agosoc: fsl: guts: fix return value check in fsl_guts_init()
Yang Yingliang [Tue, 28 Jun 2022 14:02:48 +0000 (22:02 +0800)] 
soc: fsl: guts: fix return value check in fsl_guts_init()

In case of error, of_iomap() returns NULL pointer not ERR_PTR().
The IS_ERR() test in the return value check should be replaced
with NULL test and return -ENOMEM as error value.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Michael Walle <michael@walle.cc>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
3 years agoARM: dts: ux500: Drop unused i2c power domain supply
Linus Walleij [Fri, 1 Jul 2022 22:53:39 +0000 (00:53 +0200)] 
ARM: dts: ux500: Drop unused i2c power domain supply

This regulator supply is replaced by the proper power
domain.

Reported-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220701225339.814962-1-linus.walleij@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
3 years agodt-bindings: display: sun4i: Fix D1 pipeline count
Samuel Holland [Sat, 2 Jul 2022 03:29:21 +0000 (22:29 -0500)] 
dt-bindings: display: sun4i: Fix D1 pipeline count

When adding the bindings for the D1 display engine, I missed the
condition for the number of pipelines. D1 has two mixers, so it
will have two pipeline references.

Fixes: ae5a5d26c15c ("dt-bindings: display: Add D1 display engine compatibles")
Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20220702032921.22433-1-samuel@sholland.org
3 years agoarm64: defconfig: Enable Allwinner built in CODECs
Mark Brown [Fri, 1 Jul 2022 11:22:13 +0000 (12:22 +0100)] 
arm64: defconfig: Enable Allwinner built in CODECs

Allwinner provide an audio CODEC as part of their SoCs which is used on a
number of designs, enable the driver as part of defconfig in order to
improve coverage of this in the various automated testing systems.

Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Samuel Holland <samuel@sholland.org>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20220701112213.1765599-1-broonie@kernel.org
3 years agoarm64: dts: allwinner: a64: orangepi-win: Fix LED node name
Samuel Holland [Sat, 2 Jul 2022 13:28:15 +0000 (08:28 -0500)] 
arm64: dts: allwinner: a64: orangepi-win: Fix LED node name

"status" does not match any pattern in the gpio-leds binding. Rename the
node to the preferred pattern. This fixes a `make dtbs_check` error.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20220702132816.46456-1-samuel@sholland.org
3 years agoclk: sunxi: Do not select the PRCM MFD
Samuel Holland [Sat, 2 Jul 2022 19:01:35 +0000 (14:01 -0500)] 
clk: sunxi: Do not select the PRCM MFD

The PRCM MFD driver is already selected by the two platforms where it is
actually used (MACH_SUN6I and MACH_SUN8I). Selecting it here builds it
unnecessarily on the rest of the Allwinner platforms.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20220702190135.51744-2-samuel@sholland.org
3 years agoclk: sunxi: Limit legacy clocks to 32-bit ARM
Samuel Holland [Sat, 2 Jul 2022 19:01:34 +0000 (14:01 -0500)] 
clk: sunxi: Limit legacy clocks to 32-bit ARM

The sunxi legacy clocks were never compatible with any 64-bit SoC,
so there is no point in building them as part of a 64-bit ARM kernel.
They make even less sense being built in to a 64-bit RISC-V kernel.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20220702190135.51744-1-samuel@sholland.org
3 years agodrm: bridge: sii8620: fix possible off-by-one
Hangyu Hua [Wed, 18 May 2022 06:58:56 +0000 (14:58 +0800)] 
drm: bridge: sii8620: fix possible off-by-one

The next call to sii8620_burst_get_tx_buf will result in off-by-one
When ctx->burst.tx_count + size == ARRAY_SIZE(ctx->burst.tx_buf). The same
thing happens in sii8620_burst_get_rx_buf.

This patch also change tx_count and tx_buf to rx_count and rx_buf in
sii8620_burst_get_rx_buf. It is unreasonable to check tx_buf's size and
use rx_buf.

Fixes: e19e9c692f81 ("drm/bridge/sii8620: add support for burst eMSC transmissions")
Signed-off-by: Hangyu Hua <hbh25y@gmail.com>
Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com>
Signed-off-by: Robert Foss <robert.foss@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20220518065856.18936-1-hbh25y@gmail.com
3 years agodrm/msm/disp/dpu1: add dspp support for sc7280
Kalyan Thota [Tue, 21 Jun 2022 09:06:26 +0000 (02:06 -0700)] 
drm/msm/disp/dpu1: add dspp support for sc7280

Add destination side post processing hw block support in sc7280.

This hwblock enablement is necessary to support color features
like CT Matix (Ex: Night Light feature)

Signed-off-by: Kalyan Thota <quic_kalyant@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/490382/
Link: https://lore.kernel.org/r/1655802387-15275-1-git-send-email-quic_kalyant@quicinc.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/mdp5: Add perf data for MDP v1.16
Vladimir Lypak [Fri, 10 Jun 2022 22:53:02 +0000 (00:53 +0200)] 
drm/msm/mdp5: Add perf data for MDP v1.16

Add the perf data for the mdp found in msm8953.

Signed-off-by: Vladimir Lypak <vladimir.lypak@gmail.com>
Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/489153/
Link: https://lore.kernel.org/r/20220610225304.267508-1-luca@z3ntu.xyz
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/mdp4: get rid of struct mdp4_platform_config
Dmitry Baryshkov [Thu, 5 May 2022 13:50:08 +0000 (16:50 +0300)] 
drm/msm/mdp4: get rid of struct mdp4_platform_config

Struct mdp4_platform_config is a relict from the DT-conversion time.
Move the max_clk field to the mdp4_kms_init(), the place where it is
used and drop the struct mdp4_platform_config and the mdp4_get_config()
function.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Patchwork: https://patchwork.freedesktop.org/patch/485050/
Link: https://lore.kernel.org/r/20220505135008.1351533-3-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/mdp4: move iommu_domain_alloc() call close to its usage
Dmitry Baryshkov [Thu, 5 May 2022 13:50:07 +0000 (16:50 +0300)] 
drm/msm/mdp4: move iommu_domain_alloc() call close to its usage

Move iommu_domain_alloc() in front of adress space/IOMMU initialization.
This allows us to drop it from struct mdp4_cfg_platform which
remained from the pre-DT days.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Patchwork: https://patchwork.freedesktop.org/patch/485049/
Link: https://lore.kernel.org/r/20220505135008.1351533-2-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/hdmi: support attaching the "next" bridge
Dmitry Baryshkov [Thu, 16 Jun 2022 08:50:57 +0000 (11:50 +0300)] 
drm/msm/hdmi: support attaching the "next" bridge

There might be a chain of bridges attached to the HDMI node
(including but not limited to the display-connector bridge). Add support
for attaching them right to the HDMI bridge chain.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Patchwork: https://patchwork.freedesktop.org/patch/489709/
Link: https://lore.kernel.org/r/20220616085057.432353-1-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/hdmi: drop empty bridge callbacks
Dmitry Baryshkov [Thu, 16 Jun 2022 08:50:54 +0000 (11:50 +0300)] 
drm/msm/hdmi: drop empty bridge callbacks

Drop empty callbacks msm_hdmi_bridge_enable() and
msm_hdmi_bridge_disable().

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Patchwork: https://patchwork.freedesktop.org/patch/489707/
Link: https://lore.kernel.org/r/20220616085054.432317-1-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/hdmi-phy: populate 8x60 HDMI PHY requirements
Dmitry Baryshkov [Thu, 9 Jun 2022 12:23:48 +0000 (15:23 +0300)] 
drm/msm/hdmi-phy: populate 8x60 HDMI PHY requirements

Declare that 8x60 HDMI PHY uses the core-vdda regulator and slave_iface
clock (this is the same config as is used by the 8960).

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/488863/
Link: https://lore.kernel.org/r/20220609122350.3157529-13-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/hdmi: reuse MSM8960's config for MSM8660
Dmitry Baryshkov [Thu, 9 Jun 2022 12:23:47 +0000 (15:23 +0300)] 
drm/msm/hdmi: reuse MSM8960's config for MSM8660

MSM8660 requires the same set of clocks and regulators as MSM8960. Reuse
MSM8960's config for the MSM8660 (8x60).

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/488864/
Link: https://lore.kernel.org/r/20220609122350.3157529-12-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/hdmi: merge platform config for 8974/8084/8994/8996
Dmitry Baryshkov [Thu, 9 Jun 2022 12:23:46 +0000 (15:23 +0300)] 
drm/msm/hdmi: merge platform config for 8974/8084/8994/8996

Since there is no more difference between the HDMI platform data
between MSM8974/APQ8084/MSM8994/MSM8996, merge these configs into a
single entry.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/488868/
Link: https://lore.kernel.org/r/20220609122350.3157529-11-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/hdmi: drop hpd_regs usage on 8x74/8084
Dmitry Baryshkov [Thu, 9 Jun 2022 12:23:45 +0000 (15:23 +0300)] 
drm/msm/hdmi: drop hpd_regs usage on 8x74/8084

The MSM HDMI driver has support for hpd_regs on 8x74/8084: supply
regulators that are to be enabled for HPD to work. Currently these
regulators contain the hpd_gdsc, which was replaced by the power-domains
support and hpd-5v/hpd-5v-en, which are not used by the chip itself.
They power up the ESD bridge.
However it is a separate device which should be represented separately
in the device tree.
None of upstreamed devices support these properties. Thus drop support
for them from the HDMI driver.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/488860/
Link: https://lore.kernel.org/r/20220609122350.3157529-10-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/hdmi: drop empty 'none' regulator lists
Dmitry Baryshkov [Thu, 9 Jun 2022 12:23:44 +0000 (15:23 +0300)] 
drm/msm/hdmi: drop empty 'none' regulator lists

Several platform configs use empty 'none' regulator arrays. They are not
necessary, as the code will use corresponding _cnt field and skip the
array completely. Drop them now.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/488861/
Link: https://lore.kernel.org/r/20220609122350.3157529-9-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
3 years agodrm/msm/hdmi: enable core-vcc/core-vdda-supply for 8996 platform
Dmitry Baryshkov [Thu, 9 Jun 2022 12:23:43 +0000 (15:23 +0300)] 
drm/msm/hdmi: enable core-vcc/core-vdda-supply for 8996 platform

DB820c makes use of core-vcc-supply and core-vdda-supply, however the
driver code doesn't support these regulators. Enable them for HDMI on
8996 platform.

Fixes: 0afbe59edd3f ("drm/msm/hdmi: Add basic HDMI support for msm8996")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Patchwork: https://patchwork.freedesktop.org/patch/488857/
Link: https://lore.kernel.org/r/20220609122350.3157529-8-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>