Home
last modified time | relevance | path

Searched full:padctl (Results 1 – 25 of 78) sorted by relevance

1234

/openbmc/linux/drivers/pinctrl/tegra/
H A Dpinctrl-tegra-xusb.c96 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 Dxusb.c53 .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 Dxusb-tegra210.c432 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 Dxusb-tegra186.c31 /* 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 Dxusb-tegra124.c220 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 Dxusb.h153 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 Dxusb-padctl.c6 #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 DMakefile14 obj-y += xusb-padctl.o
15 obj-y += ../xusb-padctl-common.o
/openbmc/u-boot/arch/arm/mach-tegra/tegra210/
H A Dxusb-padctl.c6 #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 DMakefile11 obj-y += xusb-padctl.o
12 obj-y += ../xusb-padctl-common.o
/openbmc/u-boot/arch/arm/mach-tegra/
H A Dxusb-padctl-common.c6 #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 Dxusb-padctl-common.h14 #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 Dxusb.h14 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 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 {
/openbmc/linux/arch/arm64/boot/dts/nvidia/
H A Dtegra234-p3740-0002.dtsi72 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 Dtegra234-p3768-0000.dtsi41 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 Dtegra234-p3737-0000+p3701-0000.dts47 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 Dnvidia,tegra186-dsi-padctl.yaml4 $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 Dnvidia,tegra-xudc.yaml86 nvidia,xusb-padctl:
122 - nvidia,xusb-padctl
204 nvidia,xusb-padctl = <&padctl>;
H A Dnvidia,tegra124-xusb.yaml85 nvidia,xusb-padctl:
146 - nvidia,xusb-padctl
187 nvidia,xusb-padctl = <&padctl>;
/openbmc/linux/Documentation/devicetree/bindings/phy/
H A Dnvidia,tegra186-xusb-padctl.yaml4 $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 Dnvidia,tegra194-xusb-padctl.yaml4 $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 Dnvidia,tegra124-xusb-padctl.yaml4 $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 Dfuse-tegra30.c215 .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 Dxhci-tegra.c275 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 …]

1234