/openbmc/linux/drivers/pinctrl/tegra/ |
H A D | pinctrl-tegra-xusb.c | 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 120 return padctl->soc->pins[group].name; in tegra_xusb_padctl_get_group_name() 153 static int tegra_xusb_padctl_parse_subnode(struct tegra_xusb_padctl *padctl, in tegra_xusb_padctl_parse_subnode() argument 185 err = pinctrl_utils_add_config(padctl->pinctrl, &configs, in tegra_xusb_padctl_parse_subnode() [all …]
|
/openbmc/linux/drivers/phy/tegra/ |
H A D | xusb.c | 53 .compatible = "nvidia,tegra124-xusb-padctl", 59 .compatible = "nvidia,tegra210-xusb-padctl", 65 .compatible = "nvidia,tegra186-xusb-padctl", 71 .compatible = "nvidia,tegra194-xusb-padctl", 77 .compatible = "nvidia,tegra234-xusb-padctl", 86 tegra_xusb_find_pad_node(struct tegra_xusb_padctl *padctl, const char *name) in tegra_xusb_find_pad_node() argument 90 pads = of_get_child_by_name(padctl->dev->of_node, "pads"); in tegra_xusb_find_pad_node() 160 struct tegra_xusb_padctl *padctl, in tegra_xusb_pad_init() argument 167 pad->dev.parent = padctl->dev; in tegra_xusb_pad_init() 170 pad->padctl = padctl; in tegra_xusb_pad_init() [all …]
|
H A D | xusb-tegra210.c | 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() 454 dev_dbg(lane->pad->padctl->dev, "lane = %s map to port = usb3-%d\n", in tegra210_usb3_lane_map() 463 /* must be called under padctl->lock */ 464 static int tegra210_pex_uphy_enable(struct tegra_xusb_padctl *padctl) in tegra210_pex_uphy_enable() argument 466 struct tegra_xusb_pcie_pad *pcie = to_pcie_pad(padctl->pcie); in tegra210_pex_uphy_enable() 486 value = padctl_readl(padctl, XUSB_PADCTL_UPHY_PLL_P0_CTL2); in tegra210_pex_uphy_enable() 491 padctl_writel(padctl, value, XUSB_PADCTL_UPHY_PLL_P0_CTL2); in tegra210_pex_uphy_enable() 493 value = padctl_readl(padctl, XUSB_PADCTL_UPHY_PLL_P0_CTL5); in tegra210_pex_uphy_enable() 498 padctl_writel(padctl, value, XUSB_PADCTL_UPHY_PLL_P0_CTL5); in tegra210_pex_uphy_enable() [all …]
|
H A D | xusb-tegra186.c | 31 /* XUSB PADCTL registers */ 274 /* padctl context */ 289 to_tegra186_xusb_padctl(struct tegra_xusb_padctl *padctl) in to_tegra186_xusb_padctl() argument 291 return container_of(padctl, struct tegra186_xusb_padctl, base); in to_tegra186_xusb_padctl() 331 struct tegra_xusb_padctl *padctl = lane->pad->padctl; in tegra186_utmi_enable_phy_sleepwalk() local 332 struct tegra186_xusb_padctl *priv = to_tegra186_xusb_padctl(padctl); in tegra186_utmi_enable_phy_sleepwalk() 336 mutex_lock(&padctl->lock); in tegra186_utmi_enable_phy_sleepwalk() 428 if (padctl->soc->supports_lp_cfg_en) in tegra186_utmi_enable_phy_sleepwalk() 437 if (padctl->soc->supports_lp_cfg_en) in tegra186_utmi_enable_phy_sleepwalk() 472 mutex_unlock(&padctl->lock); in tegra186_utmi_enable_phy_sleepwalk() [all …]
|
H A D | xusb-tegra124.c | 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() 242 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable() 246 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable() [all …]
|
H A D | xusb.h | 153 struct tegra_xusb_pad *(*probe)(struct tegra_xusb_padctl *padctl, 170 struct tegra_xusb_padctl *padctl; member 186 struct tegra_xusb_padctl *padctl, 278 struct tegra_xusb_padctl *padctl; member 310 tegra_xusb_find_port(struct tegra_xusb_padctl *padctl, const char *type, 329 tegra_xusb_find_usb2_port(struct tegra_xusb_padctl *padctl, 381 tegra_xusb_find_usb3_port(struct tegra_xusb_padctl *padctl, 402 void (*remove)(struct tegra_xusb_padctl *padctl); 404 int (*suspend_noirq)(struct tegra_xusb_padctl *padctl); 405 int (*resume_noirq)(struct tegra_xusb_padctl *padctl); [all …]
|
/openbmc/u-boot/arch/arm/mach-tegra/tegra124/ |
H A D | xusb-padctl.c | 6 #define pr_fmt(fmt) "tegra-xusb-padctl: " fmt 13 #include "../xusb-padctl-common.h" 108 static int tegra_xusb_padctl_enable(struct tegra_xusb_padctl *padctl) in tegra_xusb_padctl_enable() argument 112 if (padctl->enable++ > 0) in tegra_xusb_padctl_enable() 115 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 117 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 121 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 123 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 127 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 129 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() [all …]
|
H A D | Makefile | 14 obj-y += xusb-padctl.o 15 obj-y += ../xusb-padctl-common.o
|
/openbmc/u-boot/arch/arm/mach-tegra/tegra210/ |
H A D | xusb-padctl.c | 6 #define pr_fmt(fmt) "tegra-xusb-padctl: " fmt 13 #include "../xusb-padctl-common.h" 96 static int tegra_xusb_padctl_enable(struct tegra_xusb_padctl *padctl) in tegra_xusb_padctl_enable() argument 100 if (padctl->enable++ > 0) in tegra_xusb_padctl_enable() 103 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 105 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 109 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 111 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 115 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() 117 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable() [all …]
|
H A D | Makefile | 11 obj-y += xusb-padctl.o 12 obj-y += ../xusb-padctl-common.o
|
/openbmc/u-boot/arch/arm/mach-tegra/ |
H A D | xusb-padctl-common.c | 6 #define pr_fmt(fmt) "tegra-xusb-padctl: " fmt 11 #include "xusb-padctl-common.h" 52 for (i = 0; i < padctl.socdata->num_phys; i++) { in tegra_xusb_phy_get() 53 phy = &padctl.socdata->phys[i]; in tegra_xusb_phy_get() 63 tegra_xusb_padctl_find_lane(struct tegra_xusb_padctl *padctl, const char *name) in tegra_xusb_padctl_find_lane() argument 67 for (i = 0; i < padctl->socdata->num_lanes; i++) in tegra_xusb_padctl_find_lane() 68 if (strcmp(name, padctl->socdata->lanes[i].name) == 0) in tegra_xusb_padctl_find_lane() 69 return &padctl->socdata->lanes[i]; in tegra_xusb_padctl_find_lane() 75 tegra_xusb_padctl_group_parse_dt(struct tegra_xusb_padctl *padctl, in tegra_xusb_padctl_group_parse_dt() argument 115 static int tegra_xusb_padctl_find_function(struct tegra_xusb_padctl *padctl, in tegra_xusb_padctl_find_function() argument [all …]
|
H A D | xusb-padctl-common.h | 14 #include <asm/arch-tegra/xusb-padctl.h> 39 struct tegra_xusb_padctl *padctl; member 85 extern struct tegra_xusb_padctl padctl; 87 static inline u32 padctl_readl(struct tegra_xusb_padctl *padctl, in padctl_readl() argument 90 return readl(padctl->regs.start + offset); in padctl_readl() 93 static inline void padctl_writel(struct tegra_xusb_padctl *padctl, in padctl_writel() argument 96 writel(value, padctl->regs.start + offset); in padctl_writel()
|
/openbmc/linux/include/linux/phy/tegra/ |
H A D | xusb.h | 14 void tegra_xusb_padctl_put(struct tegra_xusb_padctl *padctl); 16 int tegra_xusb_padctl_usb3_save_context(struct tegra_xusb_padctl *padctl, 18 int tegra_xusb_padctl_hsic_set_idle(struct tegra_xusb_padctl *padctl, 20 int tegra_xusb_padctl_usb3_set_lfps_detect(struct tegra_xusb_padctl *padctl, 22 int tegra_xusb_padctl_set_vbus_override(struct tegra_xusb_padctl *padctl, 27 int tegra_xusb_padctl_get_usb3_companion(struct tegra_xusb_padctl *padctl, 30 int tegra_xusb_padctl_enable_phy_sleepwalk(struct tegra_xusb_padctl *padctl, struct phy *phy, 32 int tegra_xusb_padctl_disable_phy_sleepwalk(struct tegra_xusb_padctl *padctl, struct phy *phy); 33 int tegra_xusb_padctl_enable_phy_wake(struct tegra_xusb_padctl *padctl, struct phy *phy); 34 int tegra_xusb_padctl_disable_phy_wake(struct tegra_xusb_padctl *padctl, struct phy *phy); [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/pinctrl/ |
H A D | nvidia,tegra124-xusb-padctl.txt | 7 needed for USB. For the new binding, see ../phy/nvidia,tegra-xusb-padctl.txt. 22 - compatible: For Tegra124, must contain "nvidia,tegra124-xusb-padctl". 23 Otherwise, must contain '"nvidia,<chip>-xusb-padctl", 24 "nvidia-tegra124-xusb-padctl"', where <chip> is tegra132 or tegra210. 29 - padctl 88 padctl@7009f000 { 89 compatible = "nvidia,tegra124-xusb-padctl"; 92 reset-names = "padctl"; 103 phys = <&padctl 0>; 111 padctl: padctl@7009f000 {
|
/openbmc/linux/arch/arm64/boot/dts/nvidia/ |
H A D | tegra234-p3740-0002.dtsi | 72 padctl@3520000 { 168 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 169 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>; 176 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 177 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>, 178 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>, 179 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>, 180 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>, 181 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>, 182 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
|
H A D | tegra234-p3768-0000.dtsi | 41 padctl@3520000 { 119 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 120 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>; 127 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 128 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>, 129 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>, 130 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>, 131 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>;
|
H A D | tegra234-p3737-0000+p3701-0000.dts | 47 padctl@3520000 { 154 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 155 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>; 162 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 163 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>, 164 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>, 165 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>, 166 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>, 167 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>, 168 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
|
/openbmc/linux/Documentation/devicetree/bindings/display/tegra/ |
H A D | nvidia,tegra186-dsi-padctl.yaml | 4 $id: http://devicetree.org/schemas/display/tegra/nvidia,tegra186-dsi-padctl.yaml# 15 pattern: "^padctl@[0-9a-f]+$" 18 const: nvidia,tegra186-dsi-padctl 40 padctl@15880000 { 41 compatible = "nvidia,tegra186-dsi-padctl";
|
/openbmc/linux/Documentation/devicetree/bindings/usb/ |
H A D | nvidia,tegra-xudc.yaml | 86 nvidia,xusb-padctl: 122 - nvidia,xusb-padctl 204 nvidia,xusb-padctl = <&padctl>;
|
H A D | nvidia,tegra124-xusb.yaml | 85 nvidia,xusb-padctl: 146 - nvidia,xusb-padctl 187 nvidia,xusb-padctl = <&padctl>;
|
/openbmc/linux/Documentation/devicetree/bindings/phy/ |
H A D | nvidia,tegra186-xusb-padctl.yaml | 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra186-xusb-padctl.yaml# 45 const: nvidia,tegra186-xusb-padctl 58 - const: padctl 67 - const: padctl 432 padctl@3520000 { 433 compatible = "nvidia,tegra186-xusb-padctl"; 436 reg-names = "padctl", "ao"; 440 reset-names = "padctl";
|
H A D | nvidia,tegra194-xusb-padctl.yaml | 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra194-xusb-padctl.yaml# 46 - nvidia,tegra194-xusb-padctl 47 - nvidia,tegra234-xusb-padctl 56 - const: padctl 69 - const: padctl 524 padctl@3520000 { 525 compatible = "nvidia,tegra194-xusb-padctl"; 528 reg-names = "padctl", "ao"; 532 reset-names = "padctl";
|
H A D | nvidia,tegra124-xusb-padctl.yaml | 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra124-xusb-padctl.yaml# 47 - nvidia,tegra124-xusb-padctl 50 - const: nvidia,tegra132-xusb-padctl 51 - const: nvidia,tegra124-xusb-padctl 66 - const: padctl 523 padctl@7009f000 { 524 compatible = "nvidia,tegra124-xusb-padctl"; 528 reset-names = "padctl";
|
/openbmc/linux/drivers/soc/tegra/fuse/ |
H A D | fuse-tegra30.c | 215 .dev_id = "7009f000.padctl", 396 .dev_id = "7009f000.padctl", 441 .dev_id = "7009f000.padctl", 486 .dev_id = "3520000.padctl", 491 .dev_id = "3520000.padctl", 563 .dev_id = "3520000.padctl", 568 .dev_id = "3520000.padctl", 638 .dev_id = "3520000.padctl", 643 .dev_id = "3520000.padctl",
|
/openbmc/linux/drivers/usb/host/ |
H A D | xhci-tegra.c | 275 struct tegra_xusb_padctl *padctl; member 611 struct tegra_xusb_padctl *padctl = tegra->padctl; in tegra_xusb_mbox_handle() local 659 err = tegra_xusb_padctl_usb3_save_context(padctl, msg->data); in tegra_xusb_mbox_handle() 682 err = tegra_xusb_padctl_hsic_set_idle(padctl, port, in tegra_xusb_mbox_handle() 710 err = tegra_xusb_padctl_usb3_set_lfps_detect(padctl, in tegra_xusb_mbox_handle() 1363 tegra->otg_usb3_port = tegra_xusb_padctl_get_usb3_companion(tegra->padctl, in tegra_xhci_id_work() 1412 struct tegra_xusb_padctl *padctl = tegra->padctl; in is_usb3_otg_phy() local 1418 port = tegra_xusb_padctl_get_usb3_companion(padctl, i); in is_usb3_otg_phy() 1586 tegra->padctl = tegra_xusb_padctl_get(&pdev->dev); in tegra_xusb_probe() 1587 if (IS_ERR(tegra->padctl)) in tegra_xusb_probe() [all …]
|