Symbol: ulpi
drivers/phy/qualcomm/phy-qcom-usb-hs.c
105
return ulpi_write(uphy->ulpi, addr, ULPI_MISC_A_VBUSVLDEXT);
drivers/phy/qualcomm/phy-qcom-usb-hs.c
111
struct ulpi *ulpi = uphy->ulpi;
drivers/phy/qualcomm/phy-qcom-usb-hs.c
145
ret = ulpi_write(ulpi, ULPI_EXT_VENDOR_SPECIFIC + seq->addr,
drivers/phy/qualcomm/phy-qcom-usb-hs.c
202
static int qcom_usb_hs_phy_probe(struct ulpi *ulpi)
drivers/phy/qualcomm/phy-qcom-usb-hs.c
212
uphy = devm_kzalloc(&ulpi->dev, sizeof(*uphy), GFP_KERNEL);
drivers/phy/qualcomm/phy-qcom-usb-hs.c
215
ulpi_set_drvdata(ulpi, uphy);
drivers/phy/qualcomm/phy-qcom-usb-hs.c
216
uphy->ulpi = ulpi;
drivers/phy/qualcomm/phy-qcom-usb-hs.c
218
size = of_property_count_u8_elems(ulpi->dev.of_node, "qcom,init-seq");
drivers/phy/qualcomm/phy-qcom-usb-hs.c
221
uphy->init_seq = devm_kmalloc_array(&ulpi->dev, (size / 2) + 1,
drivers/phy/qualcomm/phy-qcom-usb-hs.c
225
ret = of_property_read_u8_array(ulpi->dev.of_node, "qcom,init-seq",
drivers/phy/qualcomm/phy-qcom-usb-hs.c
232
uphy->ref_clk = clk = devm_clk_get(&ulpi->dev, "ref");
drivers/phy/qualcomm/phy-qcom-usb-hs.c
236
uphy->sleep_clk = clk = devm_clk_get(&ulpi->dev, "sleep");
drivers/phy/qualcomm/phy-qcom-usb-hs.c
240
uphy->v1p8 = reg = devm_regulator_get(&ulpi->dev, "v1p8");
drivers/phy/qualcomm/phy-qcom-usb-hs.c
244
uphy->v3p3 = reg = devm_regulator_get(&ulpi->dev, "v3p3");
drivers/phy/qualcomm/phy-qcom-usb-hs.c
248
uphy->reset = reset = devm_reset_control_get(&ulpi->dev, "por");
drivers/phy/qualcomm/phy-qcom-usb-hs.c
255
uphy->phy = devm_phy_create(&ulpi->dev, ulpi->dev.of_node,
drivers/phy/qualcomm/phy-qcom-usb-hs.c
260
uphy->vbus_edev = extcon_get_edev_by_phandle(&ulpi->dev, 0);
drivers/phy/qualcomm/phy-qcom-usb-hs.c
270
p = devm_of_phy_provider_register(&ulpi->dev, of_phy_simple_xlate);
drivers/phy/qualcomm/phy-qcom-usb-hs.c
30
struct ulpi *ulpi;
drivers/phy/qualcomm/phy-qcom-usb-hs.c
64
ret = ulpi_write(uphy->ulpi, ULPI_USB_INT_EN_RISE, val);
drivers/phy/qualcomm/phy-qcom-usb-hs.c
67
ret = ulpi_write(uphy->ulpi, ULPI_USB_INT_EN_FALL, val);
drivers/phy/qualcomm/phy-qcom-usb-hs.c
81
ret = ulpi_write(uphy->ulpi, ULPI_SET(ULPI_PWR_CLK_MNG_REG),
drivers/phy/qualcomm/phy-qcom-usb-hs.c
85
ret = ulpi_write(uphy->ulpi, addr, ULPI_MISC_A_VBUSVLDEXTSEL);
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
104
static int qcom_usb_hsic_phy_probe(struct ulpi *ulpi)
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
110
uphy = devm_kzalloc(&ulpi->dev, sizeof(*uphy), GFP_KERNEL);
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
113
ulpi_set_drvdata(ulpi, uphy);
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
115
uphy->ulpi = ulpi;
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
116
uphy->pctl = devm_pinctrl_get(&ulpi->dev);
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
120
uphy->phy_clk = clk = devm_clk_get(&ulpi->dev, "phy");
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
124
uphy->cal_clk = clk = devm_clk_get(&ulpi->dev, "cal");
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
128
uphy->cal_sleep_clk = clk = devm_clk_get(&ulpi->dev, "cal_sleep");
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
132
uphy->phy = devm_phy_create(&ulpi->dev, ulpi->dev.of_node,
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
138
p = devm_of_phy_provider_register(&ulpi->dev, of_phy_simple_xlate);
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
18
struct ulpi *ulpi;
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
29
struct ulpi *ulpi = uphy->ulpi;
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
46
ret = ulpi_write(ulpi, ULPI_HSIC_IO_CAL, 0xff);
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
51
ret = ulpi_write(ulpi, ULPI_HSIC_CFG, 0xa8);
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
67
ret = ulpi_write(ulpi, ULPI_SET(ULPI_HSIC_CFG), 0x01);
drivers/phy/qualcomm/phy-qcom-usb-hsic.c
72
ret = ulpi_write(ulpi, ULPI_CLR(ULPI_IFC_CTRL),
drivers/phy/tegra/xusb-tegra124.c
1736
.ulpi = {
drivers/phy/tegra/xusb-tegra124.c
672
TEGRA124_LANE("ulpi-0", 0x004, 12, 0x1, ulpi),
drivers/phy/tegra/xusb-tegra124.c
679
struct tegra_xusb_ulpi_lane *ulpi;
drivers/phy/tegra/xusb-tegra124.c
682
ulpi = kzalloc_obj(*ulpi);
drivers/phy/tegra/xusb-tegra124.c
683
if (!ulpi)
drivers/phy/tegra/xusb-tegra124.c
686
INIT_LIST_HEAD(&ulpi->base.list);
drivers/phy/tegra/xusb-tegra124.c
687
ulpi->base.soc = &pad->soc->lanes[index];
drivers/phy/tegra/xusb-tegra124.c
688
ulpi->base.index = index;
drivers/phy/tegra/xusb-tegra124.c
689
ulpi->base.pad = pad;
drivers/phy/tegra/xusb-tegra124.c
690
ulpi->base.np = np;
drivers/phy/tegra/xusb-tegra124.c
692
err = tegra_xusb_lane_parse_dt(&ulpi->base, np);
drivers/phy/tegra/xusb-tegra124.c
694
kfree(ulpi);
drivers/phy/tegra/xusb-tegra124.c
698
return &ulpi->base;
drivers/phy/tegra/xusb-tegra124.c
703
struct tegra_xusb_ulpi_lane *ulpi = to_ulpi_lane(lane);
drivers/phy/tegra/xusb-tegra124.c
705
kfree(ulpi);
drivers/phy/tegra/xusb-tegra124.c
750
struct tegra_xusb_ulpi_pad *ulpi;
drivers/phy/tegra/xusb-tegra124.c
754
ulpi = kzalloc_obj(*ulpi);
drivers/phy/tegra/xusb-tegra124.c
755
if (!ulpi)
drivers/phy/tegra/xusb-tegra124.c
758
pad = &ulpi->base;
drivers/phy/tegra/xusb-tegra124.c
764
kfree(ulpi);
drivers/phy/tegra/xusb-tegra124.c
784
struct tegra_xusb_ulpi_pad *ulpi = to_ulpi_pad(pad);
drivers/phy/tegra/xusb-tegra124.c
786
kfree(ulpi);
drivers/phy/tegra/xusb.c
1122
for (i = 0; i < padctl->soc->ports.ulpi.count; i++) {
drivers/phy/tegra/xusb.c
295
padctl->ulpi = pad;
drivers/phy/tegra/xusb.c
845
static int tegra_xusb_ulpi_port_parse_dt(struct tegra_xusb_ulpi_port *ulpi)
drivers/phy/tegra/xusb.c
847
struct tegra_xusb_port *port = &ulpi->base;
drivers/phy/tegra/xusb.c
850
ulpi->internal = of_property_read_bool(np, "nvidia,internal");
drivers/phy/tegra/xusb.c
858
struct tegra_xusb_ulpi_port *ulpi;
drivers/phy/tegra/xusb.c
866
ulpi = kzalloc_obj(*ulpi);
drivers/phy/tegra/xusb.c
867
if (!ulpi) {
drivers/phy/tegra/xusb.c
872
err = tegra_xusb_port_init(&ulpi->base, padctl, np, "ulpi", index);
drivers/phy/tegra/xusb.c
876
ulpi->base.ops = padctl->soc->ports.ulpi.ops;
drivers/phy/tegra/xusb.c
878
ulpi->base.lane = ulpi->base.ops->map(&ulpi->base);
drivers/phy/tegra/xusb.c
879
if (IS_ERR(ulpi->base.lane)) {
drivers/phy/tegra/xusb.c
880
err = PTR_ERR(ulpi->base.lane);
drivers/phy/tegra/xusb.c
881
tegra_xusb_port_unregister(&ulpi->base);
drivers/phy/tegra/xusb.c
885
err = tegra_xusb_ulpi_port_parse_dt(ulpi);
drivers/phy/tegra/xusb.c
887
tegra_xusb_port_unregister(&ulpi->base);
drivers/phy/tegra/xusb.c
891
list_add_tail(&ulpi->base.list, &padctl->ports);
drivers/phy/tegra/xusb.c
900
struct tegra_xusb_ulpi_port *ulpi = to_ulpi_port(port);
drivers/phy/tegra/xusb.c
902
kfree(ulpi);
drivers/phy/tegra/xusb.h
425
} usb2, ulpi, hsic, usb3;
drivers/phy/tegra/xusb.h
450
struct tegra_xusb_pad *ulpi;
drivers/phy/ti/phy-tusb1210.c
436
struct ulpi *ulpi = to_ulpi_dev(dev);
drivers/phy/ti/phy-tusb1210.c
442
if (ulpi->id.product != TI_DEVICE_TUSB1211) {
drivers/phy/ti/phy-tusb1210.c
488
static int tusb1210_probe(struct ulpi *ulpi)
drivers/phy/ti/phy-tusb1210.c
490
struct device *dev = &ulpi->dev;
drivers/phy/ti/phy-tusb1210.c
542
tusb->phy = ulpi_phy_create(ulpi, &phy_ops);
drivers/phy/ti/phy-tusb1210.c
549
ulpi_set_drvdata(ulpi, tusb);
drivers/phy/ti/phy-tusb1210.c
557
static void tusb1210_remove(struct ulpi *ulpi)
drivers/phy/ti/phy-tusb1210.c
559
struct tusb1210 *tusb = ulpi_get_drvdata(ulpi);
drivers/phy/ti/phy-tusb1210.c
561
ulpi_phy_destroy(ulpi, tusb->phy);
drivers/phy/ti/phy-tusb1210.c
570
MODULE_DEVICE_TABLE(ulpi, tusb1210_ulpi_id);
drivers/pinctrl/tegra/pinctrl-tegra114.c
1525
FUNCTION(ulpi),
drivers/pinctrl/tegra/pinctrl-tegra124.c
1690
FUNCTION(ulpi),
drivers/pinctrl/tegra/pinctrl-tegra20.c
1956
FUNCTION(ulpi),
drivers/pinctrl/tegra/pinctrl-tegra30.c
2086
FUNCTION(ulpi),
drivers/usb/chipidea/ci.h
254
struct ulpi *ulpi;
drivers/usb/chipidea/ci_hdrc_imx.c
193
data->ulpi = 1;
drivers/usb/chipidea/ci_hdrc_imx.h
23
unsigned int ulpi:1; /* connected to an ULPI phy */
drivers/usb/chipidea/ulpi.c
79
ci->ulpi = ulpi_register_interface(ci->dev, &ci->ulpi_ops);
drivers/usb/chipidea/ulpi.c
80
if (IS_ERR(ci->ulpi))
drivers/usb/chipidea/ulpi.c
83
return PTR_ERR_OR_ZERO(ci->ulpi);
drivers/usb/chipidea/ulpi.c
88
if (ci->ulpi) {
drivers/usb/chipidea/ulpi.c
89
ulpi_unregister_interface(ci->ulpi);
drivers/usb/chipidea/ulpi.c
90
ci->ulpi = NULL;
drivers/usb/chipidea/usbmisc_imx.c
344
if (data->ulpi) {
drivers/usb/chipidea/usbmisc_imx.c
374
if (data->ulpi) {
drivers/usb/common/ulpi.c
107
struct ulpi *ulpi = to_ulpi_dev(dev);
drivers/usb/common/ulpi.c
114
ulpi->id.vendor, ulpi->id.product);
drivers/usb/common/ulpi.c
179
static int ulpi_of_register(struct ulpi *ulpi)
drivers/usb/common/ulpi.c
185
parent = ulpi->dev.parent;
drivers/usb/common/ulpi.c
198
ulpi->dev.of_node = child;
drivers/usb/common/ulpi.c
203
static int ulpi_read_id(struct ulpi *ulpi)
drivers/usb/common/ulpi.c
208
ret = ulpi_write(ulpi, ULPI_SCRATCH, 0xaa);
drivers/usb/common/ulpi.c
212
ret = ulpi_read(ulpi, ULPI_SCRATCH);
drivers/usb/common/ulpi.c
219
ulpi->id.vendor = ulpi_read(ulpi, ULPI_VENDOR_ID_LOW);
drivers/usb/common/ulpi.c
220
ulpi->id.vendor |= ulpi_read(ulpi, ULPI_VENDOR_ID_HIGH) << 8;
drivers/usb/common/ulpi.c
222
ulpi->id.product = ulpi_read(ulpi, ULPI_PRODUCT_ID_LOW);
drivers/usb/common/ulpi.c
223
ulpi->id.product |= ulpi_read(ulpi, ULPI_PRODUCT_ID_HIGH) << 8;
drivers/usb/common/ulpi.c
226
if (ulpi->id.vendor == 0)
drivers/usb/common/ulpi.c
229
request_module("ulpi:v%04xp%04x", ulpi->id.vendor, ulpi->id.product);
drivers/usb/common/ulpi.c
23
int ulpi_read(struct ulpi *ulpi, u8 addr)
drivers/usb/common/ulpi.c
232
of_request_module(ulpi->dev.of_node);
drivers/usb/common/ulpi.c
238
struct ulpi *ulpi = seq->private;
drivers/usb/common/ulpi.c
241
int ret = ulpi_read(ulpi, reg); \
drivers/usb/common/ulpi.c
25
return ulpi->ops->read(ulpi->dev.parent, addr);
drivers/usb/common/ulpi.c
276
static int ulpi_register(struct device *dev, struct ulpi *ulpi)
drivers/usb/common/ulpi.c
281
ulpi->dev.parent = dev; /* needed early for ops */
drivers/usb/common/ulpi.c
282
ulpi->dev.bus = &ulpi_bus;
drivers/usb/common/ulpi.c
283
ulpi->dev.type = &ulpi_dev_type;
drivers/usb/common/ulpi.c
284
dev_set_name(&ulpi->dev, "%s.ulpi", dev_name(dev));
drivers/usb/common/ulpi.c
286
ACPI_COMPANION_SET(&ulpi->dev, ACPI_COMPANION(dev));
drivers/usb/common/ulpi.c
288
ret = ulpi_of_register(ulpi);
drivers/usb/common/ulpi.c
29
int ulpi_write(struct ulpi *ulpi, u8 addr, u8 val)
drivers/usb/common/ulpi.c
292
ret = ulpi_read_id(ulpi);
drivers/usb/common/ulpi.c
294
of_node_put(ulpi->dev.of_node);
drivers/usb/common/ulpi.c
298
ret = device_register(&ulpi->dev);
drivers/usb/common/ulpi.c
300
put_device(&ulpi->dev);
drivers/usb/common/ulpi.c
304
root = debugfs_create_dir(dev_name(&ulpi->dev), ulpi_root);
drivers/usb/common/ulpi.c
305
debugfs_create_file("regs", 0444, root, ulpi, &ulpi_regs_fops);
drivers/usb/common/ulpi.c
307
dev_dbg(&ulpi->dev, "registered ULPI PHY: vendor %04x, product %04x\n",
drivers/usb/common/ulpi.c
308
ulpi->id.vendor, ulpi->id.product);
drivers/usb/common/ulpi.c
31
return ulpi->ops->write(ulpi->dev.parent, addr, val);
drivers/usb/common/ulpi.c
321
struct ulpi *ulpi_register_interface(struct device *dev,
drivers/usb/common/ulpi.c
324
struct ulpi *ulpi;
drivers/usb/common/ulpi.c
327
ulpi = kzalloc_obj(*ulpi);
drivers/usb/common/ulpi.c
328
if (!ulpi)
drivers/usb/common/ulpi.c
331
ulpi->ops = ops;
drivers/usb/common/ulpi.c
333
ret = ulpi_register(dev, ulpi);
drivers/usb/common/ulpi.c
338
return ulpi;
drivers/usb/common/ulpi.c
349
void ulpi_unregister_interface(struct ulpi *ulpi)
drivers/usb/common/ulpi.c
351
debugfs_lookup_and_remove(dev_name(&ulpi->dev), ulpi_root);
drivers/usb/common/ulpi.c
352
device_unregister(&ulpi->dev);
drivers/usb/common/ulpi.c
40
struct ulpi *ulpi = to_ulpi_dev(dev);
drivers/usb/common/ulpi.c
47
if (ulpi->id.vendor == 0 || !drv->id_table)
drivers/usb/common/ulpi.c
51
if (id->vendor == ulpi->id.vendor &&
drivers/usb/common/ulpi.c
52
id->product == ulpi->id.product)
drivers/usb/common/ulpi.c
60
const struct ulpi *ulpi = to_ulpi_dev(dev);
drivers/usb/common/ulpi.c
68
ulpi->id.vendor, ulpi->id.product))
drivers/usb/dwc3/core.h
1233
struct ulpi *ulpi;
drivers/usb/dwc3/ulpi.c
100
if (dwc->ulpi) {
drivers/usb/dwc3/ulpi.c
101
ulpi_unregister_interface(dwc->ulpi);
drivers/usb/dwc3/ulpi.c
102
dwc->ulpi = NULL;
drivers/usb/dwc3/ulpi.c
89
dwc->ulpi = ulpi_register_interface(dwc->dev, &dwc3_ulpi_ops);
drivers/usb/dwc3/ulpi.c
90
if (IS_ERR(dwc->ulpi)) {
drivers/usb/dwc3/ulpi.c
92
return PTR_ERR(dwc->ulpi);
drivers/usb/host/xhci-tegra.c
240
} usb2, ulpi, hsic, usb3;
drivers/usb/phy/phy-tegra-usb.c
1616
tegra_phy->ulpi = phy;
drivers/usb/phy/phy-tegra-usb.c
1617
tegra_phy->ulpi->io_priv = tegra_phy->regs + ULPI_VIEWPORT;
drivers/usb/phy/phy-tegra-usb.c
826
err = usb_phy_io_write(phy->ulpi, 0x40, 0x08);
drivers/usb/phy/phy-tegra-usb.c
832
err = usb_phy_io_write(phy->ulpi, 0x80, 0x0B);
include/linux/phy/ulpi_phy.h
14
phy = phy_create(&ulpi->dev, NULL, ops);
include/linux/phy/ulpi_phy.h
18
ret = phy_create_lookup(phy, "usb2-phy", dev_name(ulpi->dev.parent));
include/linux/phy/ulpi_phy.h
28
static inline void ulpi_phy_destroy(struct ulpi *ulpi, struct phy *phy)
include/linux/phy/ulpi_phy.h
30
phy_remove_lookup(phy, "usb2-phy", dev_name(ulpi->dev.parent));
include/linux/phy/ulpi_phy.h
9
*ulpi_phy_create(struct ulpi *ulpi, const struct phy_ops *ops)
include/linux/ulpi/driver.h
23
#define to_ulpi_dev(d) container_of(d, struct ulpi, dev)
include/linux/ulpi/driver.h
25
static inline void ulpi_set_drvdata(struct ulpi *ulpi, void *data)
include/linux/ulpi/driver.h
27
dev_set_drvdata(&ulpi->dev, data);
include/linux/ulpi/driver.h
30
static inline void *ulpi_get_drvdata(struct ulpi *ulpi)
include/linux/ulpi/driver.h
32
return dev_get_drvdata(&ulpi->dev);
include/linux/ulpi/driver.h
44
int (*probe)(struct ulpi *ulpi);
include/linux/ulpi/driver.h
45
void (*remove)(struct ulpi *ulpi);
include/linux/ulpi/driver.h
62
int ulpi_read(struct ulpi *ulpi, u8 addr);
include/linux/ulpi/driver.h
63
int ulpi_write(struct ulpi *ulpi, u8 addr, u8 val);
include/linux/ulpi/interface.h
20
struct ulpi *ulpi_register_interface(struct device *, const struct ulpi_ops *);
include/linux/ulpi/interface.h
21
void ulpi_unregister_interface(struct ulpi *);
include/linux/ulpi/interface.h
7
struct ulpi;
include/linux/usb/tegra_usb_phy.h
81
struct usb_phy *ulpi;