Home
last modified time | relevance | path

Searched refs:padctl (Results 1 – 24 of 24) sorted by relevance

/Linux-v4.19/drivers/pinctrl/tegra/
Dpinctrl-tegra-xusb.c101 static inline void padctl_writel(struct tegra_xusb_padctl *padctl, u32 value, in padctl_writel() argument
104 writel(value, padctl->regs + offset); in padctl_writel()
107 static inline u32 padctl_readl(struct tegra_xusb_padctl *padctl, in padctl_readl() argument
110 return readl(padctl->regs + offset); in padctl_readl()
115 struct tegra_xusb_padctl *padctl = pinctrl_dev_get_drvdata(pinctrl); in tegra_xusb_padctl_get_groups_count() local
117 return padctl->soc->num_pins; in tegra_xusb_padctl_get_groups_count()
123 struct tegra_xusb_padctl *padctl = pinctrl_dev_get_drvdata(pinctrl); in tegra_xusb_padctl_get_group_name() local
125 return padctl->soc->pins[group].name; in tegra_xusb_padctl_get_group_name()
158 static int tegra_xusb_padctl_parse_subnode(struct tegra_xusb_padctl *padctl, in tegra_xusb_padctl_parse_subnode() argument
190 err = pinctrl_utils_add_config(padctl->pinctrl, &configs, in tegra_xusb_padctl_parse_subnode()
[all …]
/Linux-v4.19/drivers/phy/tegra/
Dxusb-tegra210.c246 to_tegra210_xusb_padctl(struct tegra_xusb_padctl *padctl) in to_tegra210_xusb_padctl() argument
248 return container_of(padctl, struct tegra210_xusb_padctl, base); in to_tegra210_xusb_padctl()
252 static int tegra210_pex_uphy_enable(struct tegra_xusb_padctl *padctl) in tegra210_pex_uphy_enable() argument
254 struct tegra_xusb_pcie_pad *pcie = to_pcie_pad(padctl->pcie); in tegra210_pex_uphy_enable()
272 value = padctl_readl(padctl, XUSB_PADCTL_UPHY_PLL_P0_CTL2); in tegra210_pex_uphy_enable()
277 padctl_writel(padctl, value, XUSB_PADCTL_UPHY_PLL_P0_CTL2); in tegra210_pex_uphy_enable()
279 value = padctl_readl(padctl, XUSB_PADCTL_UPHY_PLL_P0_CTL5); in tegra210_pex_uphy_enable()
284 padctl_writel(padctl, value, XUSB_PADCTL_UPHY_PLL_P0_CTL5); in tegra210_pex_uphy_enable()
286 value = padctl_readl(padctl, XUSB_PADCTL_UPHY_PLL_P0_CTL1); in tegra210_pex_uphy_enable()
288 padctl_writel(padctl, value, XUSB_PADCTL_UPHY_PLL_P0_CTL1); in tegra210_pex_uphy_enable()
[all …]
Dxusb.c76 tegra_xusb_find_pad_node(struct tegra_xusb_padctl *padctl, const char *name) in tegra_xusb_find_pad_node() argument
80 pads = of_get_child_by_name(padctl->dev->of_node, "pads"); in tegra_xusb_find_pad_node()
150 struct tegra_xusb_padctl *padctl, in tegra_xusb_pad_init() argument
157 pad->dev.parent = padctl->dev; in tegra_xusb_pad_init()
160 pad->padctl = padctl; in tegra_xusb_pad_init()
220 list_add_tail(&lane->list, &pad->padctl->lanes); in tegra_xusb_pad_register()
255 tegra_xusb_pad_create(struct tegra_xusb_padctl *padctl, in tegra_xusb_pad_create() argument
262 np = tegra_xusb_find_pad_node(padctl, soc->name); in tegra_xusb_pad_create()
266 pad = soc->ops->probe(padctl, soc, np); in tegra_xusb_pad_create()
269 dev_err(padctl->dev, "failed to create pad %s: %d\n", in tegra_xusb_pad_create()
[all …]
Dxusb-tegra124.c228 to_tegra124_xusb_padctl(struct tegra_xusb_padctl *padctl) in to_tegra124_xusb_padctl() argument
230 return container_of(padctl, struct tegra124_xusb_padctl, base); in to_tegra124_xusb_padctl()
233 static int tegra124_xusb_padctl_enable(struct tegra_xusb_padctl *padctl) in tegra124_xusb_padctl_enable() argument
237 mutex_lock(&padctl->lock); in tegra124_xusb_padctl_enable()
239 if (padctl->enable++ > 0) in tegra124_xusb_padctl_enable()
242 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable()
244 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable()
248 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable()
250 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable()
254 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra124_xusb_padctl_enable()
[all …]
Dxusb.h132 struct tegra_xusb_pad *(*probe)(struct tegra_xusb_padctl *padctl,
149 struct tegra_xusb_padctl *padctl; member
165 struct tegra_xusb_padctl *padctl,
244 struct tegra_xusb_padctl *padctl; member
267 tegra_xusb_find_port(struct tegra_xusb_padctl *padctl, const char *type,
284 tegra_xusb_find_usb2_port(struct tegra_xusb_padctl *padctl,
330 tegra_xusb_find_usb3_port(struct tegra_xusb_padctl *padctl,
348 void (*remove)(struct tegra_xusb_padctl *padctl);
350 int (*usb3_save_context)(struct tegra_xusb_padctl *padctl,
352 int (*hsic_set_idle)(struct tegra_xusb_padctl *padctl,
[all …]
/Linux-v4.19/include/linux/phy/tegra/
Dxusb.h21 void tegra_xusb_padctl_put(struct tegra_xusb_padctl *padctl);
23 int tegra_xusb_padctl_usb3_save_context(struct tegra_xusb_padctl *padctl,
25 int tegra_xusb_padctl_hsic_set_idle(struct tegra_xusb_padctl *padctl,
27 int tegra_xusb_padctl_usb3_set_lfps_detect(struct tegra_xusb_padctl *padctl,
/Linux-v4.19/Documentation/devicetree/bindings/pinctrl/
Dnvidia,tegra124-xusb-padctl.txt7 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 {
/Linux-v4.19/arch/arm64/boot/dts/nvidia/
Dtegra210-p2371-2180.dts22 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>,
23 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>,
24 <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>,
25 <&{/padctl@7009f000/pads/pcie/lanes/pcie-3}>;
31 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>;
Dtegra132.dtsi52 phys = <&padctl TEGRA_XUSB_PADCTL_PCIE>;
628 phys = <&padctl TEGRA_XUSB_PADCTL_SATA>;
649 padctl: padctl@7009f000 { label
650 compatible = "nvidia,tegra132-xusb-padctl",
651 "nvidia,tegra124-xusb-padctl";
654 reset-names = "padctl";
Dtegra210-p2597.dtsi1307 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>,
1308 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>,
1309 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>,
1310 <&{/padctl@7009f000/pads/usb2/lanes/usb2-3}>,
1311 <&{/padctl@7009f000/pads/pcie/lanes/pcie-6}>,
1312 <&{/padctl@7009f000/pads/pcie/lanes/pcie-5}>;
1330 phys = <&{/padctl@7009f000/pads/sata/lanes/sata-0}>;
1333 padctl@7009f000 {
Dtegra210.dtsi862 nvidia,xusb-padctl = <&padctl>;
867 padctl: padctl@7009f000 { label
868 compatible = "nvidia,tegra210-xusb-padctl";
871 reset-names = "padctl";
Dtegra186.dtsi782 padctl@15880000 {
783 compatible = "nvidia,tegra186-dsi-padctl";
Dtegra210-smaug.dts1620 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>,
1621 <&{/padctl@7009f000/pads/pcie/lanes/pcie-6}>;
1635 padctl@7009f000 {
/Linux-v4.19/Documentation/devicetree/bindings/usb/
Dnvidia,tegra124-xusb.txt41 - nvidia,xusb-padctl: phandle to the XUSB pad controller that is used to
105 nvidia,xusb-padctl = <&padctl>;
107 phys = <&{/padctl@0,7009f000/pads/usb2/lanes/usb2-1}>, /* mini-PCIe USB */
108 <&{/padctl@0,7009f000/pads/usb2/lanes/usb2-2}>, /* USB A */
109 <&{/padctl@0,7009f000/pads/pcie/lanes/pcie-0}>; /* USB A */
/Linux-v4.19/Documentation/devicetree/bindings/phy/
Dnvidia,tegra124-xusb-padctl.txt36 - Tegra124: "nvidia,tegra124-xusb-padctl"
37 - Tegra132: "nvidia,tegra132-xusb-padctl", "nvidia,tegra124-xusb-padctl"
38 - Tegra210: "nvidia,tegra210-xusb-padctl"
42 - "padctl"
224 padctl@7009f000 {
226 compatible = "nvidia,tegra124-xusb-padctl";
228 compatible = "nvidia,tegra132-xusb-padctl",
229 "nvidia,tegra124-xusb-padctl";
232 reset-names = "padctl";
363 padctl@7009f000 {
[all …]
/Linux-v4.19/drivers/usb/host/
Dxhci-tegra.c182 struct tegra_xusb_padctl *padctl; member
477 struct tegra_xusb_padctl *padctl = tegra->padctl; in tegra_xusb_mbox_handle() local
525 err = tegra_xusb_padctl_usb3_save_context(padctl, msg->data); in tegra_xusb_mbox_handle()
548 err = tegra_xusb_padctl_hsic_set_idle(padctl, port, in tegra_xusb_mbox_handle()
576 err = tegra_xusb_padctl_usb3_set_lfps_detect(padctl, in tegra_xusb_mbox_handle()
974 tegra->padctl = tegra_xusb_padctl_get(&pdev->dev); in tegra_xusb_probe()
975 if (IS_ERR(tegra->padctl)) in tegra_xusb_probe()
976 return PTR_ERR(tegra->padctl); in tegra_xusb_probe()
1232 tegra_xusb_padctl_put(tegra->padctl); in tegra_xusb_probe()
1252 tegra_xusb_padctl_put(tegra->padctl); in tegra_xusb_remove()
/Linux-v4.19/arch/arm/boot/dts/
Dtegra124-nyan.dtsi380 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>, /* 1st USB A */
381 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>, /* Internal USB */
382 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>, /* 2nd USB A */
383 <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>, /* 1st USB A */
384 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>; /* 2nd USB A */
399 padctl@7009f000 {
Dtegra124-venice2.dts904 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>, /* 1st USB A */
905 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>, /* Internal USB */
906 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>, /* 2nd USB A */
907 <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>, /* 1st USB A */
908 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>; /* 2nd USB A */
923 padctl@7009f000 {
Dtegra124-apalis-v1.2.dtsi35 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>,
36 <&{/padctl@7009f000/pads/pcie/lanes/pcie-3}>;
42 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>;
1781 phys = <&{/padctl@7009f000/pads/sata/lanes/sata-0}>;
1790 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>,
1791 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>,
1792 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>,
1793 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>,
1794 <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>;
1806 padctl@7009f000 {
Dtegra124-apalis.dtsi70 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>,
71 <&{/padctl@7009f000/pads/pcie/lanes/pcie-3}>;
77 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>;
1810 phys = <&{/padctl@7009f000/pads/sata/lanes/sata-0}>;
1819 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>,
1820 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>,
1821 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>,
1822 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>,
1823 <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>;
1835 padctl@7009f000 {
Dtegra124.dtsi681 nvidia,xusb-padctl = <&padctl>;
686 padctl: padctl@7009f000 { label
687 compatible = "nvidia,tegra124-xusb-padctl";
690 reset-names = "padctl";
Dtegra124-jetson-tk1.dts44 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>;
51 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>;
1687 phys = <&{/padctl@7009f000/pads/sata/lanes/sata-0}>;
1703 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>, /* Micro A/B */
1704 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>, /* Mini PCIe */
1705 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>, /* USB3 */
1706 <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>; /* USB3 */
1721 padctl@7009f000 {
/Linux-v4.19/Documentation/devicetree/bindings/pci/
Dnvidia,tegra20-pcie.txt456 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>;
463 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>;
550 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>,
551 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>,
552 <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>,
553 <&{/padctl@7009f000/pads/pcie/lanes/pcie-3}>;
559 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>;
/Linux-v4.19/Documentation/devicetree/bindings/display/tegra/
Dnvidia,tegra20-host1x.txt265 See ../pinctrl/nvidia,tegra124-dpaux-padctl.txt for information