/linux/Documentation/devicetree/bindings/pinctrl/ |
H A D | nvidia,tegra124-xusb-padctl.txt | 1 Device tree binding for NVIDIA Tegra XUSB pad controller 4 NOTE: It turns out that this binding isn't an accurate description of the XUSB 7 needed for USB. For the new binding, see ../phy/nvidia,tegra-xusb-padctl.txt. 10 The Tegra XUSB pad controller manages a set of lanes, each of which can be 14 This document defines the device-specific binding for the XUSB pad controller. 16 Refer to pinctrl-bindings.txt in this directory for generic information about 17 pin controller device tree bindings and ../phy/phy-bindings.txt for details on 21 -------------------- 22 - compatible: For Tegra124, must contain "nvidia,tegra124-xusb-padctl". 23 Otherwise, must contain '"nvidia,<chip>-xusb-padctl", [all …]
|
/linux/Documentation/devicetree/bindings/usb/ |
H A D | nvidia,tegra124-xusb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/usb/nvidia,tegra124-xusb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 exposed by the Tegra XUSB pad controller. 20 - description: NVIDIA Tegra124 21 const: nvidia,tegra124-xusb 23 - description: NVIDIA Tegra132 [all …]
|
H A D | nvidia,tegra-xudc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/usb/nvidia,tegra-xudc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra XUSB device mode controller (XUDC) 14 - Nagarjuna Kristam <nkristam@nvidia.com> 15 - JC Kuo <jckuo@nvidia.com> 16 - Thierry Reding <treding@nvidia.com> 21 - enum: 22 - nvidia,tegra210-xudc # For Tegra210 [all …]
|
H A D | nvidia,tegra186-xusb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/usb/nvidia,tegra186-xusb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 exposed by the Tegra XUSB pad controller. 18 const: nvidia,tegra186-xusb 22 - description: base and length of the xHCI host registers 23 - description: base and length of the XUSB FPCI registers [all …]
|
H A D | nvidia,tegra210-xusb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/usb/nvidia,tegra210-xusb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 exposed by the Tegra XUSB pad controller. 18 const: nvidia,tegra210-xusb 22 - description: base and length of the xHCI host registers 23 - description: base and length of the XUSB FPCI registers [all …]
|
H A D | nvidia,tegra234-xusb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/usb/nvidia,tegra234-xusb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 15 the Tegra XUSB pad controller. The xHCI controller controls up to eight 20 const: nvidia,tegra234-xusb 24 - description: xHCI host registers 25 - description: XUSB FPCI registers [all …]
|
H A D | nvidia,tegra194-xusb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/usb/nvidia,tegra194-xusb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 exposed by the Tegra XUSB pad controller. 18 const: nvidia,tegra194-xusb 22 - description: base and length of the xHCI host registers 23 - description: base and length of the XUSB FPCI registers [all …]
|
/linux/Documentation/devicetree/bindings/phy/ |
H A D | nvidia,tegra186-xusb-padctl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra186-xusb-padctl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra186 XUSB pad controller 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 The Tegra XUSB pad controller manages a set of I/O lanes (with differential 21 Some of the lanes are high-speed lanes, which can be used for PCIe, SATA or 22 super-speed USB. Other lanes are for various types of low-speed, full-speed [all …]
|
H A D | nvidia,tegra194-xusb-padctl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra194-xusb-padctl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra194 XUSB pad controller 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 The Tegra XUSB pad controller manages a set of I/O lanes (with differential 21 Some of the lanes are high-speed lanes, which can be used for PCIe, SATA or 22 super-speed USB. Other lanes are for various types of low-speed, full-speed [all …]
|
H A D | nvidia,tegra124-xusb-padctl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra124-xusb-padctl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra124 XUSB pad controller 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 The Tegra XUSB pad controller manages a set of I/O lanes (with differential 21 Some of the lanes are high-speed lanes, which can be used for PCIe, SATA or 22 super-speed USB. Other lanes are for various types of low-speed, full-speed [all …]
|
H A D | nvidia,tegra210-xusb-padctl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra210-xusb-padctl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra210 XUSB pad controller 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 The Tegra XUSB pad controller manages a set of I/O lanes (with differential 21 Some of the lanes are high-speed lanes, which can be used for PCIe, SATA or 22 super-speed USB. Other lanes are for various types of low-speed, full-speed [all …]
|
/linux/drivers/soc/tegra/fuse/ |
H A D | fuse-tegra30.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2013-2022, NVIDIA CORPORATION. All rights reserved. 11 #include <linux/nvmem-consumer.h> 12 #include <linux/nvmem-provider.h> 45 if (WARN_ON(!fuse->base)) in tegra30_fuse_read_early() 48 return readl_relaxed(fuse->base + FUSE_BEGIN + offset); in tegra30_fuse_read_early() 56 err = pm_runtime_resume_and_get(fuse->dev); in tegra30_fuse_read() 60 value = readl_relaxed(fuse->base + FUSE_BEGIN + offset); in tegra30_fuse_read() 62 pm_runtime_put(fuse->dev); in tegra30_fuse_read() 91 fuse->read_early = tegra30_fuse_read_early; in tegra30_fuse_init() [all …]
|
/linux/drivers/phy/tegra/ |
H A D | xusb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2014-2022, NVIDIA CORPORATION. All rights reserved. 13 #include <linux/phy/tegra/xusb.h> 22 #include "xusb.h" 31 if (args->args_count != 0) in tegra_xusb_pad_of_xlate() 32 return ERR_PTR(-EINVAL); in tegra_xusb_pad_of_xlate() 34 for (i = 0; i < pad->soc->num_lanes; i++) { in tegra_xusb_pad_of_xlate() 35 if (!pad->lanes[i]) in tegra_xusb_pad_of_xlate() 38 if (pad->lanes[i]->dev.of_node == args->np) { in tegra_xusb_pad_of_xlate() 39 phy = pad->lanes[i]; in tegra_xusb_pad_of_xlate() [all …]
|
H A D | xusb-tegra186.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2016-2022, NVIDIA CORPORATION. All rights reserved. 18 #include "xusb.h" 21 #define HS_CURR_LEVEL_PADX_SHIFT(x) ((x) ? (11 + (x - 1) * 6) : 0) 31 /* XUSB PADCTL registers */ 121 /* XUSB AO registers */ 274 /* padctl context */ 280 writel(value, priv->ao_regs + offset); in ao_writel() 285 return readl(priv->ao_regs + offset); in ao_readl() 289 to_tegra186_xusb_padctl(struct tegra_xusb_padctl *padctl) in to_tegra186_xusb_padctl() argument [all …]
|
H A D | xusb-tegra124.c | 1 // SPDX-License-Identifier: GPL-2.0-only 19 #include "xusb.h" 220 to_tegra124_xusb_padctl(struct tegra_xusb_padctl *padctl) in to_tegra124_xusb_padctl() argument 222 return container_of(padctl, struct tegra124_xusb_padctl, base); in to_tegra124_xusb_padctl() 225 static int tegra124_xusb_padctl_enable(struct tegra_xusb_padctl *padctl) in tegra124_xusb_padctl_enable() argument 229 mutex_lock(&padctl->lock); in tegra124_xusb_padctl_enable() 231 if (padctl->enable++ > 0) in tegra124_xusb_padctl_enable() 234 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable() 236 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable() 240 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable() [all …]
|
H A D | xusb-tegra210.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2014-2020, NVIDIA CORPORATION. All rights reserved. 24 #include "xusb.h" 27 ((x) ? (11 + ((x) - 1) * 6) : 0) 432 to_tegra210_xusb_padctl(struct tegra_xusb_padctl *padctl) in to_tegra210_xusb_padctl() argument 434 return container_of(padctl, struct tegra210_xusb_padctl, base); in to_tegra210_xusb_padctl() 451 for (map = tegra210_usb3_map; map->type; map++) { in tegra210_usb3_lane_map() 452 if (map->index == lane->index && in tegra210_usb3_lane_map() 453 strcmp(map->type, lane->pad->soc->name) == 0) { in tegra210_usb3_lane_map() 454 dev_dbg(lane->pad->padctl->dev, "lane = %s map to port = usb3-%d\n", in tegra210_usb3_lane_map() [all …]
|
/linux/arch/arm64/boot/dts/nvidia/ |
H A D | tegra234-p3768-0000+p3767.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <dt-bindings/input/linux-event-codes.h> 4 #include <dt-bindings/input/gpio-keys.h> 6 #include "tegra234-p3767.dtsi" 17 stdout-path = "serial0:115200n8"; 22 compatible = "nvidia,tegra194-hsuart"; 23 reset-names = "serial"; 28 compatible = "nvidia,tegra194-hsuart"; 29 reset-names = "serial"; 41 vcc-supply = <&vdd_1v8_sys>; [all …]
|
H A D | tegra234-p3740-0002+p3701-0008.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/linux-event-codes.h> 5 #include <dt-bindings/input/gpio-keys.h> 6 #include <dt-bindings/sound/rt5640.h> 7 #include "tegra234-p3701-0008.dtsi" 11 compatible = "nvidia,p3740-0002+p3701-0008", "nvidia,p3701-0008", "nvidia,tegra234"; 19 stdout-path = "serial0:115200n8"; 29 dai-format = "i2s"; 30 remote-endpoint = <&rt5640_ep>; [all …]
|
H A D | tegra186-p3509-0000+p3636-0001.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/linux-event-codes.h> 5 #include <dt-bindings/input/gpio-keys.h> 6 #include <dt-bindings/mfd/max77620.h> 12 compatible = "nvidia,p3509-0000+p3636-0001", "nvidia,tegra186"; 30 stdout-path = "serial0:115200n8"; 41 phy-reset-gpios = <&gpio_aon TEGRA186_AON_GPIO(AA, 6) GPIO_ACTIVE_LOW>; 42 phy-handle = <&phy>; 43 phy-mode = "rgmii-id"; [all …]
|
H A D | tegra132.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include <dt-bindings/clock/tegra124-car.h> 3 #include <dt-bindings/gpio/tegra-gpio.h> 4 #include <dt-bindings/memory/tegra124-mc.h> 5 #include <dt-bindings/pinctrl/pinctrl-tegra.h> 6 #include <dt-bindings/pinctrl/pinctrl-tegra-xusb.h> 7 #include <dt-bindings/interrupt-controller/arm-gic.h> 8 #include <dt-bindings/thermal/tegra124-soctherm.h> 9 #include <dt-bindings/soc/tegra-pmc.h> 11 #include "tegra132-peripherals-opp.dtsi" [all …]
|
H A D | tegra210-p3450-0000.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/gpio-keys.h> 5 #include <dt-bindings/input/linux-event-codes.h> 6 #include <dt-bindings/mfd/max77620.h> 12 compatible = "nvidia,p3450-0000", "nvidia,tegra210"; 22 stdout-path = "serial0:115200n8"; 33 hvddio-pex-supply = <&vdd_1v8>; 34 dvddio-pex-supply = <&vdd_pex_1v05>; 35 vddio-pex-ctl-supply = <&vdd_1v8>; [all …]
|
/linux/drivers/usb/host/ |
H A D | xhci-tegra.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (c) 2014-2020, NVIDIA CORPORATION. All rights reserved. 11 #include <linux/dma-mapping.h> 20 #include <linux/phy/tegra/xusb.h> 275 struct tegra_xusb_padctl *padctl; member 321 return readl(tegra->fpci_base + offset); in fpci_readl() 327 writel(value, tegra->fpci_base + offset); in fpci_writel() 332 return readl(tegra->ipfs_base + offset); in ipfs_readl() 338 writel(value, tegra->ipfs_base + offset); in ipfs_writel() 343 return readl(tegra->bar2_base + offset); in bar2_readl() [all …]
|
/linux/drivers/pinctrl/tegra/ |
H A D | pinctrl-tegra-xusb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 20 #include <dt-bindings/pinctrl/pinctrl-tegra-xusb.h> 23 #include "../pinctrl-utils.h" 96 static inline void padctl_writel(struct tegra_xusb_padctl *padctl, u32 value, in padctl_writel() argument 99 writel(value, padctl->regs + offset); in padctl_writel() 102 static inline u32 padctl_readl(struct tegra_xusb_padctl *padctl, in padctl_readl() argument 105 return readl(padctl->regs + offset); in padctl_readl() 110 struct tegra_xusb_padctl *padctl = pinctrl_dev_get_drvdata(pinctrl); in tegra_xusb_padctl_get_groups_count() local 112 return padctl->soc->num_pins; in tegra_xusb_padctl_get_groups_count() 118 struct tegra_xusb_padctl *padctl = pinctrl_dev_get_drvdata(pinctrl); in tegra_xusb_padctl_get_group_name() local [all …]
|
/linux/arch/arm/boot/dts/nvidia/ |
H A D | tegra124-nyan.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include <dt-bindings/input/input.h> 3 #include <dt-bindings/thermal/thermal.h> 14 stdout-path = "serial0:115200n8"; 20 * missing a unit-address. However, the bootloader on these Chromebook 22 * Adding the unit-address causes the bootloader to create a /memory 34 /delete-node/ memory@80000000; 40 vdd-supply = <&vdd_3v3_hdmi>; 41 pll-supply = <&vdd_hdmi_pll>; 42 hdmi-supply = <&vdd_5v0_hdmi>; [all …]
|
H A D | tegra124-venice2.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/input.h> 18 stdout-path = "serial0:115200n8"; 29 vdd-supply = <&vdd_3v3_hdmi>; 30 pll-supply = <&vdd_hdmi_pll>; 31 hdmi-supply = <&vdd_5v0_hdmi>; 33 nvidia,ddc-i2c-bus = <&hdmi_ddc>; 34 nvidia,hpd-gpio = 41 avdd-io-hdmi-dp-supply = <&vdd_1v05_run>; [all …]
|