lkml.org 
[lkml]   [2022]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 6.0 788/862] arm64: dts: uniphier: Add USB-device support for PXs3 reference board
    Date
    From: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>

    [ Upstream commit 19fee1a1096d21ab1f1e712148b5417bda2939a2 ]

    PXs3 reference board can change each USB port 0 and 1 to device mode
    with jumpers. Prepare devicetree sources for USB port 0 and 1.

    This specifies dr_mode, pinctrl, and some quirks and removes nodes for
    unused phys and vbus-supply properties.

    Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
    Link: https://lore.kernel.org/r/20220913042321.4817-8-hayashi.kunihiko@socionext.com'
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    arch/arm/boot/dts/uniphier-pinctrl.dtsi | 10 +++++
    arch/arm64/boot/dts/socionext/Makefile | 4 +-
    .../socionext/uniphier-pxs3-ref-gadget0.dts | 41 +++++++++++++++++++
    .../socionext/uniphier-pxs3-ref-gadget1.dts | 40 ++++++++++++++++++
    4 files changed, 94 insertions(+), 1 deletion(-)
    create mode 100644 arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts
    create mode 100644 arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts

    diff --git a/arch/arm/boot/dts/uniphier-pinctrl.dtsi b/arch/arm/boot/dts/uniphier-pinctrl.dtsi
    index c0fd029b37e5..f909ec2e5333 100644
    --- a/arch/arm/boot/dts/uniphier-pinctrl.dtsi
    +++ b/arch/arm/boot/dts/uniphier-pinctrl.dtsi
    @@ -196,11 +196,21 @@
    function = "usb0";
    };

    + pinctrl_usb0_device: usb0-device {
    + groups = "usb0_device";
    + function = "usb0";
    + };
    +
    pinctrl_usb1: usb1 {
    groups = "usb1";
    function = "usb1";
    };

    + pinctrl_usb1_device: usb1-device {
    + groups = "usb1_device";
    + function = "usb1";
    + };
    +
    pinctrl_usb2: usb2 {
    groups = "usb2";
    function = "usb2";
    diff --git a/arch/arm64/boot/dts/socionext/Makefile b/arch/arm64/boot/dts/socionext/Makefile
    index dda3da33614b..33989a9643ac 100644
    --- a/arch/arm64/boot/dts/socionext/Makefile
    +++ b/arch/arm64/boot/dts/socionext/Makefile
    @@ -5,4 +5,6 @@ dtb-$(CONFIG_ARCH_UNIPHIER) += \
    uniphier-ld20-akebi96.dtb \
    uniphier-ld20-global.dtb \
    uniphier-ld20-ref.dtb \
    - uniphier-pxs3-ref.dtb
    + uniphier-pxs3-ref.dtb \
    + uniphier-pxs3-ref-gadget0.dtb \
    + uniphier-pxs3-ref-gadget1.dtb
    diff --git a/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts b/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts
    new file mode 100644
    index 000000000000..7069f51bc120
    --- /dev/null
    +++ b/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts
    @@ -0,0 +1,41 @@
    +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
    +//
    +// Device Tree Source for UniPhier PXs3 Reference Board (for USB-Device #0)
    +//
    +// Copyright (C) 2021 Socionext Inc.
    +// Author: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
    +
    +/dts-v1/;
    +#include "uniphier-pxs3-ref.dts"
    +
    +/ {
    + model = "UniPhier PXs3 Reference Board (USB-Device #0)";
    +};
    +
    +/* I2C3 pinctrl is shared with USB*VBUSIN */
    +&i2c3 {
    + status = "disabled";
    +};
    +
    +&usb0 {
    + status = "okay";
    + dr_mode = "peripheral";
    + pinctrl-0 = <&pinctrl_usb0_device>;
    + snps,dis_enblslpm_quirk;
    + snps,dis_u2_susphy_quirk;
    + snps,dis_u3_susphy_quirk;
    + snps,usb2_gadget_lpm_disable;
    + phy-names = "usb2-phy", "usb3-phy";
    + phys = <&usb0_hsphy0>, <&usb0_ssphy0>;
    +};
    +
    +&usb0_hsphy0 {
    + /delete-property/ vbus-supply;
    +};
    +
    +&usb0_ssphy0 {
    + /delete-property/ vbus-supply;
    +};
    +
    +/delete-node/ &usb0_hsphy1;
    +/delete-node/ &usb0_ssphy1;
    diff --git a/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts b/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts
    new file mode 100644
    index 000000000000..a3cfa8113ffb
    --- /dev/null
    +++ b/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts
    @@ -0,0 +1,40 @@
    +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
    +//
    +// Device Tree Source for UniPhier PXs3 Reference Board (for USB-Device #1)
    +//
    +// Copyright (C) 2021 Socionext Inc.
    +// Author: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
    +
    +/dts-v1/;
    +#include "uniphier-pxs3-ref.dts"
    +
    +/ {
    + model = "UniPhier PXs3 Reference Board (USB-Device #1)";
    +};
    +
    +/* I2C3 pinctrl is shared with USB*VBUSIN */
    +&i2c3 {
    + status = "disabled";
    +};
    +
    +&usb1 {
    + status = "okay";
    + dr_mode = "peripheral";
    + pinctrl-0 = <&pinctrl_usb1_device>;
    + snps,dis_enblslpm_quirk;
    + snps,dis_u2_susphy_quirk;
    + snps,dis_u3_susphy_quirk;
    + snps,usb2_gadget_lpm_disable;
    + phy-names = "usb2-phy", "usb3-phy";
    + phys = <&usb1_hsphy0>, <&usb1_ssphy0>;
    +};
    +
    +&usb1_hsphy0 {
    + /delete-property/ vbus-supply;
    +};
    +
    +&usb1_ssphy0 {
    + /delete-property/ vbus-supply;
    +};
    +
    +/delete-node/ &usb1_hsphy1;
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-10-19 13:06    [W:5.761 / U:0.140 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site