Home
last modified time | relevance | path

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

12

/OK3568_Linux_fs/kernel/drivers/phy/tegra/
H A Dxusb-tegra210.c254 to_tegra210_xusb_padctl(struct tegra_xusb_padctl *padctl) in to_tegra210_xusb_padctl() argument
256 return container_of(padctl, struct tegra210_xusb_padctl, base); in to_tegra210_xusb_padctl()
260 static int tegra210_pex_uphy_enable(struct tegra_xusb_padctl *padctl) in tegra210_pex_uphy_enable() argument
262 struct tegra_xusb_pcie_pad *pcie = to_pcie_pad(padctl->pcie); in tegra210_pex_uphy_enable()
280 value = padctl_readl(padctl, XUSB_PADCTL_UPHY_PLL_P0_CTL2); in tegra210_pex_uphy_enable()
285 padctl_writel(padctl, value, XUSB_PADCTL_UPHY_PLL_P0_CTL2); in tegra210_pex_uphy_enable()
287 value = padctl_readl(padctl, XUSB_PADCTL_UPHY_PLL_P0_CTL5); in tegra210_pex_uphy_enable()
292 padctl_writel(padctl, value, XUSB_PADCTL_UPHY_PLL_P0_CTL5); in tegra210_pex_uphy_enable()
294 value = padctl_readl(padctl, XUSB_PADCTL_UPHY_PLL_P0_CTL1); in tegra210_pex_uphy_enable()
296 padctl_writel(padctl, value, XUSB_PADCTL_UPHY_PLL_P0_CTL1); in tegra210_pex_uphy_enable()
[all …]
H A Dxusb.c80 tegra_xusb_find_pad_node(struct tegra_xusb_padctl *padctl, const char *name) in tegra_xusb_find_pad_node() argument
84 pads = of_get_child_by_name(padctl->dev->of_node, "pads"); in tegra_xusb_find_pad_node()
154 struct tegra_xusb_padctl *padctl, in tegra_xusb_pad_init() argument
161 pad->dev.parent = padctl->dev; in tegra_xusb_pad_init()
164 pad->padctl = padctl; in tegra_xusb_pad_init()
224 list_add_tail(&lane->list, &pad->padctl->lanes); in tegra_xusb_pad_register()
259 tegra_xusb_pad_create(struct tegra_xusb_padctl *padctl, in tegra_xusb_pad_create() argument
266 np = tegra_xusb_find_pad_node(padctl, soc->name); in tegra_xusb_pad_create()
270 pad = soc->ops->probe(padctl, soc, np); in tegra_xusb_pad_create()
273 dev_err(padctl->dev, "failed to create pad %s: %d\n", in tegra_xusb_pad_create()
[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-tegra186.c144 to_tegra186_xusb_padctl(struct tegra_xusb_padctl *padctl) in to_tegra186_xusb_padctl() argument
146 return container_of(padctl, struct tegra186_xusb_padctl, base); in to_tegra186_xusb_padctl()
188 static void tegra186_utmi_bias_pad_power_on(struct tegra_xusb_padctl *padctl) in tegra186_utmi_bias_pad_power_on() argument
190 struct tegra186_xusb_padctl *priv = to_tegra186_xusb_padctl(padctl); in tegra186_utmi_bias_pad_power_on()
191 struct device *dev = padctl->dev; in tegra186_utmi_bias_pad_power_on()
195 mutex_lock(&padctl->lock); in tegra186_utmi_bias_pad_power_on()
198 mutex_unlock(&padctl->lock); in tegra186_utmi_bias_pad_power_on()
206 value = padctl_readl(padctl, XUSB_PADCTL_USB2_BIAS_PAD_CTL1); in tegra186_utmi_bias_pad_power_on()
211 padctl_writel(padctl, value, XUSB_PADCTL_USB2_BIAS_PAD_CTL1); in tegra186_utmi_bias_pad_power_on()
213 value = padctl_readl(padctl, XUSB_PADCTL_USB2_BIAS_PAD_CTL0); in tegra186_utmi_bias_pad_power_on()
[all …]
H A Dxusb.h138 struct tegra_xusb_pad *(*probe)(struct tegra_xusb_padctl *padctl,
155 struct tegra_xusb_padctl *padctl; member
171 struct tegra_xusb_padctl *padctl,
263 struct tegra_xusb_padctl *padctl; member
295 tegra_xusb_find_port(struct tegra_xusb_padctl *padctl, const char *type,
314 tegra_xusb_find_usb2_port(struct tegra_xusb_padctl *padctl,
367 tegra_xusb_find_usb3_port(struct tegra_xusb_padctl *padctl,
389 void (*remove)(struct tegra_xusb_padctl *padctl);
391 int (*usb3_save_context)(struct tegra_xusb_padctl *padctl,
393 int (*hsic_set_idle)(struct tegra_xusb_padctl *padctl,
[all …]
/OK3568_Linux_fs/kernel/drivers/pinctrl/tegra/
H A Dpinctrl-tegra-xusb.c93 static inline void padctl_writel(struct tegra_xusb_padctl *padctl, u32 value, in padctl_writel() argument
96 writel(value, padctl->regs + offset); in padctl_writel()
99 static inline u32 padctl_readl(struct tegra_xusb_padctl *padctl, in padctl_readl() argument
102 return readl(padctl->regs + offset); in padctl_readl()
107 struct tegra_xusb_padctl *padctl = pinctrl_dev_get_drvdata(pinctrl); in tegra_xusb_padctl_get_groups_count() local
109 return padctl->soc->num_pins; in tegra_xusb_padctl_get_groups_count()
115 struct tegra_xusb_padctl *padctl = pinctrl_dev_get_drvdata(pinctrl); in tegra_xusb_padctl_get_group_name() local
117 return padctl->soc->pins[group].name; in tegra_xusb_padctl_get_group_name()
150 static int tegra_xusb_padctl_parse_subnode(struct tegra_xusb_padctl *padctl, in tegra_xusb_padctl_parse_subnode() argument
182 err = pinctrl_utils_add_config(padctl->pinctrl, &configs, in tegra_xusb_padctl_parse_subnode()
[all …]
/OK3568_Linux_fs/u-boot/arch/arm/mach-tegra/tegra124/
H A Dxusb-padctl.c109 static int tegra_xusb_padctl_enable(struct tegra_xusb_padctl *padctl) in tegra_xusb_padctl_enable() argument
113 if (padctl->enable++ > 0) in tegra_xusb_padctl_enable()
116 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
118 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
122 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
124 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
128 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
130 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
135 static int tegra_xusb_padctl_disable(struct tegra_xusb_padctl *padctl) in tegra_xusb_padctl_disable() argument
139 if (padctl->enable == 0) { in tegra_xusb_padctl_disable()
[all …]
H A DMakefile14 obj-y += xusb-padctl.o
15 obj-y += ../xusb-padctl-common.o
/OK3568_Linux_fs/u-boot/arch/arm/mach-tegra/tegra210/
H A Dxusb-padctl.c97 static int tegra_xusb_padctl_enable(struct tegra_xusb_padctl *padctl) in tegra_xusb_padctl_enable() argument
101 if (padctl->enable++ > 0) in tegra_xusb_padctl_enable()
104 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
106 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
110 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
112 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
116 value = padctl_readl(padctl, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
118 padctl_writel(padctl, value, XUSB_PADCTL_ELPG_PROGRAM); in tegra_xusb_padctl_enable()
123 static int tegra_xusb_padctl_disable(struct tegra_xusb_padctl *padctl) in tegra_xusb_padctl_disable() argument
127 if (padctl->enable == 0) { in tegra_xusb_padctl_disable()
[all …]
H A DMakefile11 obj-y += xusb-padctl.o
12 obj-y += ../xusb-padctl-common.o
/OK3568_Linux_fs/u-boot/arch/arm/mach-tegra/
H A Dxusb-padctl-common.c53 for (i = 0; i < padctl.socdata->num_phys; i++) { in tegra_xusb_phy_get()
54 phy = &padctl.socdata->phys[i]; in tegra_xusb_phy_get()
64 tegra_xusb_padctl_find_lane(struct tegra_xusb_padctl *padctl, const char *name) in tegra_xusb_padctl_find_lane() argument
68 for (i = 0; i < padctl->socdata->num_lanes; i++) in tegra_xusb_padctl_find_lane()
69 if (strcmp(name, padctl->socdata->lanes[i].name) == 0) in tegra_xusb_padctl_find_lane()
70 return &padctl->socdata->lanes[i]; in tegra_xusb_padctl_find_lane()
76 tegra_xusb_padctl_group_parse_dt(struct tegra_xusb_padctl *padctl, in tegra_xusb_padctl_group_parse_dt() argument
116 static int tegra_xusb_padctl_find_function(struct tegra_xusb_padctl *padctl, in tegra_xusb_padctl_find_function() argument
121 for (i = 0; i < padctl->socdata->num_functions; i++) in tegra_xusb_padctl_find_function()
122 if (strcmp(name, padctl->socdata->functions[i]) == 0) in tegra_xusb_padctl_find_function()
[all …]
H A Dxusb-padctl-common.h40 struct tegra_xusb_padctl *padctl; member
86 extern struct tegra_xusb_padctl padctl;
88 static inline u32 padctl_readl(struct tegra_xusb_padctl *padctl, in padctl_readl() argument
91 return readl(padctl->regs.start + offset); in padctl_readl()
94 static inline void padctl_writel(struct tegra_xusb_padctl *padctl, in padctl_writel() argument
97 writel(value, padctl->regs.start + offset); in padctl_writel()
/OK3568_Linux_fs/kernel/include/linux/phy/tegra/
H A Dxusb.h13 void tegra_xusb_padctl_put(struct tegra_xusb_padctl *padctl);
15 int tegra_xusb_padctl_usb3_save_context(struct tegra_xusb_padctl *padctl,
17 int tegra_xusb_padctl_hsic_set_idle(struct tegra_xusb_padctl *padctl,
19 int tegra_xusb_padctl_usb3_set_lfps_detect(struct tegra_xusb_padctl *padctl,
21 int tegra_xusb_padctl_set_vbus_override(struct tegra_xusb_padctl *padctl,
24 int tegra_xusb_padctl_get_usb3_companion(struct tegra_xusb_padctl *padctl,
/OK3568_Linux_fs/kernel/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 {
/OK3568_Linux_fs/kernel/arch/arm64/boot/dts/nvidia/
H A 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}>;
H A Dtegra194-p2972-0000.dts54 padctl@3520000 {
110 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
111 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>,
112 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>,
113 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-3}>;
H A Dtegra210-p3450-0000.dts41 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>,
42 <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>,
43 <&{/padctl@7009f000/pads/pcie/lanes/pcie-3}>,
44 <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>;
51 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>;
450 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>,
451 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>,
452 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>,
453 <&{/padctl@7009f000/pads/pcie/lanes/pcie-6}>;
468 padctl@7009f000 {
H A Dtegra194-p3509-0000+p3668-0000.dts49 padctl@3520000 {
97 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
98 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>,
99 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
H A Dtegra186-p2771-0000.dts105 padctl@3520000 {
194 phys = <&{/padctl@3520000/pads/usb2/lanes/usb2-0}>,
195 <&{/padctl@3520000/pads/usb2/lanes/usb2-1}>,
196 <&{/padctl@3520000/pads/usb3/lanes/usb3-0}>;
/OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/phy/
H A 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"
39 - Tegra186: "nvidia,tegra186-xusb-padctl"
40 - Tegra194: "nvidia,tegra194-xusb-padctl"
44 - "padctl"
269 padctl@7009f000 {
271 compatible = "nvidia,tegra124-xusb-padctl";
273 compatible = "nvidia,tegra132-xusb-padctl",
274 "nvidia,tegra124-xusb-padctl";
[all …]
/OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/usb/
H A Dnvidia,tegra124-xusb.txt42 - nvidia,xusb-padctl: phandle to the XUSB pad controller that is used to
117 nvidia,xusb-padctl = <&padctl>;
119 phys = <&{/padctl@0,7009f000/pads/usb2/lanes/usb2-1}>, /* mini-PCIe USB */
120 <&{/padctl@0,7009f000/pads/usb2/lanes/usb2-2}>, /* USB A */
121 <&{/padctl@0,7009f000/pads/pcie/lanes/pcie-0}>; /* USB A */
/OK3568_Linux_fs/kernel/drivers/usb/host/
H A Dxhci-tegra.c235 struct tegra_xusb_padctl *padctl; member
522 struct tegra_xusb_padctl *padctl = tegra->padctl; in tegra_xusb_mbox_handle() local
570 err = tegra_xusb_padctl_usb3_save_context(padctl, msg->data); in tegra_xusb_mbox_handle()
593 err = tegra_xusb_padctl_hsic_set_idle(padctl, port, in tegra_xusb_mbox_handle()
621 err = tegra_xusb_padctl_usb3_set_lfps_detect(padctl, in tegra_xusb_mbox_handle()
1247 tegra->padctl, in tegra_xhci_id_notify()
1351 tegra->padctl = tegra_xusb_padctl_get(&pdev->dev); in tegra_xusb_probe()
1352 if (IS_ERR(tegra->padctl)) in tegra_xusb_probe()
1353 return PTR_ERR(tegra->padctl); in tegra_xusb_probe()
1644 tegra_xusb_padctl_put(tegra->padctl); in tegra_xusb_probe()
[all …]
/OK3568_Linux_fs/kernel/arch/arm/boot/dts/
H A Dtegra124-nyan.dtsi398 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>, /* 1st USB A */
399 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>, /* Internal USB */
400 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>, /* 2nd USB A */
401 <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>, /* 1st USB A */
402 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>; /* 2nd USB A */
417 padctl@7009f000 {
/OK3568_Linux_fs/u-boot/arch/arm/dts/
H A Dtegra124.dtsi53 phys = <&padctl TEGRA_XUSB_PADCTL_PCIE>;
624 phys = <&padctl TEGRA_XUSB_PADCTL_SATA>;
674 nvidia,xusb-padctl = <&padctl>;
679 padctl: padctl@7009f000 { label
680 compatible = "nvidia,tegra124-xusb-padctl";
683 reset-names = "padctl";
/OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/pci/
H A Dnvidia,tegra20-pcie.txt452 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>;
459 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>;
546 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>,
547 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>,
548 <&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>,
549 <&{/padctl@7009f000/pads/pcie/lanes/pcie-3}>;
555 phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-4}>;

12