Home
last modified time | relevance | path

Searched refs:phy (Results 1 – 200 of 1281) sorted by relevance

1234567

/linux-4.1.27/include/linux/phy/
Dphy.h23 struct phy;
34 int (*init)(struct phy *phy);
35 int (*exit)(struct phy *phy);
36 int (*power_on)(struct phy *phy);
37 int (*power_off)(struct phy *phy);
60 struct phy { struct
82 struct phy * (*of_xlate)(struct device *dev,
90 struct phy *phy; member
93 #define to_phy(a) (container_of((a), struct phy, dev))
101 static inline void phy_set_drvdata(struct phy *phy, void *data) in phy_set_drvdata() argument
[all …]
Dphy-qcom-ufs.h27 int ufs_qcom_phy_enable_ref_clk(struct phy *phy);
34 void ufs_qcom_phy_disable_ref_clk(struct phy *phy);
41 void ufs_qcom_phy_enable_dev_ref_clk(struct phy *phy);
48 void ufs_qcom_phy_disable_dev_ref_clk(struct phy *phy);
50 int ufs_qcom_phy_enable_iface_clk(struct phy *phy);
51 void ufs_qcom_phy_disable_iface_clk(struct phy *phy);
52 int ufs_qcom_phy_start_serdes(struct phy *phy);
53 int ufs_qcom_phy_set_tx_lane_enable(struct phy *phy, u32 tx_lanes);
54 int ufs_qcom_phy_calibrate_phy(struct phy *phy, bool is_rate_B);
55 int ufs_qcom_phy_is_pcs_ready(struct phy *phy);
[all …]
/linux-4.1.27/drivers/phy/
Dphy-core.c34 struct phy *phy = *(struct phy **)res; in devm_phy_release() local
36 phy_put(phy); in devm_phy_release()
48 struct phy *phy = *(struct phy **)res; in devm_phy_consume() local
50 phy_destroy(phy); in devm_phy_consume()
55 struct phy **phy = res; in devm_phy_match() local
57 return *phy == match_data; in devm_phy_match()
68 int phy_create_lookup(struct phy *phy, const char *con_id, const char *dev_id) in phy_create_lookup() argument
72 if (!phy || !dev_id || !con_id) in phy_create_lookup()
81 pl->phy = phy; in phy_create_lookup()
100 void phy_remove_lookup(struct phy *phy, const char *con_id, const char *dev_id) in phy_remove_lookup() argument
[all …]
Dphy-ti-pipe3.c123 static struct pipe3_dpll_params *ti_pipe3_get_dpll_params(struct ti_pipe3 *phy) in ti_pipe3_get_dpll_params() argument
126 struct pipe3_dpll_map *dpll_map = phy->dpll_map; in ti_pipe3_get_dpll_params()
128 rate = clk_get_rate(phy->sys_clk); in ti_pipe3_get_dpll_params()
135 dev_err(phy->dev, "No DPLL configuration for %lu Hz SYS CLK\n", rate); in ti_pipe3_get_dpll_params()
140 static int ti_pipe3_power_off(struct phy *x) in ti_pipe3_power_off()
142 struct ti_pipe3 *phy = phy_get_drvdata(x); in ti_pipe3_power_off() local
144 omap_control_phy_power(phy->control_dev, 0); in ti_pipe3_power_off()
149 static int ti_pipe3_power_on(struct phy *x) in ti_pipe3_power_on()
151 struct ti_pipe3 *phy = phy_get_drvdata(x); in ti_pipe3_power_on() local
153 omap_control_phy_power(phy->control_dev, 1); in ti_pipe3_power_on()
[all …]
Dphy-omap-usb2.c49 struct omap_usb *phy; in omap_usb2_set_comparator() local
55 phy = phy_to_omapusb(x); in omap_usb2_set_comparator()
56 phy->comparator = comparator; in omap_usb2_set_comparator()
63 struct omap_usb *phy = phy_to_omapusb(otg->usb_phy); in omap_usb_set_vbus() local
65 if (!phy->comparator) in omap_usb_set_vbus()
68 return phy->comparator->set_vbus(phy->comparator, enabled); in omap_usb_set_vbus()
73 struct omap_usb *phy = phy_to_omapusb(otg->usb_phy); in omap_usb_start_srp() local
75 if (!phy->comparator) in omap_usb_start_srp()
78 return phy->comparator->start_srp(phy->comparator); in omap_usb_start_srp()
100 static int omap_usb_power_off(struct phy *x) in omap_usb_power_off()
[all …]
Dphy-dm816x-usb.c57 struct usb_phy phy; member
81 static int dm816x_usb_phy_init(struct phy *x) in dm816x_usb_phy_init()
83 struct dm816x_usb_phy *phy = phy_get_drvdata(x); in dm816x_usb_phy_init() local
87 if (clk_get_rate(phy->refclk) != 24000000) in dm816x_usb_phy_init()
88 dev_warn(phy->dev, "nonstandard phy refclk\n"); in dm816x_usb_phy_init()
91 error = regmap_update_bits(phy->syscon, phy->usb_ctrl, in dm816x_usb_phy_init()
96 regmap_read(phy->syscon, phy->usb_ctrl, &val); in dm816x_usb_phy_init()
98 dev_info(phy->dev, in dm816x_usb_phy_init()
107 regmap_read(phy->syscon, phy->usbphy_ctrl, &val); in dm816x_usb_phy_init()
111 regmap_write(phy->syscon, phy->usbphy_ctrl, val); in dm816x_usb_phy_init()
[all …]
Dphy-sun9i-usb.c45 struct phy *phy; member
53 static void sun9i_usb_phy_passby(struct sun9i_usb_phy *phy, int enable) in sun9i_usb_phy_passby() argument
61 if (phy->type == USBPHY_INTERFACE_MODE_HSIC) in sun9i_usb_phy_passby()
65 reg_value = readl(phy->pmu); in sun9i_usb_phy_passby()
72 writel(reg_value, phy->pmu); in sun9i_usb_phy_passby()
75 static int sun9i_usb_phy_init(struct phy *_phy) in sun9i_usb_phy_init()
77 struct sun9i_usb_phy *phy = phy_get_drvdata(_phy); in sun9i_usb_phy_init() local
80 ret = clk_prepare_enable(phy->clk); in sun9i_usb_phy_init()
84 ret = clk_prepare_enable(phy->hsic_clk); in sun9i_usb_phy_init()
88 ret = reset_control_deassert(phy->reset); in sun9i_usb_phy_init()
[all …]
DMakefile5 obj-$(CONFIG_GENERIC_PHY) += phy-core.o
6 obj-$(CONFIG_PHY_BERLIN_USB) += phy-berlin-usb.o
7 obj-$(CONFIG_PHY_BERLIN_SATA) += phy-berlin-sata.o
8 obj-$(CONFIG_PHY_DM816X_USB) += phy-dm816x-usb.o
9 obj-$(CONFIG_ARMADA375_USBCLUSTER_PHY) += phy-armada375-usb2.o
10 obj-$(CONFIG_BCM_KONA_USB2_PHY) += phy-bcm-kona-usb2.o
11 obj-$(CONFIG_PHY_EXYNOS_DP_VIDEO) += phy-exynos-dp-video.o
12 obj-$(CONFIG_PHY_EXYNOS_MIPI_VIDEO) += phy-exynos-mipi-video.o
13 obj-$(CONFIG_PHY_MVEBU_SATA) += phy-mvebu-sata.o
14 obj-$(CONFIG_PHY_MIPHY28LP) += phy-miphy28lp.o
[all …]
Dphy-sun4i-usb.c70 struct phy *phy; member
79 #define to_sun4i_usb_phy_data(phy) \ argument
80 container_of((phy), struct sun4i_usb_phy_data, phys[(phy)->index])
82 static void sun4i_usb_phy_write(struct sun4i_usb_phy *phy, u32 addr, u32 data, in sun4i_usb_phy_write() argument
85 struct sun4i_usb_phy_data *phy_data = to_sun4i_usb_phy_data(phy); in sun4i_usb_phy_write()
86 u32 temp, usbc_bit = BIT(phy->index * 2); in sun4i_usb_phy_write()
124 static void sun4i_usb_phy_passby(struct sun4i_usb_phy *phy, int enable) in sun4i_usb_phy_passby() argument
128 if (!phy->pmu) in sun4i_usb_phy_passby()
134 reg_value = readl(phy->pmu); in sun4i_usb_phy_passby()
141 writel(reg_value, phy->pmu); in sun4i_usb_phy_passby()
[all …]
Dphy-qcom-ipq806x-sata.c61 static int qcom_ipq806x_sata_phy_init(struct phy *generic_phy) in qcom_ipq806x_sata_phy_init()
63 struct qcom_ipq806x_sata_phy *phy = phy_get_drvdata(generic_phy); in qcom_ipq806x_sata_phy_init() local
67 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM3); in qcom_ipq806x_sata_phy_init()
69 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM3); in qcom_ipq806x_sata_phy_init()
71 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM0) & in qcom_ipq806x_sata_phy_init()
76 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM0); in qcom_ipq806x_sata_phy_init()
78 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM1) & in qcom_ipq806x_sata_phy_init()
85 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM1); in qcom_ipq806x_sata_phy_init()
87 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM2) & in qcom_ipq806x_sata_phy_init()
90 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM2); in qcom_ipq806x_sata_phy_init()
[all …]
Dphy-qcom-ufs.c25 static int __ufs_qcom_phy_init_vreg(struct phy *, struct ufs_qcom_phy_vreg *,
27 static int ufs_qcom_phy_init_vreg(struct phy *, struct ufs_qcom_phy_vreg *,
78 struct phy *ufs_qcom_phy_generic_probe(struct platform_device *pdev, in ufs_qcom_phy_generic_probe()
85 struct phy *generic_phy = NULL; in ufs_qcom_phy_generic_probe()
123 struct ufs_qcom_phy *get_ufs_qcom_phy(struct phy *generic_phy) in get_ufs_qcom_phy()
157 static int __ufs_qcom_phy_clk_get(struct phy *phy, in __ufs_qcom_phy_clk_get() argument
162 struct ufs_qcom_phy *ufs_qcom_phy = get_ufs_qcom_phy(phy); in __ufs_qcom_phy_clk_get()
178 int ufs_qcom_phy_clk_get(struct phy *phy, in ufs_qcom_phy_clk_get() argument
181 return __ufs_qcom_phy_clk_get(phy, name, clk_out, true); in ufs_qcom_phy_clk_get()
185 ufs_qcom_phy_init_clks(struct phy *generic_phy, in ufs_qcom_phy_init_clks()
[all …]
Dphy-bcm-kona-usb2.c42 static void bcm_kona_usb_phy_power(struct bcm_kona_usb *phy, int on) in bcm_kona_usb_phy_power() argument
46 val = readl(phy->regs + OTGCTL); in bcm_kona_usb_phy_power()
55 writel(val, phy->regs + OTGCTL); in bcm_kona_usb_phy_power()
58 static int bcm_kona_usb_phy_init(struct phy *gphy) in bcm_kona_usb_phy_init()
60 struct bcm_kona_usb *phy = phy_get_drvdata(gphy); in bcm_kona_usb_phy_init() local
64 val = readl(phy->regs + P1CTL); in bcm_kona_usb_phy_init()
67 writel(val, phy->regs + P1CTL); in bcm_kona_usb_phy_init()
68 writel(val & ~P1CTL_SOFT_RESET, phy->regs + P1CTL); in bcm_kona_usb_phy_init()
71 writel(val | P1CTL_SOFT_RESET, phy->regs + P1CTL); in bcm_kona_usb_phy_init()
76 static int bcm_kona_usb_phy_power_on(struct phy *gphy) in bcm_kona_usb_phy_power_on()
[all …]
Dphy-qcom-ufs-qmp-20nm.c64 static int ufs_qcom_phy_qmp_20nm_init(struct phy *generic_phy) in ufs_qcom_phy_qmp_20nm_init()
66 struct ufs_qcom_phy_qmp_20nm *phy = phy_get_drvdata(generic_phy); in ufs_qcom_phy_qmp_20nm_init() local
67 struct ufs_qcom_phy *phy_common = &phy->common_cfg; in ufs_qcom_phy_qmp_20nm_init()
91 void ufs_qcom_phy_qmp_20nm_power_control(struct ufs_qcom_phy *phy, bool val) in ufs_qcom_phy_qmp_20nm_power_control() argument
93 bool hibern8_exit_after_pwr_collapse = phy->quirks & in ufs_qcom_phy_qmp_20nm_power_control()
97 writel_relaxed(0x1, phy->mmio + UFS_PHY_POWER_DOWN_CONTROL); in ufs_qcom_phy_qmp_20nm_power_control()
110 writel_relaxed(0x0A, phy->mmio + in ufs_qcom_phy_qmp_20nm_power_control()
112 writel_relaxed(0x08, phy->mmio + in ufs_qcom_phy_qmp_20nm_power_control()
122 writel_relaxed(0x0A, phy->mmio + in ufs_qcom_phy_qmp_20nm_power_control()
124 writel_relaxed(0x02, phy->mmio + in ufs_qcom_phy_qmp_20nm_power_control()
[all …]
Dphy-rockchip-usb.c43 struct phy *phy; member
46 static int rockchip_usb_phy_power(struct rockchip_usb_phy *phy, in rockchip_usb_phy_power() argument
49 return regmap_write(phy->reg_base, phy->reg_offset, in rockchip_usb_phy_power()
53 static int rockchip_usb_phy_power_off(struct phy *_phy) in rockchip_usb_phy_power_off()
55 struct rockchip_usb_phy *phy = phy_get_drvdata(_phy); in rockchip_usb_phy_power_off() local
59 ret = rockchip_usb_phy_power(phy, 1); in rockchip_usb_phy_power_off()
63 clk_disable_unprepare(phy->clk); in rockchip_usb_phy_power_off()
68 static int rockchip_usb_phy_power_on(struct phy *_phy) in rockchip_usb_phy_power_on()
70 struct rockchip_usb_phy *phy = phy_get_drvdata(_phy); in rockchip_usb_phy_power_on() local
73 ret = clk_prepare_enable(phy->clk); in rockchip_usb_phy_power_on()
[all …]
Dphy-qcom-apq8064-sata.c97 static int qcom_apq8064_sata_phy_init(struct phy *generic_phy) in qcom_apq8064_sata_phy_init()
99 struct qcom_apq8064_sata_phy *phy = phy_get_drvdata(generic_phy); in qcom_apq8064_sata_phy_init() local
100 void __iomem *base = phy->mmio; in qcom_apq8064_sata_phy_init()
150 dev_err(phy->dev, "poll timeout UNIPHY_PLL_STATUS\n"); in qcom_apq8064_sata_phy_init()
157 dev_err(phy->dev, "poll timeout SATA_PHY_TX_IMCAL_STAT\n"); in qcom_apq8064_sata_phy_init()
164 dev_err(phy->dev, "poll timeout SATA_PHY_RX_IMCAL_STAT\n"); in qcom_apq8064_sata_phy_init()
192 static int qcom_apq8064_sata_phy_exit(struct phy *generic_phy) in qcom_apq8064_sata_phy_exit()
194 struct qcom_apq8064_sata_phy *phy = phy_get_drvdata(generic_phy); in qcom_apq8064_sata_phy_exit() local
195 void __iomem *base = phy->mmio; in qcom_apq8064_sata_phy_exit()
215 struct qcom_apq8064_sata_phy *phy; in qcom_apq8064_sata_phy_probe() local
[all …]
Dphy-rcar-gen2.c49 struct phy *phy; member
71 static int rcar_gen2_phy_init(struct phy *p) in rcar_gen2_phy_init()
73 struct rcar_gen2_phy *phy = phy_get_drvdata(p); in rcar_gen2_phy_init() local
74 struct rcar_gen2_channel *channel = phy->channel; in rcar_gen2_phy_init()
85 if (cmpxchg(&channel->selected_phy, -1, phy->number) != -1) in rcar_gen2_phy_init()
93 ugctrl2 |= phy->select_value; in rcar_gen2_phy_init()
99 static int rcar_gen2_phy_exit(struct phy *p) in rcar_gen2_phy_exit()
101 struct rcar_gen2_phy *phy = phy_get_drvdata(p); in rcar_gen2_phy_exit() local
102 struct rcar_gen2_channel *channel = phy->channel; in rcar_gen2_phy_exit()
111 static int rcar_gen2_phy_power_on(struct phy *p) in rcar_gen2_phy_power_on()
[all …]
Dphy-qcom-ufs-qmp-14nm.c45 static int ufs_qcom_phy_qmp_14nm_init(struct phy *generic_phy) in ufs_qcom_phy_qmp_14nm_init()
47 struct ufs_qcom_phy_qmp_14nm *phy = phy_get_drvdata(generic_phy); in ufs_qcom_phy_qmp_14nm_init() local
48 struct ufs_qcom_phy *phy_common = &phy->common_cfg; in ufs_qcom_phy_qmp_14nm_init()
74 void ufs_qcom_phy_qmp_14nm_power_control(struct ufs_qcom_phy *phy, bool val) in ufs_qcom_phy_qmp_14nm_power_control() argument
76 writel_relaxed(val ? 0x1 : 0x0, phy->mmio + UFS_PHY_POWER_DOWN_CONTROL); in ufs_qcom_phy_qmp_14nm_power_control()
85 void ufs_qcom_phy_qmp_14nm_set_tx_lane_enable(struct ufs_qcom_phy *phy, u32 val) in ufs_qcom_phy_qmp_14nm_set_tx_lane_enable() argument
93 static inline void ufs_qcom_phy_qmp_14nm_start_serdes(struct ufs_qcom_phy *phy) in ufs_qcom_phy_qmp_14nm_start_serdes() argument
97 tmp = readl_relaxed(phy->mmio + UFS_PHY_PHY_START); in ufs_qcom_phy_qmp_14nm_start_serdes()
100 writel_relaxed(tmp, phy->mmio + UFS_PHY_PHY_START); in ufs_qcom_phy_qmp_14nm_start_serdes()
137 struct phy *generic_phy; in ufs_qcom_phy_qmp_14nm_probe()
[all …]
Dphy-armada375-usb2.c29 struct phy *phy; member
35 static int armada375_usb_phy_init(struct phy *phy) in armada375_usb_phy_init() argument
40 cluster_phy = phy_get_drvdata(phy); in armada375_usb_phy_init()
67 static struct phy *armada375_usb_phy_xlate(struct device *dev, in armada375_usb_phy_xlate()
103 return cluster_phy->phy; in armada375_usb_phy_xlate()
109 struct phy *phy; in armada375_usb_phy_probe() local
124 phy = devm_phy_create(dev, NULL, &armada375_usb_phy_ops); in armada375_usb_phy_probe()
125 if (IS_ERR(phy)) { in armada375_usb_phy_probe()
127 return PTR_ERR(phy); in armada375_usb_phy_probe()
130 cluster_phy->phy = phy; in armada375_usb_phy_probe()
[all …]
Dphy-stih407-usb.c37 struct phy *phy; member
55 static int stih407_usb2_init_port(struct phy *phy) in stih407_usb2_init_port() argument
58 struct stih407_usb2_picophy *phy_dev = phy_get_drvdata(phy); in stih407_usb2_init_port()
72 static int stih407_usb2_exit_port(struct phy *phy) in stih407_usb2_exit_port() argument
74 struct stih407_usb2_picophy *phy_dev = phy_get_drvdata(phy); in stih407_usb2_exit_port()
98 struct phy *phy; in stih407_usb2_picophy_probe() local
143 phy = devm_phy_create(dev, NULL, &stih407_usb2_picophy_data); in stih407_usb2_picophy_probe()
144 if (IS_ERR(phy)) { in stih407_usb2_picophy_probe()
146 return PTR_ERR(phy); in stih407_usb2_picophy_probe()
149 phy_dev->phy = phy; in stih407_usb2_picophy_probe()
[all …]
Dphy-exynos-dp-video.c33 static int exynos_dp_video_phy_power_on(struct phy *phy) in exynos_dp_video_phy_power_on() argument
35 struct exynos_dp_video_phy *state = phy_get_drvdata(phy); in exynos_dp_video_phy_power_on()
42 static int exynos_dp_video_phy_power_off(struct phy *phy) in exynos_dp_video_phy_power_off() argument
44 struct exynos_dp_video_phy *state = phy_get_drvdata(phy); in exynos_dp_video_phy_power_off()
83 struct phy *phy; in exynos_dp_video_phy_probe() local
99 phy = devm_phy_create(dev, NULL, &exynos_dp_video_phy_ops); in exynos_dp_video_phy_probe()
100 if (IS_ERR(phy)) { in exynos_dp_video_phy_probe()
102 return PTR_ERR(phy); in exynos_dp_video_phy_probe()
104 phy_set_drvdata(phy, state); in exynos_dp_video_phy_probe()
Dphy-exynos-mipi-video.c41 struct phy *phy; member
100 static int exynos_mipi_video_phy_power_on(struct phy *phy) in exynos_mipi_video_phy_power_on() argument
102 struct video_phy_desc *phy_desc = phy_get_drvdata(phy); in exynos_mipi_video_phy_power_on()
108 static int exynos_mipi_video_phy_power_off(struct phy *phy) in exynos_mipi_video_phy_power_off() argument
110 struct video_phy_desc *phy_desc = phy_get_drvdata(phy); in exynos_mipi_video_phy_power_off()
116 static struct phy *exynos_mipi_video_phy_xlate(struct device *dev, in exynos_mipi_video_phy_xlate()
124 return state->phys[args->args[0]].phy; in exynos_mipi_video_phy_xlate()
161 struct phy *phy = devm_phy_create(dev, NULL, in exynos_mipi_video_phy_probe() local
163 if (IS_ERR(phy)) { in exynos_mipi_video_phy_probe()
165 return PTR_ERR(phy); in exynos_mipi_video_phy_probe()
[all …]
Dphy-qcom-ufs-i.h134 int (*calibrate_phy)(struct ufs_qcom_phy *phy, bool is_rate_B);
135 void (*start_serdes)(struct ufs_qcom_phy *phy);
136 int (*is_physical_coding_sublayer_ready)(struct ufs_qcom_phy *phy);
137 void (*set_tx_lane_enable)(struct ufs_qcom_phy *phy, u32 val);
138 void (*power_control)(struct ufs_qcom_phy *phy, bool val);
141 struct ufs_qcom_phy *get_ufs_qcom_phy(struct phy *generic_phy);
142 int ufs_qcom_phy_power_on(struct phy *generic_phy);
143 int ufs_qcom_phy_power_off(struct phy *generic_phy);
144 int ufs_qcom_phy_exit(struct phy *generic_phy);
145 int ufs_qcom_phy_init_clks(struct phy *generic_phy,
[all …]
Dphy-stih41x-usb.c71 static int stih41x_usb_phy_init(struct phy *phy) in stih41x_usb_phy_init() argument
73 struct stih41x_usb_phy *phy_dev = phy_get_drvdata(phy); in stih41x_usb_phy_init()
79 static int stih41x_usb_phy_power_on(struct phy *phy) in stih41x_usb_phy_power_on() argument
81 struct stih41x_usb_phy *phy_dev = phy_get_drvdata(phy); in stih41x_usb_phy_power_on()
98 static int stih41x_usb_phy_power_off(struct phy *phy) in stih41x_usb_phy_power_off() argument
100 struct stih41x_usb_phy *phy_dev = phy_get_drvdata(phy); in stih41x_usb_phy_power_off()
131 struct phy *phy; in stih41x_usb_phy_probe() local
155 phy = devm_phy_create(dev, NULL, &stih41x_usb_phy_ops); in stih41x_usb_phy_probe()
157 if (IS_ERR(phy)) { in stih41x_usb_phy_probe()
159 return PTR_ERR(phy); in stih41x_usb_phy_probe()
[all …]
Dphy-mvebu-sata.c32 static int phy_mvebu_sata_power_on(struct phy *phy) in phy_mvebu_sata_power_on() argument
34 struct priv *priv = phy_get_drvdata(phy); in phy_mvebu_sata_power_on()
55 static int phy_mvebu_sata_power_off(struct phy *phy) in phy_mvebu_sata_power_off() argument
57 struct priv *priv = phy_get_drvdata(phy); in phy_mvebu_sata_power_off()
89 struct phy *phy; in phy_mvebu_sata_probe() local
104 phy = devm_phy_create(&pdev->dev, NULL, &phy_mvebu_sata_ops); in phy_mvebu_sata_probe()
105 if (IS_ERR(phy)) in phy_mvebu_sata_probe()
106 return PTR_ERR(phy); in phy_mvebu_sata_probe()
108 phy_set_drvdata(phy, priv); in phy_mvebu_sata_probe()
116 phy_mvebu_sata_power_off(phy); in phy_mvebu_sata_probe()
Dphy-berlin-sata.c54 struct phy *phy; member
83 static int phy_berlin_sata_power_on(struct phy *phy) in phy_berlin_sata_power_on() argument
85 struct phy_berlin_desc *desc = phy_get_drvdata(phy); in phy_berlin_sata_power_on()
86 struct phy_berlin_priv *priv = dev_get_drvdata(phy->dev.parent); in phy_berlin_sata_power_on()
136 static int phy_berlin_sata_power_off(struct phy *phy) in phy_berlin_sata_power_off() argument
138 struct phy_berlin_desc *desc = phy_get_drvdata(phy); in phy_berlin_sata_power_off()
139 struct phy_berlin_priv *priv = dev_get_drvdata(phy->dev.parent); in phy_berlin_sata_power_off()
159 static struct phy *phy_berlin_sata_phy_xlate(struct device *dev, in phy_berlin_sata_phy_xlate()
176 return priv->phys[i]->phy; in phy_berlin_sata_phy_xlate()
194 struct phy *phy; in phy_berlin_sata_probe() local
[all …]
Dphy-exynos5250-sata.c52 struct phy *phy; member
72 static int exynos_sata_phy_power_on(struct phy *phy) in exynos_sata_phy_power_on() argument
74 struct exynos_sata_phy *sata_phy = phy_get_drvdata(phy); in exynos_sata_phy_power_on()
81 static int exynos_sata_phy_power_off(struct phy *phy) in exynos_sata_phy_power_off() argument
83 struct exynos_sata_phy *sata_phy = phy_get_drvdata(phy); in exynos_sata_phy_power_off()
90 static int exynos_sata_phy_init(struct phy *phy) in exynos_sata_phy_init() argument
95 struct exynos_sata_phy *sata_phy = phy_get_drvdata(phy); in exynos_sata_phy_init()
100 dev_err(&sata_phy->phy->dev, "phy init failed\n"); in exynos_sata_phy_init()
152 dev_err(&sata_phy->phy->dev, in exynos_sata_phy_init()
213 sata_phy->phy = devm_phy_create(dev, NULL, &exynos_sata_phy_ops); in exynos_sata_phy_probe()
[all …]
Dphy-spear1340-miphy.c89 struct phy *phy; member
160 static int spear1340_miphy_init(struct phy *phy) in spear1340_miphy_init() argument
162 struct spear1340_miphy_priv *priv = phy_get_drvdata(phy); in spear1340_miphy_init()
173 static int spear1340_miphy_exit(struct phy *phy) in spear1340_miphy_exit() argument
175 struct spear1340_miphy_priv *priv = phy_get_drvdata(phy); in spear1340_miphy_exit()
225 static struct phy *spear1340_miphy_xlate(struct device *dev, in spear1340_miphy_xlate()
242 return priv->phy; in spear1340_miphy_xlate()
262 priv->phy = devm_phy_create(dev, NULL, &spear1340_miphy_ops); in spear1340_miphy_probe()
263 if (IS_ERR(priv->phy)) { in spear1340_miphy_probe()
265 return PTR_ERR(priv->phy); in spear1340_miphy_probe()
[all …]
Dphy-spear1310-miphy.c112 struct phy *phy; member
154 static int spear1310_miphy_init(struct phy *phy) in spear1310_miphy_init() argument
156 struct spear1310_miphy_priv *priv = phy_get_drvdata(phy); in spear1310_miphy_init()
165 static int spear1310_miphy_exit(struct phy *phy) in spear1310_miphy_exit() argument
167 struct spear1310_miphy_priv *priv = phy_get_drvdata(phy); in spear1310_miphy_exit()
188 static struct phy *spear1310_miphy_xlate(struct device *dev, in spear1310_miphy_xlate()
205 return priv->phy; in spear1310_miphy_xlate()
230 priv->phy = devm_phy_create(dev, NULL, &spear1310_miphy_ops); in spear1310_miphy_probe()
231 if (IS_ERR(priv->phy)) { in spear1310_miphy_probe()
233 return PTR_ERR(priv->phy); in spear1310_miphy_probe()
[all …]
Dphy-hix5hd2-sata.c65 static int hix5hd2_sata_phy_init(struct phy *phy) in hix5hd2_sata_phy_init() argument
67 struct hix5hd2_priv *priv = phy_get_drvdata(phy); in hix5hd2_sata_phy_init()
72 ret = of_property_read_u32_array(phy->dev.of_node, in hix5hd2_sata_phy_init()
76 dev_err(&phy->dev, "Fail read hisilicon,power-reg\n"); in hix5hd2_sata_phy_init()
142 struct phy *phy; in hix5hd2_sata_phy_probe() local
162 phy = devm_phy_create(dev, NULL, &hix5hd2_sata_phy_ops); in hix5hd2_sata_phy_probe()
163 if (IS_ERR(phy)) { in hix5hd2_sata_phy_probe()
165 return PTR_ERR(phy); in hix5hd2_sata_phy_probe()
168 phy_set_drvdata(phy, priv); in hix5hd2_sata_phy_probe()
Dphy-samsung-usb2.c22 static int samsung_usb2_phy_power_on(struct phy *phy) in samsung_usb2_phy_power_on() argument
24 struct samsung_usb2_phy_instance *inst = phy_get_drvdata(phy); in samsung_usb2_phy_power_on()
54 static int samsung_usb2_phy_power_off(struct phy *phy) in samsung_usb2_phy_power_off() argument
56 struct samsung_usb2_phy_instance *inst = phy_get_drvdata(phy); in samsung_usb2_phy_power_off()
80 static struct phy *samsung_usb2_phy_xlate(struct device *dev, in samsung_usb2_phy_xlate()
92 return drv->instances[args->args[0]].phy; in samsung_usb2_phy_xlate()
211 p->phy = devm_phy_create(dev, NULL, &samsung_usb2_phy_ops); in samsung_usb2_phy_probe()
212 if (IS_ERR(p->phy)) { in samsung_usb2_phy_probe()
215 return PTR_ERR(p->phy); in samsung_usb2_phy_probe()
220 phy_set_bus_width(p->phy, 8); in samsung_usb2_phy_probe()
[all …]
Dphy-twl4030-usb.c158 struct usb_phy phy; member
180 #define phy_to_twl(x) container_of((x), struct twl4030_usb, phy)
449 static int twl4030_phy_power_off(struct phy *phy) in twl4030_phy_power_off() argument
451 struct twl4030_usb *twl = phy_get_drvdata(phy); in twl4030_phy_power_off()
460 static int twl4030_phy_power_on(struct phy *phy) in twl4030_phy_power_on() argument
462 struct twl4030_usb *twl = phy_get_drvdata(phy); in twl4030_phy_power_on()
597 static int twl4030_phy_init(struct phy *phy) in twl4030_phy_init() argument
599 struct twl4030_usb *twl = phy_get_drvdata(phy); in twl4030_phy_init()
650 struct phy *phy; in twl4030_usb_probe() local
679 twl->phy.dev = twl->dev; in twl4030_usb_probe()
[all …]
Dphy-exynos5-usbdrd.c174 struct phy *phy; member
354 static int exynos5_usbdrd_phy_init(struct phy *phy) in exynos5_usbdrd_phy_init() argument
358 struct phy_usb_instance *inst = phy_get_drvdata(phy); in exynos5_usbdrd_phy_init()
416 static int exynos5_usbdrd_phy_exit(struct phy *phy) in exynos5_usbdrd_phy_exit() argument
420 struct phy_usb_instance *inst = phy_get_drvdata(phy); in exynos5_usbdrd_phy_exit()
450 static int exynos5_usbdrd_phy_power_on(struct phy *phy) in exynos5_usbdrd_phy_power_on() argument
453 struct phy_usb_instance *inst = phy_get_drvdata(phy); in exynos5_usbdrd_phy_power_on()
503 static int exynos5_usbdrd_phy_power_off(struct phy *phy) in exynos5_usbdrd_phy_power_off() argument
505 struct phy_usb_instance *inst = phy_get_drvdata(phy); in exynos5_usbdrd_phy_power_off()
529 static struct phy *exynos5_usbdrd_phy_xlate(struct device *dev, in exynos5_usbdrd_phy_xlate()
[all …]
Dphy-berlin-usb.c119 static int phy_berlin_usb_power_on(struct phy *phy) in phy_berlin_usb_power_on() argument
121 struct phy_berlin_usb_priv *priv = phy_get_drvdata(phy); in phy_berlin_usb_power_on()
174 struct phy *phy; in phy_berlin_usb_probe() local
192 phy = devm_phy_create(&pdev->dev, NULL, &phy_berlin_usb_ops); in phy_berlin_usb_probe()
193 if (IS_ERR(phy)) { in phy_berlin_usb_probe()
195 return PTR_ERR(phy); in phy_berlin_usb_probe()
199 phy_set_drvdata(phy, priv); in phy_berlin_usb_probe()
/linux-4.1.27/drivers/scsi/libsas/
Dsas_phy.c36 struct asd_sas_phy *phy = ev->phy; in sas_phye_loss_of_signal() local
38 clear_bit(PHYE_LOSS_OF_SIGNAL, &phy->phy_events_pending); in sas_phye_loss_of_signal()
39 phy->error = 0; in sas_phye_loss_of_signal()
40 sas_deform_port(phy, 1); in sas_phye_loss_of_signal()
46 struct asd_sas_phy *phy = ev->phy; in sas_phye_oob_done() local
48 clear_bit(PHYE_OOB_DONE, &phy->phy_events_pending); in sas_phye_oob_done()
49 phy->error = 0; in sas_phye_oob_done()
55 struct asd_sas_phy *phy = ev->phy; in sas_phye_oob_error() local
56 struct sas_ha_struct *sas_ha = phy->ha; in sas_phye_oob_error()
57 struct asd_sas_port *port = phy->port; in sas_phye_oob_error()
[all …]
Dsas_port.c31 static bool phy_is_wideport_member(struct asd_sas_port *port, struct asd_sas_phy *phy) in phy_is_wideport_member() argument
33 struct sas_ha_struct *sas_ha = phy->ha; in phy_is_wideport_member()
35 if (memcmp(port->attached_sas_addr, phy->attached_sas_addr, in phy_is_wideport_member()
37 memcmp(port->sas_addr, phy->sas_addr, SAS_ADDR_SIZE) != 0)) in phy_is_wideport_member()
42 static void sas_resume_port(struct asd_sas_phy *phy) in sas_resume_port() argument
45 struct asd_sas_port *port = phy->port; in sas_resume_port()
46 struct sas_ha_struct *sas_ha = phy->ha; in sas_resume_port()
50 si->dft->lldd_port_formed(phy); in sas_resume_port()
75 struct ex_phy *phy = &dev->ex_dev.ex_phy[i]; in sas_resume_port() local
77 phy->phy_change_count = -1; in sas_resume_port()
[all …]
Dsas_init.c191 static int sas_get_linkerrors(struct sas_phy *phy) in sas_get_linkerrors() argument
193 if (scsi_is_sas_phy_local(phy)) { in sas_get_linkerrors()
194 struct Scsi_Host *shost = dev_to_shost(phy->dev.parent); in sas_get_linkerrors()
196 struct asd_sas_phy *asd_phy = sas_ha->sas_phy[phy->number]; in sas_get_linkerrors()
203 return sas_smp_get_phy_events(phy); in sas_get_linkerrors()
233 static int transport_sas_phy_reset(struct sas_phy *phy, int hard_reset) in transport_sas_phy_reset() argument
242 if (scsi_is_sas_phy_local(phy)) { in transport_sas_phy_reset()
243 struct Scsi_Host *shost = dev_to_shost(phy->dev.parent); in transport_sas_phy_reset()
245 struct asd_sas_phy *asd_phy = sas_ha->sas_phy[phy->number]; in transport_sas_phy_reset()
253 struct sas_rphy *rphy = dev_to_rphy(phy->dev.parent); in transport_sas_phy_reset()
[all …]
Dsas_expander.c169 static char sas_route_char(struct domain_device *dev, struct ex_phy *phy) in sas_route_char() argument
171 switch (phy->routing_attr) { in sas_route_char()
207 struct ex_phy *phy = &ex->ex_phy[phy_id]; in sas_set_ex_phy() local
209 bool new_phy = !phy->phy; in sas_set_ex_phy()
215 phy->phy = sas_phy_alloc(&rphy->dev, phy_id); in sas_set_ex_phy()
218 BUG_ON(!phy->phy); in sas_set_ex_phy()
223 phy->phy_state = PHY_VACANT; in sas_set_ex_phy()
226 phy->phy_state = PHY_NOT_PRESENT; in sas_set_ex_phy()
229 phy->phy_state = PHY_EMPTY; /* do not know yet */ in sas_set_ex_phy()
234 dev_type = phy->attached_dev_type; in sas_set_ex_phy()
[all …]
Dsas_internal.h44 struct sas_phy *phy; member
74 void sas_deform_port(struct asd_sas_phy *phy, int gone);
88 int sas_smp_get_phy_events(struct sas_phy *phy);
90 void sas_notify_phy_event(struct asd_sas_phy *phy, enum phy_event event);
97 int sas_try_ata_reset(struct asd_sas_phy *phy);
152 struct sas_phy *phy = p->phy; in sas_phy_set_target() local
156 phy->identify.device_type = SAS_END_DEVICE; in sas_phy_set_target()
158 phy->identify.device_type = dev->dev_type; in sas_phy_set_target()
159 phy->identify.target_port_protocols = dev->tproto; in sas_phy_set_target()
161 phy->identify.device_type = SAS_PHY_UNUSED; in sas_phy_set_target()
[all …]
Dsas_event.c127 static void notify_port_event(struct asd_sas_phy *phy, enum port_event event) in notify_port_event() argument
129 struct sas_ha_struct *ha = phy->ha; in notify_port_event()
133 sas_queue_event(event, &phy->port_events_pending, in notify_port_event()
134 &phy->port_events[event].work, ha); in notify_port_event()
137 void sas_notify_phy_event(struct asd_sas_phy *phy, enum phy_event event) in sas_notify_phy_event() argument
139 struct sas_ha_struct *ha = phy->ha; in sas_notify_phy_event()
143 sas_queue_event(event, &phy->phy_events_pending, in sas_notify_phy_event()
144 &phy->phy_events[event].work, ha); in sas_notify_phy_event()
/linux-4.1.27/drivers/net/
Dsungem_phy.c50 static inline int __sungem_phy_read(struct mii_phy* phy, int id, int reg) in __sungem_phy_read() argument
52 return phy->mdio_read(phy->dev, id, reg); in __sungem_phy_read()
55 static inline void __sungem_phy_write(struct mii_phy* phy, int id, int reg, int val) in __sungem_phy_write() argument
57 phy->mdio_write(phy->dev, id, reg, val); in __sungem_phy_write()
60 static inline int sungem_phy_read(struct mii_phy* phy, int reg) in sungem_phy_read() argument
62 return phy->mdio_read(phy->dev, phy->mii_id, reg); in sungem_phy_read()
65 static inline void sungem_phy_write(struct mii_phy* phy, int reg, int val) in sungem_phy_write() argument
67 phy->mdio_write(phy->dev, phy->mii_id, reg, val); in sungem_phy_write()
70 static int reset_one_mii_phy(struct mii_phy* phy, int phy_id) in reset_one_mii_phy() argument
75 val = __sungem_phy_read(phy, phy_id, MII_BMCR); in reset_one_mii_phy()
[all …]
/linux-4.1.27/drivers/net/ethernet/ibm/emac/
Dphy.c34 static inline int _phy_read(struct mii_phy *phy, int reg) in _phy_read() argument
36 return phy->mdio_read(phy->dev, phy->address, reg); in _phy_read()
39 static inline void _phy_write(struct mii_phy *phy, int reg, int val) in _phy_write() argument
41 phy->mdio_write(phy->dev, phy->address, reg, val); in _phy_write()
44 static inline int gpcs_phy_read(struct mii_phy *phy, int reg) in gpcs_phy_read() argument
46 return phy->mdio_read(phy->dev, phy->gpcs_address, reg); in gpcs_phy_read()
49 static inline void gpcs_phy_write(struct mii_phy *phy, int reg, int val) in gpcs_phy_write() argument
51 phy->mdio_write(phy->dev, phy->gpcs_address, reg, val); in gpcs_phy_write()
54 int emac_mii_reset_phy(struct mii_phy *phy) in emac_mii_reset_phy() argument
59 val = phy_read(phy, MII_BMCR); in emac_mii_reset_phy()
[all …]
Dphy.h33 int (*init) (struct mii_phy * phy);
34 int (*suspend) (struct mii_phy * phy, int wol_options);
35 int (*setup_aneg) (struct mii_phy * phy, u32 advertise);
36 int (*setup_forced) (struct mii_phy * phy, int speed, int fd);
37 int (*poll_link) (struct mii_phy * phy);
38 int (*read_link) (struct mii_phy * phy);
83 int emac_mii_phy_probe(struct mii_phy *phy, int address);
84 int emac_mii_reset_phy(struct mii_phy *phy);
85 int emac_mii_reset_gpcs(struct mii_phy *phy);
Dcore.c574 link, dev->phy.duplex, dev->phy.pause, dev->phy.asym_pause); in emac_configure()
585 else if (dev->phy.duplex == DUPLEX_FULL) in emac_configure()
590 switch (dev->phy.speed) { in emac_configure()
592 if (emac_phy_gpcs(dev->phy.mode)) { in emac_configure()
594 (dev->phy.gpcs_address != 0xffffffff) ? in emac_configure()
595 dev->phy.gpcs_address : dev->phy.address); in emac_configure()
627 dev->phy.speed); in emac_configure()
629 zmii_set_speed(dev->zmii_dev, dev->zmii_port, dev->phy.speed); in emac_configure()
635 dev->phy.duplex == DUPLEX_FULL) { in emac_configure()
636 if (dev->phy.pause) in emac_configure()
[all …]
/linux-4.1.27/drivers/net/ethernet/chelsio/cxgb3/
Dael1002.c84 static int set_phy_regs(struct cphy *phy, const struct reg_val *rv) in set_phy_regs() argument
90 err = t3_mdio_write(phy, rv->mmd_addr, rv->reg_addr, in set_phy_regs()
93 err = t3_mdio_change_bits(phy, rv->mmd_addr, in set_phy_regs()
100 static void ael100x_txon(struct cphy *phy) in ael100x_txon() argument
103 phy->mdio.prtad == 0 ? F_GPIO7_OUT_VAL : F_GPIO2_OUT_VAL; in ael100x_txon()
106 t3_set_reg_field(phy->adapter, A_T3DBG_GPIO_EN, 0, tx_on_gpio); in ael100x_txon()
113 static int ael_i2c_rd(struct cphy *phy, int dev_addr, int word_addr) in ael_i2c_rd() argument
118 err = t3_mdio_write(phy, MDIO_MMD_PMAPMD, AEL_I2C_CTRL, in ael_i2c_rd()
125 err = t3_mdio_read(phy, MDIO_MMD_PMAPMD, AEL_I2C_STAT, &stat); in ael_i2c_rd()
129 err = t3_mdio_read(phy, MDIO_MMD_PMAPMD, AEL_I2C_DATA, in ael_i2c_rd()
[all …]
Daq100x.c65 static int aq100x_reset(struct cphy *phy, int wait) in aq100x_reset() argument
71 int err = t3_phy_reset(phy, MDIO_MMD_VEND1, 3000); in aq100x_reset()
74 CH_WARN(phy->adapter, "PHY%d: reset failed (0x%x).\n", in aq100x_reset()
75 phy->mdio.prtad, err); in aq100x_reset()
80 static int aq100x_intr_enable(struct cphy *phy) in aq100x_intr_enable() argument
82 int err = t3_mdio_write(phy, MDIO_MMD_PMAPMD, AQ_IMASK_PMA, IMASK_PMA); in aq100x_intr_enable()
86 err = t3_mdio_write(phy, MDIO_MMD_VEND1, AQ_IMASK_GLOBAL, IMASK_GLOBAL); in aq100x_intr_enable()
90 static int aq100x_intr_disable(struct cphy *phy) in aq100x_intr_disable() argument
92 return t3_mdio_write(phy, MDIO_MMD_VEND1, AQ_IMASK_GLOBAL, 0); in aq100x_intr_disable()
95 static int aq100x_intr_clear(struct cphy *phy) in aq100x_intr_clear() argument
[all …]
Dcommon.h518 int (*reset)(struct cphy *phy, int wait);
520 int (*intr_enable)(struct cphy *phy);
521 int (*intr_disable)(struct cphy *phy);
522 int (*intr_clear)(struct cphy *phy);
523 int (*intr_handler)(struct cphy *phy);
525 int (*autoneg_enable)(struct cphy *phy);
526 int (*autoneg_restart)(struct cphy *phy);
528 int (*advertise)(struct cphy *phy, unsigned int advertise_map);
529 int (*set_loopback)(struct cphy *phy, int mmd, int dir, int enable);
530 int (*set_speed_duplex)(struct cphy *phy, int speed, int duplex);
[all …]
Dvsc8211.c278 static int vsc8211_set_automdi(struct cphy *phy, int enable) in vsc8211_set_automdi() argument
282 err = t3_mdio_write(phy, MDIO_DEVAD_NONE, VSC8211_EXT_PAGE_AXS, 0x52b5); in vsc8211_set_automdi()
286 err = t3_mdio_write(phy, MDIO_DEVAD_NONE, 18, 0x12); in vsc8211_set_automdi()
290 err = t3_mdio_write(phy, MDIO_DEVAD_NONE, 17, enable ? 0x2803 : 0x3003); in vsc8211_set_automdi()
294 err = t3_mdio_write(phy, MDIO_DEVAD_NONE, 16, 0x87fa); in vsc8211_set_automdi()
298 err = t3_mdio_write(phy, MDIO_DEVAD_NONE, VSC8211_EXT_PAGE_AXS, 0); in vsc8211_set_automdi()
305 int vsc8211_set_speed_duplex(struct cphy *phy, int speed, int duplex) in vsc8211_set_speed_duplex() argument
309 err = t3_set_phy_speed_duplex(phy, speed, duplex); in vsc8211_set_speed_duplex()
311 err = vsc8211_set_automdi(phy, 1); in vsc8211_set_speed_duplex()
367 int t3_vsc8211_phy_prep(struct cphy *phy, struct adapter *adapter, in t3_vsc8211_phy_prep() argument
[all …]
/linux-4.1.27/drivers/nfc/pn544/
Di2c.c203 static void pn544_hci_i2c_platform_init(struct pn544_i2c_phy *phy) in pn544_hci_i2c_platform_init() argument
209 nfc_info(&phy->i2c_dev->dev, "Detecting nfc_en polarity\n"); in pn544_hci_i2c_platform_init()
212 gpio_set_value_cansleep(phy->gpio_fw, 0); in pn544_hci_i2c_platform_init()
215 phy->en_polarity = polarity; in pn544_hci_i2c_platform_init()
219 gpio_set_value_cansleep(phy->gpio_en, in pn544_hci_i2c_platform_init()
220 !phy->en_polarity); in pn544_hci_i2c_platform_init()
224 gpio_set_value_cansleep(phy->gpio_en, phy->en_polarity); in pn544_hci_i2c_platform_init()
228 dev_dbg(&phy->i2c_dev->dev, "Sending reset cmd\n"); in pn544_hci_i2c_platform_init()
229 ret = i2c_master_send(phy->i2c_dev, rset_cmd, count); in pn544_hci_i2c_platform_init()
231 nfc_info(&phy->i2c_dev->dev, in pn544_hci_i2c_platform_init()
[all …]
Dmei.c33 struct nfc_mei_phy *phy; in pn544_mei_probe() local
38 phy = nfc_mei_phy_alloc(device); in pn544_mei_probe()
39 if (!phy) { in pn544_mei_probe()
44 r = pn544_hci_probe(phy, &mei_phy_ops, LLC_NOP_NAME, in pn544_mei_probe()
46 NULL, &phy->hdev); in pn544_mei_probe()
48 nfc_mei_phy_free(phy); in pn544_mei_probe()
58 struct nfc_mei_phy *phy = mei_cl_get_drvdata(device); in pn544_mei_remove() local
62 pn544_hci_remove(phy->hdev); in pn544_mei_remove()
64 nfc_mei_phy_free(phy); in pn544_mei_remove()
/linux-4.1.27/drivers/net/ethernet/intel/igb/
De1000_phy.c82 struct e1000_phy_info *phy = &hw->phy; in igb_get_phy_id() local
86 ret_val = phy->ops.read_reg(hw, PHY_ID1, &phy_id); in igb_get_phy_id()
90 phy->id = (u32)(phy_id << 16); in igb_get_phy_id()
92 ret_val = phy->ops.read_reg(hw, PHY_ID2, &phy_id); in igb_get_phy_id()
96 phy->id |= (u32)(phy_id & PHY_REVISION_MASK); in igb_get_phy_id()
97 phy->revision = (u32)(phy_id & ~PHY_REVISION_MASK); in igb_get_phy_id()
113 if (!(hw->phy.ops.write_reg)) in igb_phy_reset_dsp()
116 ret_val = hw->phy.ops.write_reg(hw, M88E1000_PHY_GEN_CONTROL, 0xC1); in igb_phy_reset_dsp()
120 ret_val = hw->phy.ops.write_reg(hw, M88E1000_PHY_GEN_CONTROL, 0); in igb_phy_reset_dsp()
137 struct e1000_phy_info *phy = &hw->phy; in igb_read_phy_reg_mdic() local
[all …]
De1000_82575.c116 struct e1000_phy_info *phy = &hw->phy; in igb_check_for_link_media_swap() local
122 ret_val = phy->ops.write_reg(hw, E1000_M88E1112_PAGE_ADDR, 0); in igb_check_for_link_media_swap()
126 ret_val = phy->ops.read_reg(hw, E1000_M88E1112_STATUS, &data); in igb_check_for_link_media_swap()
134 ret_val = phy->ops.write_reg(hw, E1000_M88E1112_PAGE_ADDR, 1); in igb_check_for_link_media_swap()
138 ret_val = phy->ops.read_reg(hw, E1000_M88E1112_STATUS, &data); in igb_check_for_link_media_swap()
143 ret_val = phy->ops.write_reg(hw, E1000_M88E1112_PAGE_ADDR, 0); in igb_check_for_link_media_swap()
167 struct e1000_phy_info *phy = &hw->phy; in igb_init_phy_params_82575() local
171 if (hw->phy.media_type != e1000_media_type_copper) { in igb_init_phy_params_82575()
172 phy->type = e1000_phy_none; in igb_init_phy_params_82575()
176 phy->autoneg_mask = AUTONEG_ADVERTISE_SPEED_DEFAULT; in igb_init_phy_params_82575()
[all …]
/linux-4.1.27/drivers/usb/phy/
Dphy-ulpi.c55 static int ulpi_set_otg_flags(struct usb_phy *phy) in ulpi_set_otg_flags() argument
60 if (phy->flags & ULPI_OTG_ID_PULLUP) in ulpi_set_otg_flags()
67 if (phy->flags & ULPI_OTG_DP_PULLDOWN_DIS) in ulpi_set_otg_flags()
70 if (phy->flags & ULPI_OTG_DM_PULLDOWN_DIS) in ulpi_set_otg_flags()
73 if (phy->flags & ULPI_OTG_EXTVBUSIND) in ulpi_set_otg_flags()
76 return usb_phy_io_write(phy, flags, ULPI_OTG_CTRL); in ulpi_set_otg_flags()
79 static int ulpi_set_fc_flags(struct usb_phy *phy) in ulpi_set_fc_flags() argument
87 if (phy->flags & ULPI_FC_HS) in ulpi_set_fc_flags()
89 else if (phy->flags & ULPI_FC_LS) in ulpi_set_fc_flags()
91 else if (phy->flags & ULPI_FC_FS4LS) in ulpi_set_fc_flags()
[all …]
Dphy.c28 struct usb_phy *phy = NULL; in __usb_find_phy() local
30 list_for_each_entry(phy, list, head) { in __usb_find_phy()
31 if (phy->type != type) in __usb_find_phy()
34 return phy; in __usb_find_phy()
48 if (phy_bind->phy) in __usb_find_phy_dev()
49 return phy_bind->phy; in __usb_find_phy_dev()
60 struct usb_phy *phy; in __of_usb_find_phy() local
65 list_for_each_entry(phy, &phy_list, head) { in __of_usb_find_phy()
66 if (node != phy->dev->of_node) in __of_usb_find_phy()
69 return phy; in __of_usb_find_phy()
[all …]
Dphy-tegra-usb.c206 static void set_pts(struct tegra_usb_phy *phy, u8 pts_val) in set_pts() argument
208 void __iomem *base = phy->regs; in set_pts()
211 if (phy->soc_config->has_hostpc) { in set_pts()
224 static void set_phcd(struct tegra_usb_phy *phy, bool enable) in set_phcd() argument
226 void __iomem *base = phy->regs; in set_phcd()
229 if (phy->soc_config->has_hostpc) { in set_phcd()
246 static int utmip_pad_open(struct tegra_usb_phy *phy) in utmip_pad_open() argument
248 phy->pad_clk = devm_clk_get(phy->u_phy.dev, "utmi-pads"); in utmip_pad_open()
249 if (IS_ERR(phy->pad_clk)) { in utmip_pad_open()
251 return PTR_ERR(phy->pad_clk); in utmip_pad_open()
[all …]
DMakefile4 obj-$(CONFIG_USB_PHY) += phy.o
9 obj-$(CONFIG_AB8500_USB) += phy-ab8500-usb.o
10 obj-$(CONFIG_FSL_USB2_OTG) += phy-fsl-usb.o
11 obj-$(CONFIG_ISP1301_OMAP) += phy-isp1301-omap.o
12 obj-$(CONFIG_NOP_USB_XCEIV) += phy-generic.o
13 obj-$(CONFIG_TAHVO_USB) += phy-tahvo.o
14 obj-$(CONFIG_AM335X_CONTROL_USB) += phy-am335x-control.o
15 obj-$(CONFIG_AM335X_PHY_USB) += phy-am335x.o
16 obj-$(CONFIG_OMAP_OTG) += phy-omap-otg.o
17 obj-$(CONFIG_SAMSUNG_USBPHY) += phy-samsung-usb.o
[all …]
Dphy-msm-usb.c82 dev_err(motg->phy.dev, "Cannot set vddcx voltage\n"); in msm_hsusb_init_vddcx()
88 dev_err(motg->phy.dev, "unable to enable hsusb vddcx\n"); in msm_hsusb_init_vddcx()
93 dev_err(motg->phy.dev, "Cannot set vddcx voltage\n"); in msm_hsusb_init_vddcx()
96 dev_err(motg->phy.dev, "unable to disable hsusb vddcx\n"); in msm_hsusb_init_vddcx()
110 dev_err(motg->phy.dev, "Cannot set v3p3 voltage\n"); in msm_hsusb_ldo_init()
115 dev_err(motg->phy.dev, "unable to enable the hsusb 3p3\n"); in msm_hsusb_ldo_init()
121 dev_err(motg->phy.dev, "Cannot set v1p8 voltage\n"); in msm_hsusb_ldo_init()
126 dev_err(motg->phy.dev, "unable to enable the hsusb 1p8\n"); in msm_hsusb_ldo_init()
169 static int ulpi_read(struct usb_phy *phy, u32 reg) in ulpi_read() argument
171 struct msm_otg *motg = container_of(phy, struct msm_otg, phy); in ulpi_read()
[all …]
Dphy-gpio-vbus-usb.c35 struct usb_phy phy; member
107 if (!gpio_vbus->phy.otg->gadget) in gpio_vbus_work()
124 gpio_vbus->phy.otg->state = OTG_STATE_B_PERIPHERAL; in gpio_vbus_work()
125 gpio_vbus->phy.last_event = status; in gpio_vbus_work()
126 usb_gadget_vbus_connect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work()
135 atomic_notifier_call_chain(&gpio_vbus->phy.notifier, in gpio_vbus_work()
136 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work()
137 usb_phy_set_event(&gpio_vbus->phy, USB_EVENT_ENUMERATED); in gpio_vbus_work()
145 usb_gadget_vbus_disconnect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work()
147 gpio_vbus->phy.otg->state = OTG_STATE_B_IDLE; in gpio_vbus_work()
[all …]
Dphy-tahvo.c54 struct usb_phy phy; member
84 switch (tu->phy.otg->state) { in check_vbus_state()
87 if (tu->phy.otg->gadget) in check_vbus_state()
88 usb_gadget_vbus_connect(tu->phy.otg->gadget); in check_vbus_state()
89 tu->phy.otg->state = OTG_STATE_B_PERIPHERAL; in check_vbus_state()
90 usb_phy_set_event(&tu->phy, USB_EVENT_ENUMERATED); in check_vbus_state()
97 tu->phy.otg->state = OTG_STATE_A_HOST; in check_vbus_state()
104 switch (tu->phy.otg->state) { in check_vbus_state()
106 if (tu->phy.otg->gadget) in check_vbus_state()
107 usb_gadget_vbus_disconnect(tu->phy.otg->gadget); in check_vbus_state()
[all …]
Dphy-isp1301-omap.c53 struct usb_phy phy; member
237 return usb_otg_state_string(isp->phy.otg->state); in state_name()
252 isp->phy.otg->state = OTG_STATE_UNDEFINED; in power_down()
281 if (!isp->phy.otg->host) in host_suspend()
287 dev = isp->phy.otg->host->controller; in host_suspend()
299 if (!isp->phy.otg->host) in host_resume()
302 dev = isp->phy.otg->host->controller; in host_resume()
309 isp->phy.otg->gadget->b_hnp_enable = 0; in gadget_suspend()
310 isp->phy.otg->gadget->a_hnp_support = 0; in gadget_suspend()
311 isp->phy.otg->gadget->a_alt_hnp_support = 0; in gadget_suspend()
[all …]
Dphy-generic.c109 struct usb_otg *otg = nop->phy.otg; in nop_gpio_vbus_thread()
120 nop->phy.last_event = status; in nop_gpio_vbus_thread()
126 atomic_notifier_call_chain(&nop->phy.notifier, status, in nop_gpio_vbus_thread()
134 nop->phy.last_event = status; in nop_gpio_vbus_thread()
136 atomic_notifier_call_chain(&nop->phy.notifier, status, in nop_gpio_vbus_thread()
142 int usb_gen_phy_init(struct usb_phy *phy) in usb_gen_phy_init() argument
144 struct usb_phy_generic *nop = dev_get_drvdata(phy->dev); in usb_gen_phy_init()
148 dev_err(phy->dev, "Failed to enable power\n"); in usb_gen_phy_init()
160 void usb_gen_phy_shutdown(struct usb_phy *phy) in usb_gen_phy_shutdown() argument
162 struct usb_phy_generic *nop = dev_get_drvdata(phy->dev); in usb_gen_phy_shutdown()
[all …]
Dphy-isp1301.c22 struct usb_phy phy; member
28 #define phy_to_isp(p) (container_of((p), struct isp1301, phy))
52 static int isp1301_phy_init(struct usb_phy *phy) in isp1301_phy_init() argument
54 struct isp1301 *isp = phy_to_isp(phy); in isp1301_phy_init()
79 static int isp1301_phy_set_vbus(struct usb_phy *phy, int on) in isp1301_phy_set_vbus() argument
81 struct isp1301 *isp = phy_to_isp(phy); in isp1301_phy_set_vbus()
95 struct usb_phy *phy; in isp1301_probe() local
104 phy = &isp->phy; in isp1301_probe()
105 phy->dev = &client->dev; in isp1301_probe()
106 phy->label = DRV_NAME; in isp1301_probe()
[all …]
Dphy-ab8500-usb.c215 struct usb_phy phy; member
236 return container_of(x, struct ab8500_usb, phy); in phy_to_ab()
439 atomic_notifier_call_chain(&ab->phy.notifier, in ab9540_usb_link_status_update()
442 ab->phy.otg->default_a = false; in ab9540_usb_link_status_update()
447 ab->phy.otg->state = OTG_STATE_B_IDLE; in ab9540_usb_link_status_update()
448 usb_phy_set_event(&ab->phy, USB_EVENT_NONE); in ab9540_usb_link_status_update()
461 atomic_notifier_call_chain(&ab->phy.notifier, in ab9540_usb_link_status_update()
463 usb_phy_set_event(&ab->phy, USB_EVENT_ENUMERATED); in ab9540_usb_link_status_update()
468 atomic_notifier_call_chain(&ab->phy.notifier, in ab9540_usb_link_status_update()
470 usb_phy_set_event(&ab->phy, USB_EVENT_ENUMERATED); in ab9540_usb_link_status_update()
[all …]
Dphy-mxs-usb.c92 #define to_mxs_phy(p) container_of((p), struct mxs_phy, phy)
157 struct usb_phy phy; member
186 void __iomem *base = mxs_phy->phy.io_priv; in mxs_phy_hw_init()
240 void __iomem *base = mxs_phy->phy.io_priv; in __mxs_phy_disconnect_line()
272 void __iomem *base = mxs_phy->phy.io_priv; in mxs_phy_is_otg_host()
303 static int mxs_phy_init(struct usb_phy *phy) in mxs_phy_init() argument
306 struct mxs_phy *mxs_phy = to_mxs_phy(phy); in mxs_phy_init()
316 static void mxs_phy_shutdown(struct usb_phy *phy) in mxs_phy_shutdown() argument
318 struct mxs_phy *mxs_phy = to_mxs_phy(phy); in mxs_phy_shutdown()
328 writel(value, phy->io_priv + HW_USBPHY_CTRL_CLR); in mxs_phy_shutdown()
[all …]
Dphy-rcar-gen2-usb.c22 struct usb_phy phy; member
30 #define usb_phy_to_priv(p) container_of(p, struct rcar_gen2_usb_phy_priv, phy)
123 static int rcar_gen2_usb_phy_set_suspend(struct usb_phy *phy, int suspend) in rcar_gen2_usb_phy_set_suspend() argument
125 struct rcar_gen2_usb_phy_priv *priv = usb_phy_to_priv(phy); in rcar_gen2_usb_phy_set_suspend()
136 static int rcar_gen2_usb_phy_init(struct usb_phy *phy) in rcar_gen2_usb_phy_init() argument
138 struct rcar_gen2_usb_phy_priv *priv = usb_phy_to_priv(phy); in rcar_gen2_usb_phy_init()
152 static void rcar_gen2_usb_phy_shutdown(struct usb_phy *phy) in rcar_gen2_usb_phy_shutdown() argument
154 struct rcar_gen2_usb_phy_priv *priv = usb_phy_to_priv(phy); in rcar_gen2_usb_phy_shutdown()
159 dev_warn(phy->dev, "Trying to disable phy with 0 usecount\n"); in rcar_gen2_usb_phy_shutdown()
208 priv->phy.dev = dev; in rcar_gen2_usb_phy_probe()
[all …]
Dphy-rcar-usb.c64 struct usb_phy phy; member
72 #define usb_phy_to_priv(p) container_of(p, struct rcar_usb_phy_priv, phy)
82 static int rcar_usb_phy_init(struct usb_phy *phy) in rcar_usb_phy_init() argument
84 struct rcar_usb_phy_priv *priv = usb_phy_to_priv(phy); in rcar_usb_phy_init()
85 struct device *dev = phy->dev; in rcar_usb_phy_init()
165 static void rcar_usb_phy_shutdown(struct usb_phy *phy) in rcar_usb_phy_shutdown() argument
167 struct rcar_usb_phy_priv *priv = usb_phy_to_priv(phy); in rcar_usb_phy_shutdown()
209 priv->phy.dev = dev; in rcar_usb_phy_probe()
210 priv->phy.label = dev_name(dev); in rcar_usb_phy_probe()
211 priv->phy.init = rcar_usb_phy_init; in rcar_usb_phy_probe()
[all …]
Dphy-mv-usb.c59 struct mv_otg *mvotg = container_of(otg->usb_phy, struct mv_otg, phy); in mv_otg_set_vbus()
205 struct usb_otg *otg = mvotg->phy.otg; in mv_otg_start_host()
226 struct usb_otg *otg = mvotg->phy.otg; in mv_otg_start_periphrals()
231 dev_info(mvotg->phy.dev, "gadget %s\n", on ? "on" : "off"); in mv_otg_start_periphrals()
341 int old_state = mvotg->phy.otg->state; in mv_otg_update_state()
345 mvotg->phy.otg->state = OTG_STATE_B_IDLE; in mv_otg_update_state()
349 mvotg->phy.otg->state = OTG_STATE_A_IDLE; in mv_otg_update_state()
351 mvotg->phy.otg->state = OTG_STATE_B_PERIPHERAL; in mv_otg_update_state()
355 mvotg->phy.otg->state = OTG_STATE_B_IDLE; in mv_otg_update_state()
359 mvotg->phy.otg->state = OTG_STATE_B_IDLE; in mv_otg_update_state()
[all …]
Dphy-keystone.c53 static int keystone_usbphy_init(struct usb_phy *phy) in keystone_usbphy_init() argument
55 struct keystone_usbphy *k_phy = dev_get_drvdata(phy->dev); in keystone_usbphy_init()
64 static void keystone_usbphy_shutdown(struct usb_phy *phy) in keystone_usbphy_shutdown() argument
66 struct keystone_usbphy *k_phy = dev_get_drvdata(phy->dev); in keystone_usbphy_shutdown()
94 k_phy->usb_phy_gen.phy.init = keystone_usbphy_init; in keystone_usbphy_probe()
95 k_phy->usb_phy_gen.phy.shutdown = keystone_usbphy_shutdown; in keystone_usbphy_probe()
99 ret = usb_add_phy_dev(&k_phy->usb_phy_gen.phy); in keystone_usbphy_probe()
110 usb_remove_phy(&k_phy->usb_phy_gen.phy); in keystone_usbphy_remove()
Dphy-am335x.c21 static int am335x_init(struct usb_phy *phy) in am335x_init() argument
23 struct am335x_phy *am_phy = dev_get_drvdata(phy->dev); in am335x_init()
29 static void am335x_shutdown(struct usb_phy *phy) in am335x_shutdown() argument
31 struct am335x_phy *am_phy = dev_get_drvdata(phy->dev); in am335x_shutdown()
59 ret = usb_add_phy_dev(&am_phy->usb_phy_gen.phy); in am335x_phy_probe()
62 am_phy->usb_phy_gen.phy.init = am335x_init; in am335x_phy_probe()
63 am_phy->usb_phy_gen.phy.shutdown = am335x_shutdown; in am335x_phy_probe()
87 usb_remove_phy(&am_phy->usb_phy_gen.phy); in am335x_phy_remove()
Dphy-fsl-usb.c264 if ((fsl_otg_dev->phy.otg->state == OTG_STATE_B_SRP_INIT) && in b_srp_end()
277 if (!fsl_otg_dev->phy.otg->host->b_hnp_enable) in a_wait_enum()
468 container_of(otg->usb_phy, struct fsl_otg, phy); in fsl_otg_start_host()
563 otg_dev = container_of(otg->usb_phy, struct fsl_otg, phy); in fsl_otg_set_host()
613 otg_dev = container_of(otg->usb_phy, struct fsl_otg, phy); in fsl_otg_set_peripheral()
646 static int fsl_otg_set_power(struct usb_phy *phy, unsigned mA) in fsl_otg_set_power() argument
650 if (phy->otg->state == OTG_STATE_B_PERIPHERAL) in fsl_otg_set_power()
686 otg_dev = container_of(otg->usb_phy, struct fsl_otg, phy); in fsl_otg_start_srp()
704 otg_dev = container_of(otg->usb_phy, struct fsl_otg, phy); in fsl_otg_start_hnp()
726 struct usb_otg *otg = ((struct fsl_otg *)dev_id)->phy.otg; in fsl_otg_isr()
[all …]
/linux-4.1.27/drivers/net/fddi/skfp/
Dpcmplc.c202 static void pcm_fsm(struct s_smc *smc, struct s_phy *phy, int cmd);
203 static void pc_rcode_actions(struct s_smc *smc, int bit, struct s_phy *phy);
204 static void pc_tcode_actions(struct s_smc *smc, const int bit, struct s_phy *phy);
205 static void reset_lem_struct(struct s_phy *phy);
209 static void sm_ph_linestate(struct s_smc *smc, int phy, int ls);
217 struct s_phy *phy) in start_pcm_timer0() argument
219 phy->timer0_exp = FALSE ; /* clear timer event flag */ in start_pcm_timer0()
220 smt_timer_start(smc,&phy->pcm_timer0,value, in start_pcm_timer0()
221 EV_TOKEN(EVENT_PCM+phy->np,event)) ; in start_pcm_timer0()
227 static void stop_pcm_timer0(struct s_smc *smc, struct s_phy *phy) in stop_pcm_timer0() argument
[all …]
/linux-4.1.27/drivers/staging/media/omap4iss/
Diss_csiphy.c30 static void csiphy_lanes_config(struct iss_csiphy *phy) in csiphy_lanes_config() argument
35 reg = iss_reg_read(phy->iss, phy->cfg_regs, CSI2_COMPLEXIO_CFG); in csiphy_lanes_config()
37 for (i = 0; i < phy->max_data_lanes; i++) { in csiphy_lanes_config()
40 reg |= (phy->lanes.data[i].pol ? in csiphy_lanes_config()
42 reg |= (phy->lanes.data[i].pos << in csiphy_lanes_config()
48 reg |= phy->lanes.clk.pol ? CSI2_COMPLEXIO_CFG_CLOCK_POL : 0; in csiphy_lanes_config()
49 reg |= phy->lanes.clk.pos << CSI2_COMPLEXIO_CFG_CLOCK_POSITION_SHIFT; in csiphy_lanes_config()
51 iss_reg_write(phy->iss, phy->cfg_regs, CSI2_COMPLEXIO_CFG, reg); in csiphy_lanes_config()
60 static int csiphy_set_power(struct iss_csiphy *phy, u32 power) in csiphy_set_power() argument
65 iss_reg_update(phy->iss, phy->cfg_regs, CSI2_COMPLEXIO_CFG, in csiphy_set_power()
[all …]
/linux-4.1.27/drivers/media/platform/omap3isp/
Dispcsiphy.c26 static void csiphy_routing_cfg_3630(struct isp_csiphy *phy, in csiphy_routing_cfg_3630() argument
33 regmap_read(phy->isp->syscon, phy->isp->syscon_offset, &reg); in csiphy_routing_cfg_3630()
68 regmap_write(phy->isp->syscon, phy->isp->syscon_offset, reg); in csiphy_routing_cfg_3630()
71 static void csiphy_routing_cfg_3430(struct isp_csiphy *phy, u32 iface, bool on, in csiphy_routing_cfg_3430() argument
82 regmap_write(phy->isp->syscon, phy->isp->syscon_offset, 0); in csiphy_routing_cfg_3430()
89 regmap_write(phy->isp->syscon, phy->isp->syscon_offset, csirxfe); in csiphy_routing_cfg_3430()
104 static void csiphy_routing_cfg(struct isp_csiphy *phy, in csiphy_routing_cfg() argument
108 if (phy->isp->phy_type == ISP_PHY_TYPE_3630 && on) in csiphy_routing_cfg()
109 return csiphy_routing_cfg_3630(phy, iface, ccp2_strobe); in csiphy_routing_cfg()
110 if (phy->isp->phy_type == ISP_PHY_TYPE_3430) in csiphy_routing_cfg()
[all …]
/linux-4.1.27/drivers/nfc/st21nfca/
Di2c.c113 static int st21nfca_hci_platform_init(struct st21nfca_i2c_phy *phy) in st21nfca_hci_platform_init() argument
121 r = i2c_master_send(phy->i2c_dev, reboot_cmd, in st21nfca_hci_platform_init()
133 r = i2c_master_recv(phy->i2c_dev, tmp, in st21nfca_hci_platform_init()
154 struct st21nfca_i2c_phy *phy = phy_id; in st21nfca_hci_i2c_enable() local
156 gpio_set_value(phy->gpio_ena, 1); in st21nfca_hci_i2c_enable()
157 phy->powered = 1; in st21nfca_hci_i2c_enable()
158 phy->run_mode = ST21NFCA_HCI_MODE; in st21nfca_hci_i2c_enable()
167 struct st21nfca_i2c_phy *phy = phy_id; in st21nfca_hci_i2c_disable() local
170 gpio_set_value(phy->gpio_ena, 0); in st21nfca_hci_i2c_disable()
172 phy->powered = 0; in st21nfca_hci_i2c_disable()
[all …]
/linux-4.1.27/drivers/gpu/drm/msm/edp/
Dedp_phy.c23 bool msm_edp_phy_ready(struct edp_phy *phy) in msm_edp_phy_ready() argument
29 status = edp_read(phy->base + in msm_edp_phy_ready()
44 void msm_edp_phy_ctrl(struct edp_phy *phy, int enable) in msm_edp_phy_ctrl() argument
49 edp_write(phy->base + REG_EDP_PHY_CTRL, in msm_edp_phy_ctrl()
54 edp_write(phy->base + REG_EDP_PHY_CTRL, 0x000); in msm_edp_phy_ctrl()
55 edp_write(phy->base + REG_EDP_PHY_GLB_PD_CTL, 0x3f); in msm_edp_phy_ctrl()
56 edp_write(phy->base + REG_EDP_PHY_GLB_CFG, 0x1); in msm_edp_phy_ctrl()
58 edp_write(phy->base + REG_EDP_PHY_GLB_PD_CTL, 0xc0); in msm_edp_phy_ctrl()
63 void msm_edp_phy_vm_pe_init(struct edp_phy *phy) in msm_edp_phy_vm_pe_init() argument
65 edp_write(phy->base + REG_EDP_PHY_GLB_VM_CFG0, 0x3); in msm_edp_phy_vm_pe_init()
[all …]
/linux-4.1.27/drivers/net/wireless/b43legacy/
Dphy.c101 B43legacy_WARN_ON(dev->phy.phy_locked); in b43legacy_phy_lock()
102 dev->phy.phy_locked = 1; in b43legacy_phy_lock()
116 B43legacy_WARN_ON(!dev->phy.phy_locked); in b43legacy_phy_unlock()
117 dev->phy.phy_locked = 0; in b43legacy_phy_unlock()
143 struct b43legacy_phy *phy = &dev->phy; in b43legacy_phy_calibrate() local
146 if (phy->calibrated) in b43legacy_phy_calibrate()
148 if (phy->type == B43legacy_PHYTYPE_G && phy->rev == 1) { in b43legacy_phy_calibrate()
153 phy->calibrated = 1; in b43legacy_phy_calibrate()
161 struct b43legacy_phy *phy = &dev->phy; in b43legacy_phy_init_pctl() local
167 B43legacy_BUG_ON(!(phy->type == B43legacy_PHYTYPE_B || in b43legacy_phy_init_pctl()
[all …]
Dradio.c116 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_read16() local
118 switch (phy->type) { in b43legacy_radio_read16()
120 if (phy->radio_ver == 0x2053) { in b43legacy_radio_read16()
125 } else if (phy->radio_ver == 0x2050) in b43legacy_radio_read16()
151 struct b43legacy_phy *phy = &dev->phy; in b43legacy_set_all_gains() local
158 if (phy->rev <= 1) { in b43legacy_set_all_gains()
187 struct b43legacy_phy *phy = &dev->phy; in b43legacy_set_original_gains() local
194 if (phy->rev <= 1) { in b43legacy_set_original_gains()
227 struct b43legacy_phy *phy = &dev->phy; in b43legacy_synth_pu_workaround() local
231 if (phy->radio_ver != 0x2050 || phy->radio_rev >= 6) in b43legacy_synth_pu_workaround()
[all …]
Dmain.c594 if (dev->phy.type != B43legacy_PHYTYPE_G) in b43legacy_set_slot_time()
626 struct b43legacy_phy *phy = &dev->phy; in b43legacy_dummy_transmission() local
638 switch (phy->type) { in b43legacy_dummy_transmission()
666 if (phy->radio_ver == 0x2050 && phy->radio_rev <= 0x5) in b43legacy_dummy_transmission()
686 if (phy->radio_ver == 0x2050 && phy->radio_rev <= 0x5) in b43legacy_dummy_transmission()
725 dev->phy.gmode = true; in b43legacy_wireless_core_reset()
727 dev->phy.gmode = false; in b43legacy_wireless_core_reset()
804 dev->phy.channel); in b43legacy_generate_noise_sample()
813 dev->noisecalc.channel_at_start = dev->phy.channel; in b43legacy_calculate_link_quality()
822 struct b43legacy_phy *phy = &dev->phy; in handle_irq_noise() local
[all …]
/linux-4.1.27/drivers/net/ethernet/broadcom/bnx2x/
Dbnx2x_link.c30 typedef int (*read_sfp_module_eeprom_func_p)(struct bnx2x_phy *phy,
221 static int bnx2x_sfp_module_detection(struct bnx2x_phy *phy,
1459 params->phy[phy_index].mdio_ctrl); in bnx2x_set_mdio_emac_per_phy()
1765 if (!(params->phy[INT_PHY].flags & FLAGS_TX_ERROR_CHECK)) { in bnx2x_xmac_enable()
1796 (params->phy[INT_PHY].supported & in bnx2x_xmac_enable()
2597 struct bnx2x_phy *phy, in bnx2x_cl22_write() argument
2604 mode = REG_RD(bp, phy->mdio_ctrl + EMAC_REG_EMAC_MDIO_MODE); in bnx2x_cl22_write()
2605 REG_WR(bp, phy->mdio_ctrl + EMAC_REG_EMAC_MDIO_MODE, in bnx2x_cl22_write()
2609 tmp = ((phy->addr << 21) | (reg << 16) | val | in bnx2x_cl22_write()
2612 REG_WR(bp, phy->mdio_ctrl + EMAC_REG_EMAC_MDIO_COMM, tmp); in bnx2x_cl22_write()
[all …]
/linux-4.1.27/drivers/nfc/
Dmei_phy.c54 struct nfc_mei_phy *phy = phy_id; in nfc_mei_phy_enable() local
58 if (phy->powered == 1) in nfc_mei_phy_enable()
61 r = mei_cl_enable_device(phy->device); in nfc_mei_phy_enable()
67 r = mei_cl_register_event_cb(phy->device, nfc_mei_event_cb, phy); in nfc_mei_phy_enable()
70 mei_cl_disable_device(phy->device); in nfc_mei_phy_enable()
71 phy->powered = 0; in nfc_mei_phy_enable()
76 phy->powered = 1; in nfc_mei_phy_enable()
84 struct nfc_mei_phy *phy = phy_id; in nfc_mei_phy_disable() local
88 mei_cl_disable_device(phy->device); in nfc_mei_phy_disable()
90 phy->powered = 0; in nfc_mei_phy_disable()
[all …]
/linux-4.1.27/drivers/nfc/st21nfcb/
Di2c.c68 struct st21nfcb_i2c_phy *phy = phy_id; in st21nfcb_nci_i2c_enable() local
70 gpio_set_value(phy->gpio_reset, 0); in st21nfcb_nci_i2c_enable()
72 gpio_set_value(phy->gpio_reset, 1); in st21nfcb_nci_i2c_enable()
73 phy->powered = 1; in st21nfcb_nci_i2c_enable()
81 struct st21nfcb_i2c_phy *phy = phy_id; in st21nfcb_nci_i2c_disable() local
83 phy->powered = 0; in st21nfcb_nci_i2c_disable()
85 gpio_set_value(phy->gpio_reset, 0); in st21nfcb_nci_i2c_disable()
87 gpio_set_value(phy->gpio_reset, 1); in st21nfcb_nci_i2c_disable()
98 struct st21nfcb_i2c_phy *phy = phy_id; in st21nfcb_nci_i2c_write() local
99 struct i2c_client *client = phy->i2c_dev; in st21nfcb_nci_i2c_write()
[all …]
/linux-4.1.27/drivers/net/ethernet/intel/ixgbe/
Dixgbe_phy.c114 u32 swfw_mask = hw->phy.phy_semaphore_mask; in ixgbe_read_i2c_combined_generic()
245 if (!hw->phy.phy_semaphore_mask) { in ixgbe_identify_phy_generic()
246 hw->phy.lan_id = IXGBE_READ_REG(hw, IXGBE_STATUS) & in ixgbe_identify_phy_generic()
248 if (hw->phy.lan_id) in ixgbe_identify_phy_generic()
249 hw->phy.phy_semaphore_mask = IXGBE_GSSR_PHY1_SM; in ixgbe_identify_phy_generic()
251 hw->phy.phy_semaphore_mask = IXGBE_GSSR_PHY0_SM; in ixgbe_identify_phy_generic()
254 if (hw->phy.type == ixgbe_phy_unknown) { in ixgbe_identify_phy_generic()
256 hw->phy.mdio.prtad = phy_addr; in ixgbe_identify_phy_generic()
257 if (mdio45_probe(&hw->phy.mdio, phy_addr) == 0) { in ixgbe_identify_phy_generic()
259 hw->phy.type = in ixgbe_identify_phy_generic()
[all …]
Dixgbe_x550.c41 hw->phy.phy_semaphore_mask = IXGBE_GSSR_SHARED_I2C_SM; in ixgbe_identify_phy_x550em()
51 hw->phy.type = ixgbe_phy_x550em_kx4; in ixgbe_identify_phy_x550em()
54 hw->phy.type = ixgbe_phy_x550em_kr; in ixgbe_identify_phy_x550em()
702 switch (hw->phy.sfp_type) { in ixgbe_setup_sfp_modules_X550em()
724 hw->phy.ops.reset = NULL; in ixgbe_setup_sfp_modules_X550em()
737 ret_val = hw->phy.ops.write_i2c_combined(hw, IXGBE_CS4227, reg_slice, in ixgbe_setup_sfp_modules_X550em()
741 ret_val = hw->phy.ops.write_i2c_combined(hw, 0x80, reg_slice, in ixgbe_setup_sfp_modules_X550em()
757 if (hw->phy.media_type == ixgbe_media_type_fiber) { in ixgbe_get_link_capabilities_X550em()
761 if (hw->phy.sfp_type == ixgbe_sfp_type_1g_sx_core0 || in ixgbe_get_link_capabilities_X550em()
762 hw->phy.sfp_type == ixgbe_sfp_type_1g_sx_core1) { in ixgbe_get_link_capabilities_X550em()
[all …]
Dixgbe_82599.c109 if (hw->phy.multispeed_fiber) { in ixgbe_init_mac_link_ops_82599()
115 (hw->phy.smart_speed == ixgbe_smart_speed_auto || in ixgbe_init_mac_link_ops_82599()
116 hw->phy.smart_speed == ixgbe_smart_speed_on) && in ixgbe_init_mac_link_ops_82599()
129 if (hw->phy.sfp_type != ixgbe_sfp_type_unknown) { in ixgbe_setup_sfp_modules_82599()
132 hw->phy.ops.reset = NULL; in ixgbe_setup_sfp_modules_82599()
292 struct ixgbe_phy_info *phy = &hw->phy; in ixgbe_init_phy_ops_82599() local
298 hw->phy.qsfp_shared_i2c_bus = true; in ixgbe_init_phy_ops_82599()
310 phy->ops.read_i2c_byte = &ixgbe_read_i2c_byte_82599; in ixgbe_init_phy_ops_82599()
311 phy->ops.write_i2c_byte = &ixgbe_write_i2c_byte_82599; in ixgbe_init_phy_ops_82599()
315 ret_val = phy->ops.identify(hw); in ixgbe_init_phy_ops_82599()
[all …]
/linux-4.1.27/drivers/net/ethernet/intel/e1000e/
Dphy.c79 struct e1000_phy_info *phy = &hw->phy; in e1000e_get_phy_id() local
84 if (!phy->ops.read_reg) in e1000e_get_phy_id()
92 phy->id = (u32)(phy_id << 16); in e1000e_get_phy_id()
98 phy->id |= (u32)(phy_id & PHY_REVISION_MASK); in e1000e_get_phy_id()
99 phy->revision = (u32)(phy_id & ~PHY_REVISION_MASK); in e1000e_get_phy_id()
101 if (phy->id != 0 && phy->id != PHY_REVISION_MASK) in e1000e_get_phy_id()
138 struct e1000_phy_info *phy = &hw->phy; in e1000e_read_phy_reg_mdic() local
151 (phy->addr << E1000_MDIC_PHY_SHIFT) | in e1000e_read_phy_reg_mdic()
201 struct e1000_phy_info *phy = &hw->phy; in e1000e_write_phy_reg_mdic() local
215 (phy->addr << E1000_MDIC_PHY_SHIFT) | in e1000e_write_phy_reg_mdic()
[all …]
Dich8lan.c217 if (hw->phy.id) { in e1000_phy_is_accessible_pchlan()
218 if (hw->phy.id == phy_id) in e1000_phy_is_accessible_pchlan()
221 hw->phy.id = phy_id; in e1000_phy_is_accessible_pchlan()
222 hw->phy.revision = (u32)(phy_reg & ~PHY_REVISION_MASK); in e1000_phy_is_accessible_pchlan()
230 hw->phy.ops.release(hw); in e1000_phy_is_accessible_pchlan()
234 hw->phy.ops.acquire(hw); in e1000_phy_is_accessible_pchlan()
321 ret_val = hw->phy.ops.acquire(hw); in e1000_init_phy_workarounds_pchlan()
361 if (hw->phy.ops.check_reset_block(hw)) { in e1000_init_phy_workarounds_pchlan()
390 hw->phy.ops.release(hw); in e1000_init_phy_workarounds_pchlan()
394 if (hw->phy.ops.check_reset_block(hw)) { in e1000_init_phy_workarounds_pchlan()
[all …]
D82571.c65 struct e1000_phy_info *phy = &hw->phy; in e1000_init_phy_params_82571() local
68 if (hw->phy.media_type != e1000_media_type_copper) { in e1000_init_phy_params_82571()
69 phy->type = e1000_phy_none; in e1000_init_phy_params_82571()
73 phy->addr = 1; in e1000_init_phy_params_82571()
74 phy->autoneg_mask = AUTONEG_ADVERTISE_SPEED_DEFAULT; in e1000_init_phy_params_82571()
75 phy->reset_delay_us = 100; in e1000_init_phy_params_82571()
77 phy->ops.power_up = e1000_power_up_phy_copper; in e1000_init_phy_params_82571()
78 phy->ops.power_down = e1000_power_down_phy_copper_82571; in e1000_init_phy_params_82571()
83 phy->type = e1000_phy_igp_2; in e1000_init_phy_params_82571()
86 phy->type = e1000_phy_m88; in e1000_init_phy_params_82571()
[all …]
D80003es2lan.c58 struct e1000_phy_info *phy = &hw->phy; in e1000_init_phy_params_80003es2lan() local
61 if (hw->phy.media_type != e1000_media_type_copper) { in e1000_init_phy_params_80003es2lan()
62 phy->type = e1000_phy_none; in e1000_init_phy_params_80003es2lan()
65 phy->ops.power_up = e1000_power_up_phy_copper; in e1000_init_phy_params_80003es2lan()
66 phy->ops.power_down = e1000_power_down_phy_copper_80003es2lan; in e1000_init_phy_params_80003es2lan()
69 phy->addr = 1; in e1000_init_phy_params_80003es2lan()
70 phy->autoneg_mask = AUTONEG_ADVERTISE_SPEED_DEFAULT; in e1000_init_phy_params_80003es2lan()
71 phy->reset_delay_us = 100; in e1000_init_phy_params_80003es2lan()
72 phy->type = e1000_phy_gg82563; in e1000_init_phy_params_80003es2lan()
78 if (phy->id != GG82563_E_PHY_ID) in e1000_init_phy_params_80003es2lan()
[all …]
/linux-4.1.27/drivers/net/wireless/b43/
Dphy_common.c43 struct b43_phy *phy = &(dev->phy); in b43_phy_allocate() local
46 phy->ops = NULL; in b43_phy_allocate()
48 switch (phy->type) { in b43_phy_allocate()
51 phy->ops = &b43_phyops_g; in b43_phy_allocate()
56 phy->ops = &b43_phyops_n; in b43_phy_allocate()
61 phy->ops = &b43_phyops_lp; in b43_phy_allocate()
66 phy->ops = &b43_phyops_ht; in b43_phy_allocate()
71 phy->ops = &b43_phyops_lcn; in b43_phy_allocate()
76 phy->ops = &b43_phyops_ac; in b43_phy_allocate()
80 if (B43_WARN_ON(!phy->ops)) in b43_phy_allocate()
[all …]
Dphy_g.c83 struct b43_phy *phy = &dev->phy; in generate_rfatt_list() local
131 if (phy->radio_ver == 0x2050 && phy->radio_rev == 8) { in generate_rfatt_list()
178 struct b43_phy *phy = &dev->phy; in b43_synth_pu_workaround() local
182 if (phy->radio_ver != 0x2050 || phy->radio_rev >= 6) { in b43_synth_pu_workaround()
201 struct b43_phy *phy = &dev->phy; in b43_gphy_set_baseband_attenuation() local
203 if (phy->analog == 0) { in b43_gphy_set_baseband_attenuation()
207 } else if (phy->analog > 1) { in b43_gphy_set_baseband_attenuation()
219 struct b43_phy *phy = &dev->phy; in b43_set_txpower_g() local
220 struct b43_phy_g *gphy = phy->g; in b43_set_txpower_g()
248 if (phy->radio_ver == 0x2050 && phy->radio_rev == 8) { in b43_set_txpower_g()
[all …]
Dwa.c62 struct b43_phy *phy = &dev->phy; in b43_wa_initgains() local
66 if (phy->rev <= 2) in b43_wa_initgains()
74 if (phy->rev <= 3) in b43_wa_initgains()
76 else if (phy->rev == 5) { in b43_wa_initgains()
80 if (phy->rev >= 3) in b43_wa_initgains()
92 if (dev->phy.rev <= 2) { in b43_wa_gt()
136 struct b43_phy *phy = &dev->phy; in b43_wa_analog() local
141 if (phy->type == B43_PHYTYPE_A) in b43_wa_analog()
154 if (dev->phy.analog == 1) in b43_wa_dac()
166 if (dev->phy.type == B43_PHYTYPE_A) in b43_wa_fft()
[all …]
Dlo.c60 struct b43_phy *phy = &dev->phy; in b43_lo_write() local
71 B43_WARN_ON(phy->type != B43_PHYTYPE_G); in b43_lo_write()
81 struct b43_phy *phy = &dev->phy; in lo_measure_feedthrough() local
85 if (phy->gmode) { in lo_measure_feedthrough()
102 && phy->rev > 6) in lo_measure_feedthrough()
144 struct b43_phy *phy = &dev->phy; in lo_txctl_register_table() local
147 if (phy->type == B43_PHYTYPE_B) { in lo_txctl_register_table()
149 if (phy->radio_rev <= 5) { in lo_txctl_register_table()
157 if (phy->rev >= 2 && phy->radio_rev == 8) { in lo_txctl_register_table()
177 struct b43_phy *phy = &dev->phy; in lo_measure_txctl_values() local
[all …]
Dphy_a.c67 struct b43_phy *phy = &dev->phy;
68 struct b43_phy_a *aphy = phy->a;
176 aphy_channel_switch(dev, dev->phy.ops->get_default_chan(dev)); in b43_radio_init2060()
185 if (dev->phy.rev < 3) { in b43_phy_rssiagc()
268 struct b43_phy *phy = &dev->phy; in b43_phy_inita() local
273 B43_WARN_ON((phy->type != B43_PHYTYPE_A) && in b43_phy_inita()
274 (phy->type != B43_PHYTYPE_G)); in b43_phy_inita()
278 if (phy->rev >= 6) { in b43_phy_inita()
279 if (phy->type == B43_PHYTYPE_A) in b43_phy_inita()
289 if (phy->type == B43_PHYTYPE_A) { in b43_phy_inita()
[all …]
Dphy_n.c109 return ((dev->phy.n->ipa2g_on && band == IEEE80211_BAND_2GHZ) || in b43_nphy_ipa()
110 (dev->phy.n->ipa5g_on && band == IEEE80211_BAND_5GHZ)); in b43_nphy_ipa()
166 struct b43_phy *phy = &dev->phy; in b43_nphy_rf_ctl_override_rev7() local
176 if (phy->rev >= 19 || phy->rev < 3) { in b43_nphy_rf_ctl_override_rev7()
213 struct b43_phy *phy = &dev->phy; in b43_nphy_rf_ctl_override_one_to_many() local
216 B43_WARN_ON(phy->rev < 7); in b43_nphy_rf_ctl_override_one_to_many()
262 if (dev->phy.rev >= 3) { in b43_nphy_rf_ctl_override()
405 if (dev->phy.rev >= 7) { in b43_nphy_rf_ctl_intc_override()
411 B43_WARN_ON(dev->phy.rev < 3); in b43_nphy_rf_ctl_intc_override()
558 struct b43_phy *phy = &dev->phy; in b43_nphy_stay_in_carrier_search() local
[all …]
Dtables_nphy.c3530 if (dev->phy.do_full_init) { in b43_nphy_tables_init_rev16()
3542 if (dev->phy.do_full_init) { in b43_nphy_tables_init_rev7()
3575 if (dev->phy.do_full_init) { in b43_nphy_tables_init_rev3()
3604 if (dev->phy.do_full_init) { in b43_nphy_tables_init_rev0()
3639 if (dev->phy.rev >= 16) in b43_nphy_tables_init()
3641 else if (dev->phy.rev >= 7) in b43_nphy_tables_init()
3643 else if (dev->phy.rev >= 3) in b43_nphy_tables_init()
3652 struct b43_phy *phy = &dev->phy; in b43_nphy_get_ipa_gain_table() local
3655 switch (phy->rev) { in b43_nphy_get_ipa_gain_table()
3657 if (phy->radio_rev == 14) in b43_nphy_get_ipa_gain_table()
[all …]
Dradio_2057.c539 struct b43_phy *phy = &dev->phy; in r2057_upload_inittabs() local
543 switch (phy->rev) { in r2057_upload_inittabs()
549 if (phy->radio_rev == 5) { in r2057_upload_inittabs()
552 } else if (phy->radio_rev == 7) { in r2057_upload_inittabs()
558 if (phy->radio_rev == 5) { in r2057_upload_inittabs()
564 if (phy->radio_rev == 9) { in r2057_upload_inittabs()
570 if (phy->radio_rev == 14) { in r2057_upload_inittabs()
589 struct b43_phy *phy = &dev->phy; in r2057_get_chantabent_rev7() local
597 switch (phy->rev) { in r2057_get_chantabent_rev7()
599 if (phy->radio_rev == 5) { in r2057_get_chantabent_rev7()
[all …]
Dppr.c82 struct b43_phy *phy = &dev->phy; in b43_ppr_load_max_from_sprom() local
154 if (phy->type == B43_PHYTYPE_N && phy->rev >= 3) in b43_ppr_load_max_from_sprom()
160 if (phy->type == B43_PHYTYPE_N && phy->rev >= 3) in b43_ppr_load_max_from_sprom()
178 if (phy->type == B43_PHYTYPE_N && phy->rev >= 3) in b43_ppr_load_max_from_sprom()
184 if (phy->type == B43_PHYTYPE_N && phy->rev >= 3) in b43_ppr_load_max_from_sprom()
/linux-4.1.27/drivers/nfc/nxp-nci/
Di2c.c61 struct nxp_nci_i2c_phy *phy = (struct nxp_nci_i2c_phy *) phy_id; in nxp_nci_i2c_set_mode() local
63 gpio_set_value(phy->gpio_fw, (mode == NXP_NCI_MODE_FW) ? 1 : 0); in nxp_nci_i2c_set_mode()
64 gpio_set_value(phy->gpio_en, (mode != NXP_NCI_MODE_COLD) ? 1 : 0); in nxp_nci_i2c_set_mode()
68 phy->hard_fault = 0; in nxp_nci_i2c_set_mode()
76 struct nxp_nci_i2c_phy *phy = phy_id; in nxp_nci_i2c_write() local
77 struct i2c_client *client = phy->i2c_dev; in nxp_nci_i2c_write()
79 if (phy->hard_fault != 0) in nxp_nci_i2c_write()
80 return phy->hard_fault; in nxp_nci_i2c_write()
109 static int nxp_nci_i2c_fw_read(struct nxp_nci_i2c_phy *phy, in nxp_nci_i2c_fw_read() argument
112 struct i2c_client *client = phy->i2c_dev; in nxp_nci_i2c_fw_read()
[all …]
/linux-4.1.27/drivers/char/tpm/st33zp24/
Dspi.c115 struct st33zp24_spi_phy *phy = phy_id; in st33zp24_spi_send() local
116 struct spi_device *dev = phy->spi_device; in st33zp24_spi_send()
117 u8 *tx_buf = (u8 *)phy->spi_xfer.tx_buf; in st33zp24_spi_send()
118 u8 *rx_buf = phy->spi_xfer.rx_buf; in st33zp24_spi_send()
136 nbr_dummy_bytes = phy->latency; in st33zp24_spi_send()
139 phy->spi_xfer.len = total_length + nbr_dummy_bytes; in st33zp24_spi_send()
141 ret = spi_sync_transfer(dev, &phy->spi_xfer, 1); in st33zp24_spi_send()
161 struct st33zp24_spi_phy *phy = phy_id; in read8_reg() local
162 struct spi_device *dev = phy->spi_device; in read8_reg()
163 u8 *tx_buf = (u8 *)phy->spi_xfer.tx_buf; in read8_reg()
[all …]
Di2c.c47 struct st33zp24_i2c_phy *phy = phy_id; in write8_reg() local
49 phy->buf[0] = tpm_register; in write8_reg()
50 memcpy(phy->buf + 1, tpm_data, tpm_size); in write8_reg()
51 return i2c_master_send(phy->client, phy->buf, tpm_size + 1); in write8_reg()
64 struct st33zp24_i2c_phy *phy = phy_id; in read8_reg() local
69 status = write8_reg(phy, tpm_register, &data, 1); in read8_reg()
71 status = i2c_master_recv(phy->client, tpm_data, tpm_size); in read8_reg()
112 static int st33zp24_i2c_of_request_resources(struct st33zp24_i2c_phy *phy) in st33zp24_i2c_of_request_resources() argument
115 struct i2c_client *client = phy->client; in st33zp24_i2c_of_request_resources()
130 phy->io_lpcpd = -1; in st33zp24_i2c_of_request_resources()
[all …]
/linux-4.1.27/drivers/video/fbdev/omap2/dss/
Dhdmi_phy.c29 void hdmi_phy_dump(struct hdmi_phy_data *phy, struct seq_file *s) in hdmi_phy_dump() argument
32 hdmi_read_reg(phy->base, r)) in hdmi_phy_dump()
42 int hdmi_phy_parse_lanes(struct hdmi_phy_data *phy, const u32 *lanes) in hdmi_phy_parse_lanes() argument
71 phy->lane_function[lane] = i / 2; in hdmi_phy_parse_lanes()
72 phy->lane_polarity[lane] = pol; in hdmi_phy_parse_lanes()
78 static void hdmi_phy_configure_lanes(struct hdmi_phy_data *phy) in hdmi_phy_configure_lanes() argument
113 lane_cfg |= phy->lane_function[i] << ((3 - i) * 4); in hdmi_phy_configure_lanes()
115 pol_val |= phy->lane_polarity[0] << 0; in hdmi_phy_configure_lanes()
116 pol_val |= phy->lane_polarity[1] << 3; in hdmi_phy_configure_lanes()
117 pol_val |= phy->lane_polarity[2] << 2; in hdmi_phy_configure_lanes()
[all …]
/linux-4.1.27/net/ieee802154/
Dnl-phy.c37 u32 seq, int flags, struct wpan_phy *phy) in ieee802154_nl_fill_phy() argument
53 mutex_lock(&phy->pib_lock); in ieee802154_nl_fill_phy()
54 if (nla_put_string(msg, IEEE802154_ATTR_PHY_NAME, wpan_phy_name(phy)) || in ieee802154_nl_fill_phy()
55 nla_put_u8(msg, IEEE802154_ATTR_PAGE, phy->current_page) || in ieee802154_nl_fill_phy()
56 nla_put_u8(msg, IEEE802154_ATTR_CHANNEL, phy->current_channel)) in ieee802154_nl_fill_phy()
59 if (phy->channels_supported[i]) in ieee802154_nl_fill_phy()
60 buf[pages++] = phy->channels_supported[i] | (i << 27); in ieee802154_nl_fill_phy()
66 mutex_unlock(&phy->pib_lock); in ieee802154_nl_fill_phy()
72 mutex_unlock(&phy->pib_lock); in ieee802154_nl_fill_phy()
85 struct wpan_phy *phy; in ieee802154_list_phy() local
[all …]
Dcore.c56 int (*fn)(struct wpan_phy *phy, void *data);
63 struct wpan_phy *phy = container_of(dev, struct wpan_phy, dev); in wpan_phy_iter() local
65 return wpid->fn(phy, wpid->data); in wpan_phy_iter()
68 int wpan_phy_for_each(int (*fn)(struct wpan_phy *phy, void *data), in wpan_phy_for_each() argument
139 int wpan_phy_register(struct wpan_phy *phy) in wpan_phy_register() argument
141 struct cfg802154_registered_device *rdev = wpan_phy_to_rdev(phy); in wpan_phy_register()
145 ret = device_add(&phy->dev); in wpan_phy_register()
163 void wpan_phy_unregister(struct wpan_phy *phy) in wpan_phy_unregister() argument
165 struct cfg802154_registered_device *rdev = wpan_phy_to_rdev(phy); in wpan_phy_unregister()
188 device_del(&phy->dev); in wpan_phy_unregister()
[all …]
/linux-4.1.27/Documentation/devicetree/bindings/phy/
Dsamsung-phy.txt5 - compatible : should be "samsung,s5pv210-mipi-video-phy";
6 - #phy-cells : from the generic phy bindings, must be 1;
9 For "samsung,s5pv210-mipi-video-phy" compatible PHYs the second cell in
21 - "samsung,exynos5250-dp-video-phy"
22 - "samsung,exynos5420-dp-video-phy"
25 - #phy-cells : from the generic PHY bindings, must be 0;
32 - "samsung,exynos3250-usb2-phy"
33 - "samsung,exynos4210-usb2-phy"
34 - "samsung,exynos4x12-usb2-phy"
35 - "samsung,exynos5250-usb2-phy"
[all …]
Dsun9i-usb-phy.txt6 * allwinner,sun9i-a80-usb-phy
8 - #phy-cells : from the generic phy bindings, must be 0
11 - clocks : phandle + clock specifier for the phy clocks
13 * "phy" for normal USB
17 * "phy" for normal USB
21 - phy-supply : from the generic phy bindings, a phandle to a regulator that
28 usbphy1: phy@00a01800 {
29 compatible = "allwinner,sun9i-a80-usb-phy";
33 clock-names = "hsic_480M", "hsic_12M", "phy";
35 reset-names = "hsic", "phy";
[all …]
Dsun4i-usb-phy.txt6 * allwinner,sun4i-a10-usb-phy
7 * allwinner,sun5i-a13-usb-phy
8 * allwinner,sun6i-a31-usb-phy
9 * allwinner,sun7i-a20-usb-phy
15 - #phy-cells : from the generic phy bindings, must be 1
16 - clocks : phandle + clock specifier for the phy clocks
27 usbphy: phy@0x01c13400 {
28 #phy-cells = <1>;
29 compatible = "allwinner,sun4i-a10-usb-phy";
30 /* phy base regs, phy1 pmu reg, phy2 pmu reg */
Dphy-stih41x-usb.txt4 This file contains documentation for the usb phy found in STiH415/6 SoCs from
8 - compatible : should be "st,stih416-usb-phy" or "st,stih415-usb-phy"
13 - #phy-cells : must be 0 for this phy
14 See: Documentation/devicetree/bindings/phy/phy-bindings.txt
19 compatible = "st,stih416-usb-phy";
20 #phy-cell = <0>;
Dti-phy.txt7 "ti,control-phy-otghs" - if it has otghs_control mailbox register as on OMAP4.
8 "ti,control-phy-usb2" - if it has Power down bit in control_dev_conf register
10 "ti,control-phy-pipe3" - if it has DPLL and individual Rx & Tx power control
12 "ti,control-phy-pcie" - for pcie to support external clock for pcie and to
15 "ti,control-phy-usb2-dra7" - if it has power down register like USB2 PHY on
17 "ti,control-phy-usb2-am437" - if it has power down register like USB2 PHY on
20 - reg-names: "otghs_control" for control-phy-otghs
21 "power", "pcie_pcs" and "control_sma" for control-phy-pcie
25 compatible = "ti,control-phy-otghs";
35 - #phy-cells: determine the number of cells that should be given in the
[all …]
Dbrcm,kona-usb2-phy.txt4 - compatible: brcm,kona-usb2-phy
6 - #phy-cells: must be 0
7 Refer to phy/phy-bindings.txt for the generic PHY binding properties
11 usbphy: usb-phy@3f130000 {
12 compatible = "brcm,kona-usb2-phy";
14 #phy-cells = <0>;
Dberlin-sata-phy.txt6 "marvell,berlin2-sata-phy"
7 "marvell,berlin2q-sata-phy"
10 - phy-cells: from the generic PHY bindings, must be 1
21 sata_phy: phy@f7e900a0 {
22 compatible = "marvell,berlin2q-sata-phy";
27 #phy-cells = <1>;
29 sata-phy@0 {
33 sata-phy@1 {
Dqcom-dwc3-usb-phy.txt9 - "qcom,dwc3-hs-usb-phy" for High Speed Synopsis PHY controller
10 - "qcom,dwc3-ss-usb-phy" for Super Speed Synopsis PHY controller
12 - #phy-cells: must be zero
21 phy@100f8800 {
22 compatible = "qcom,dwc3-hs-usb-phy";
26 #phy-cells = <0>;
31 phy@100f8830 {
32 compatible = "qcom,dwc3-ss-usb-phy";
36 #phy-cells = <0>;
Dphy-mvebu.txt3 Power control for the SATA phy found on Marvell MVEBU SoCs.
5 This document extends the binding described in phy-bindings.txt
10 - compatible : Should be "marvell,mvebu-sata-phy"
15 sata-phy@84000 {
16 compatible = "marvell,mvebu-sata-phy";
20 #phy-cells = <0>;
35 - #phy-cells : from the generic phy bindings, must be 1. Possible
42 #phy-cells = <1>
Dhix5hd2-phy.txt5 - compatible: should be "hisilicon,hix5hd2-sata-phy"
7 - #phy-cells: must be 0
8 Refer to phy/phy-bindings.txt for the generic PHY binding properties
16 sata_phy: phy@f9900000 {
17 compatible = "hisilicon,hix5hd2-sata-phy";
19 #phy-cells = <0>;
Ddm816x-phy.txt5 - compatible : should be "ti,dm816x-usb-phy"
7 - reg-names : name for the phy registers
11 - #phy-cells : from the generic PHY bindings, must be 1
16 usb_phy0: usb-phy@20 {
17 compatible = "ti,dm8168-usb-phy";
19 reg-names = "phy";
22 #phy-cells = <0>;
Dphy-bindings.txt2 information about PHY subsystem refer to Documentation/phy.txt
8 #phy-cells: Number of cells in a PHY specifier; The meaning of all those
9 cells is defined by the binding for the phy node. The PHY
14 phy-supply: Phandle to a regulator that provides power to the PHY. This
19 phys: phy {
24 #phy-cells = <1>;
38 phy-names : the names of the PHY corresponding to the PHYs present in the
48 phy-names = "usb2phy", "usb3phy";
63 phy-names = "usbphy";
69 device defined previously. Note that the phy handle has an additional specifier
Dqcom-apq8064-sata-phy.txt8 - compatible: compatible list, contains "qcom,apq8064-sata-phy".
10 - #phy-cells: must be zero
13 - clock-names: must be "cfg" for phy config clock.
16 sata_phy: sata-phy@1b400000 {
17 compatible = "qcom,apq8064-sata-phy";
23 #phy-cells = <0>;
Dberlin-usb-phy.txt4 - compatible: "marvell,berlin2-usb-phy" or "marvell,berlin2cd-usb-phy"
11 usb-phy@f774000 {
12 compatible = "marvell,berlin2-usb-phy";
14 #phy-cells = <0>;
Drcar-gen2-phy.txt7 - compatible: "renesas,usb-phy-r8a7790" if the device is a part of R8A7790 SoC.
8 "renesas,usb-phy-r8a7791" if the device is a part of R8A7791 SoC.
19 - #phy-cells: see phy-bindings.txt in the same directory, must be <1>.
35 usb-phy@e6590100 {
36 compatible = "renesas,usb-phy-r8a7790";
45 #phy-cells = <1>;
49 #phy-cells = <1>;
Drockchip-usb-phy.txt4 - compatible: rockchip,rk3288-usb-phy
15 - #phy-cells: should be 0
22 - clocks : phandle + clock specifier for the phy clocks
27 usbphy: phy {
28 compatible = "rockchip,rk3288-usb-phy";
34 #phy-cells = <0>;
Dqcom-ipq806x-sata-phy.txt8 - compatible: compatible list, contains "qcom,ipq806x-sata-phy"
10 - #phy-cells: must be zero
15 sata_phy: sata-phy@1b400000 {
16 compatible = "qcom,ipq806x-sata-phy";
22 #phy-cells = <0>;
Dst-spear-miphy.txt4 ST Microelectronics SPEAr miphy is a phy controller supporting PCIe and SATA.
10 - #phy-cells : from the generic PHY bindings, must be 1.
11 - cell[1]: 0 if phy used for SATA, 1 for PCIe.
14 - phy-id: Instance id of the phy. Only required when there are multiple phys
Dphy-miphy365x.txt8 - compatible : Should be "st,miphy365x-phy"
21 - #phy-cells : Should be 1 (See second example)
42 compatible = "st,miphy365x-phy";
51 #phy-cells = <1>;
58 #phy-cells = <1>;
63 Specifying phy control of devices
67 property, containing a phandle to the phy port node and a device type.
71 #include <dt-bindings/phy/phy.h>
Dapm-xgene-phy.txt7 - compatible : Shall be "apm,xgene-phy".
9 - #phy-cells : Shall be 1 as it expects one argument for setting
60 phy1: phy@1f21a000 {
61 compatible = "apm,xgene-phy";
63 #phy-cells = <1>;
67 phy2: phy@1f22a000 {
68 compatible = "apm,xgene-phy";
70 #phy-cells = <1>;
74 phy3: phy@1f23a000 {
75 compatible = "apm,xgene-phy";
[all …]
/linux-4.1.27/drivers/of/
Dof_mdio.c46 struct phy_device *phy; in of_mdiobus_register_phy() local
55 phy = phy_device_create(mdio, addr, phy_id, 0, NULL); in of_mdiobus_register_phy()
57 phy = get_phy_device(mdio, addr, is_c45); in of_mdiobus_register_phy()
58 if (!phy || IS_ERR(phy)) in of_mdiobus_register_phy()
63 phy->irq = rc; in of_mdiobus_register_phy()
68 phy->irq = mdio->irq[addr]; in of_mdiobus_register_phy()
74 phy->dev.of_node = child; in of_mdiobus_register_phy()
78 rc = phy_device_register(phy); in of_mdiobus_register_phy()
80 phy_device_free(phy); in of_mdiobus_register_phy()
223 struct phy_device *phy = of_phy_find_device(phy_np); in of_phy_connect() local
[all …]
/linux-4.1.27/drivers/scsi/aic94xx/
Daic94xx_scb.c54 static void get_lrate_mode(struct asd_phy *phy, u8 oob_mode) in get_lrate_mode() argument
56 struct sas_phy *sas_phy = phy->sas_phy.phy; in get_lrate_mode()
61 phy->sas_phy.linkrate = SAS_LINK_RATE_6_0_GBPS; in get_lrate_mode()
62 phy->sas_phy.phy->negotiated_linkrate = SAS_LINK_RATE_6_0_GBPS; in get_lrate_mode()
65 phy->sas_phy.linkrate = SAS_LINK_RATE_3_0_GBPS; in get_lrate_mode()
66 phy->sas_phy.phy->negotiated_linkrate = SAS_LINK_RATE_3_0_GBPS; in get_lrate_mode()
69 phy->sas_phy.linkrate = SAS_LINK_RATE_1_5_GBPS; in get_lrate_mode()
70 phy->sas_phy.phy->negotiated_linkrate = SAS_LINK_RATE_1_5_GBPS; in get_lrate_mode()
73 sas_phy->negotiated_linkrate = phy->sas_phy.linkrate; in get_lrate_mode()
76 sas_phy->maximum_linkrate = phy->phy_desc->max_sas_lrate; in get_lrate_mode()
[all …]
Daic94xx_hwi.c71 static void asd_init_phy_identify(struct asd_phy *phy) in asd_init_phy_identify() argument
73 phy->identify_frame = phy->id_frm_tok->vaddr; in asd_init_phy_identify()
75 memset(phy->identify_frame, 0, sizeof(*phy->identify_frame)); in asd_init_phy_identify()
77 phy->identify_frame->dev_type = SAS_END_DEVICE; in asd_init_phy_identify()
78 if (phy->sas_phy.role & PHY_ROLE_INITIATOR) in asd_init_phy_identify()
79 phy->identify_frame->initiator_bits = phy->sas_phy.iproto; in asd_init_phy_identify()
80 if (phy->sas_phy.role & PHY_ROLE_TARGET) in asd_init_phy_identify()
81 phy->identify_frame->target_bits = phy->sas_phy.tproto; in asd_init_phy_identify()
82 memcpy(phy->identify_frame->sas_addr, phy->phy_desc->sas_addr, in asd_init_phy_identify()
84 phy->identify_frame->phy_id = phy->sas_phy.id; in asd_init_phy_identify()
[all …]
/linux-4.1.27/drivers/nfc/microread/
Di2c.c119 struct microread_i2c_phy *phy = phy_id; in microread_i2c_write() local
120 struct i2c_client *client = phy->i2c_dev; in microread_i2c_write()
122 if (phy->hard_fault != 0) in microread_i2c_write()
123 return phy->hard_fault; in microread_i2c_write()
151 static int microread_i2c_read(struct microread_i2c_phy *phy, in microread_i2c_read() argument
157 struct i2c_client *client = phy->i2c_dev; in microread_i2c_read()
213 struct microread_i2c_phy *phy = phy_id; in microread_i2c_irq_thread_fn() local
218 if (!phy || irq != phy->i2c_dev->irq) { in microread_i2c_irq_thread_fn()
223 client = phy->i2c_dev; in microread_i2c_irq_thread_fn()
225 if (phy->hard_fault != 0) in microread_i2c_irq_thread_fn()
[all …]
Dmei.c35 struct nfc_mei_phy *phy; in microread_mei_probe() local
40 phy = nfc_mei_phy_alloc(device); in microread_mei_probe()
41 if (!phy) { in microread_mei_probe()
46 r = microread_probe(phy, &mei_phy_ops, LLC_NOP_NAME, in microread_mei_probe()
48 &phy->hdev); in microread_mei_probe()
50 nfc_mei_phy_free(phy); in microread_mei_probe()
60 struct nfc_mei_phy *phy = mei_cl_get_drvdata(device); in microread_mei_remove() local
62 microread_remove(phy->hdev); in microread_mei_remove()
64 nfc_mei_phy_free(phy); in microread_mei_remove()
/linux-4.1.27/drivers/gpu/drm/msm/dsi/
Ddsi_phy.c41 int (*enable)(struct msm_dsi_phy *phy, bool is_dual_panel,
43 int (*disable)(struct msm_dsi_phy *phy);
173 static void dsi_28nm_phy_regulator_ctrl(struct msm_dsi_phy *phy, bool enable) in dsi_28nm_phy_regulator_ctrl() argument
175 void __iomem *base = phy->reg_base; in dsi_28nm_phy_regulator_ctrl()
192 static int dsi_28nm_phy_enable(struct msm_dsi_phy *phy, bool is_dual_panel, in dsi_28nm_phy_enable() argument
195 struct dsi_dphy_timing *timing = &phy->timing; in dsi_28nm_phy_enable()
197 void __iomem *base = phy->base; in dsi_28nm_phy_enable()
208 dsi_28nm_phy_regulator_ctrl(phy, true); in dsi_28nm_phy_enable()
265 if (is_dual_panel && (phy->id != DSI_CLOCK_MASTER)) in dsi_28nm_phy_enable()
273 static int dsi_28nm_phy_disable(struct msm_dsi_phy *phy) in dsi_28nm_phy_disable() argument
[all …]
/linux-4.1.27/drivers/usb/renesas_usbhs/
Drcar2.c26 struct phy *phy = phy_get(&pdev->dev, "usb"); in usbhs_rcar2_hardware_init() local
28 if (IS_ERR(phy)) in usbhs_rcar2_hardware_init()
29 return PTR_ERR(phy); in usbhs_rcar2_hardware_init()
31 priv->phy = phy; in usbhs_rcar2_hardware_init()
52 if (priv->phy) { in usbhs_rcar2_hardware_exit()
53 phy_put(priv->phy); in usbhs_rcar2_hardware_exit()
54 priv->phy = NULL; in usbhs_rcar2_hardware_exit()
71 if (priv->phy) { in usbhs_rcar2_power_ctrl()
73 retval = phy_init(priv->phy); in usbhs_rcar2_power_ctrl()
76 retval = phy_power_on(priv->phy); in usbhs_rcar2_power_ctrl()
[all …]
/linux-4.1.27/drivers/dma/
Ds3c24xx-dma.c221 struct s3c24xx_dma_phy *phy; member
255 static int s3c24xx_dma_phy_busy(struct s3c24xx_dma_phy *phy) in s3c24xx_dma_phy_busy() argument
257 unsigned int val = readl(phy->base + S3C24XX_DSTAT); in s3c24xx_dma_phy_busy()
262 struct s3c24xx_dma_phy *phy) in s3c24xx_dma_phy_valid() argument
277 phyvalid = (cdata->chansel >> (phy->id * S3C24XX_CHANSEL_WIDTH)); in s3c24xx_dma_phy_valid()
294 struct s3c24xx_dma_phy *phy = NULL; in s3c24xx_dma_get_phy() local
303 phy = &s3cdma->phy_chans[i]; in s3c24xx_dma_get_phy()
305 if (!phy->valid) in s3c24xx_dma_get_phy()
308 if (!s3c24xx_dma_phy_valid(s3cchan, phy)) in s3c24xx_dma_get_phy()
311 spin_lock_irqsave(&phy->lock, flags); in s3c24xx_dma_get_phy()
[all …]
Dmmp_pdma.c98 struct mmp_pdma_phy *phy; member
131 struct mmp_pdma_phy *phy; member
144 static void set_desc(struct mmp_pdma_phy *phy, dma_addr_t addr) in set_desc() argument
146 u32 reg = (phy->idx << 4) + DDADR; in set_desc()
148 writel(addr, phy->base + reg); in set_desc()
151 static void enable_chan(struct mmp_pdma_phy *phy) in enable_chan() argument
155 if (!phy->vchan) in enable_chan()
158 reg = DRCMR(phy->vchan->drcmr); in enable_chan()
159 writel(DRCMR_MAPVLD | phy->idx, phy->base + reg); in enable_chan()
161 dalgn = readl(phy->base + DALGN); in enable_chan()
[all …]
Dk3dma.c80 struct k3_dma_phy *phy; member
101 struct k3_dma_phy *phy; member
115 static void k3_dma_pause_dma(struct k3_dma_phy *phy, bool on) in k3_dma_pause_dma() argument
120 val = readl_relaxed(phy->base + CX_CFG); in k3_dma_pause_dma()
122 writel_relaxed(val, phy->base + CX_CFG); in k3_dma_pause_dma()
124 val = readl_relaxed(phy->base + CX_CFG); in k3_dma_pause_dma()
126 writel_relaxed(val, phy->base + CX_CFG); in k3_dma_pause_dma()
130 static void k3_dma_terminate_chan(struct k3_dma_phy *phy, struct k3_dma_dev *d) in k3_dma_terminate_chan() argument
134 k3_dma_pause_dma(phy, false); in k3_dma_terminate_chan()
136 val = 0x1 << phy->idx; in k3_dma_terminate_chan()
[all …]
/linux-4.1.27/drivers/gpu/drm/msm/hdmi/
Dhdmi_phy_8x74.c28 static void phy_write(struct hdmi_phy_8x74 *phy, u32 reg, u32 data) in phy_write() argument
30 msm_writel(data, phy->mmio + reg); in phy_write()
38 static void hdmi_phy_8x74_destroy(struct hdmi_phy *phy) in hdmi_phy_8x74_destroy() argument
40 struct hdmi_phy_8x74 *phy_8x74 = to_hdmi_phy_8x74(phy); in hdmi_phy_8x74_destroy()
44 static void hdmi_phy_8x74_reset(struct hdmi_phy *phy) in hdmi_phy_8x74_reset() argument
46 struct hdmi_phy_8x74 *phy_8x74 = to_hdmi_phy_8x74(phy); in hdmi_phy_8x74_reset()
97 static void hdmi_phy_8x74_powerup(struct hdmi_phy *phy, in hdmi_phy_8x74_powerup() argument
100 struct hdmi_phy_8x74 *phy_8x74 = to_hdmi_phy_8x74(phy); in hdmi_phy_8x74_powerup()
112 static void hdmi_phy_8x74_powerdown(struct hdmi_phy *phy) in hdmi_phy_8x74_powerdown() argument
114 struct hdmi_phy_8x74 *phy_8x74 = to_hdmi_phy_8x74(phy); in hdmi_phy_8x74_powerdown()
[all …]
Dhdmi_phy_8x60.c26 static void hdmi_phy_8x60_destroy(struct hdmi_phy *phy) in hdmi_phy_8x60_destroy() argument
28 struct hdmi_phy_8x60 *phy_8x60 = to_hdmi_phy_8x60(phy); in hdmi_phy_8x60_destroy()
32 static void hdmi_phy_8x60_reset(struct hdmi_phy *phy) in hdmi_phy_8x60_reset() argument
34 struct hdmi_phy_8x60 *phy_8x60 = to_hdmi_phy_8x60(phy); in hdmi_phy_8x60_reset()
63 static void hdmi_phy_8x60_powerup(struct hdmi_phy *phy, in hdmi_phy_8x60_powerup() argument
66 struct hdmi_phy_8x60 *phy_8x60 = to_hdmi_phy_8x60(phy); in hdmi_phy_8x60_powerup()
150 static void hdmi_phy_8x60_powerdown(struct hdmi_phy *phy) in hdmi_phy_8x60_powerdown() argument
152 struct hdmi_phy_8x60 *phy_8x60 = to_hdmi_phy_8x60(phy); in hdmi_phy_8x60_powerdown()
193 struct hdmi_phy *phy = NULL; in hdmi_phy_8x60_init() local
202 phy = &phy_8x60->base; in hdmi_phy_8x60_init()
[all …]
Dhdmi_phy_8960.c423 static void hdmi_phy_8960_destroy(struct hdmi_phy *phy) in hdmi_phy_8960_destroy() argument
425 struct hdmi_phy_8960 *phy_8960 = to_hdmi_phy_8960(phy); in hdmi_phy_8960_destroy()
429 static void hdmi_phy_8960_reset(struct hdmi_phy *phy) in hdmi_phy_8960_reset() argument
431 struct hdmi_phy_8960 *phy_8960 = to_hdmi_phy_8960(phy); in hdmi_phy_8960_reset()
480 static void hdmi_phy_8960_powerup(struct hdmi_phy *phy, in hdmi_phy_8960_powerup() argument
483 struct hdmi_phy_8960 *phy_8960 = to_hdmi_phy_8960(phy); in hdmi_phy_8960_powerup()
502 static void hdmi_phy_8960_powerdown(struct hdmi_phy *phy) in hdmi_phy_8960_powerdown() argument
504 struct hdmi_phy_8960 *phy_8960 = to_hdmi_phy_8960(phy); in hdmi_phy_8960_powerdown()
522 struct hdmi_phy *phy = NULL; in hdmi_phy_8960_init() local
539 phy = &phy_8960->base; in hdmi_phy_8960_init()
[all …]
/linux-4.1.27/Documentation/devicetree/bindings/net/
Dfsl-fec.txt7 - phy-mode : See ethernet.txt file in the same directory
10 - phy-reset-gpios : Should specify the gpio for phy reset
11 - phy-reset-duration : Reset duration in milliseconds. Should present
12 only if property "phy-reset-gpios" is available. Missing the property
15 - phy-supply : regulator that powers the Ethernet PHY.
16 - phy-handle : phandle to the PHY device connected to this device.
18 Use instead of phy-handle.
29 - mdio : specifies the mdio bus in the FEC, used as a container for phy nodes
30 according to phy.txt in the same directory
38 phy-mode = "mii";
[all …]
Dhisilicon-hip04-net.txt13 - phy-mode: see ethernet.txt [1].
16 - phy-handle: see ethernet.txt [1].
37 [2] Documentation/devicetree/bindings/net/phy.txt
46 phy0: ethernet-phy@0 {
47 compatible = "ethernet-phy-ieee802.3-c22";
52 phy1: ethernet-phy@1 {
53 compatible = "ethernet-phy-ieee802.3-c22";
68 phy-mode = "mii";
76 phy-mode = "sgmii";
78 phy-handle = <&phy0>;
[all …]
Daltera_tse.txt24 - phy-mode: See ethernet.txt in the same directory.
25 - phy-handle: See ethernet.txt in the same directory.
26 - phy-addr: See ethernet.txt in the same directory. A configuration should
27 include phy-handle or phy-addr.
35 - mdio device tree subnode: When the TSE has a phy connected to its local
43 For each phy on the mdio bus, there must be a node with the following
46 - reg: phy id used to communicate to phy.
47 - device_type: Must be "ethernet-phy".
72 phy-mode = "gmii";
75 phy-handle = <&phy0>;
[all …]
Dcpsw-phy-sel.txt5 - compatible : Should be "ti,am3352-cpsw-phy-sel" for am335x platform and
6 "ti,dra7xx-cpsw-phy-sel" for dra7xx platform
7 "ti,am43xx-cpsw-phy-sel" for am43xx platform
18 phy_sel: cpsw-phy-sel@44e10650 {
19 compatible = "ti,am3352-cpsw-phy-sel";
25 phy_sel: cpsw-phy-sel@44e10650 {
26 compatible = "ti,am3352-cpsw-phy-sel";
Dhisilicon-hix5hd2-gmac.txt11 - phy-mode: see ethernet.txt [1].
12 - phy-handle: see ethernet.txt [1].
16 - PHY subnode: inherits from phy binding [2]
19 [2] Documentation/devicetree/bindings/net/phy.txt
28 phy-mode = "mii";
29 phy-handle = <&phy2>;
33 phy2: ethernet-phy@2 {
Dphy.txt12 - reg : The ID number for the phy, usually a small integer
17 "ethernet-phy-ieee802.3-c22" or "ethernet-phy-ieee802.3-c45" for
23 If the phy's identifier is known then the list may contain an entry
24 of the form: "ethernet-phy-idAAAA.BBBB" where
35 ethernet-phy@0 {
36 compatible = "ethernet-phy-id0141.0e90", "ethernet-phy-ieee802.3-c22";
Demac_rockchip.txt10 - phy: see ethernet.txt file in the same directory.
11 - phy-mode: see ethernet.txt file in the same directory.
14 - phy-supply: phandle to a regulator if the PHY needs one
20 data to and from the phy.
41 phy = <&phy0>;
42 phy-mode = "rmii";
43 phy-supply = <&vcc_rmii>;
47 phy0: ethernet-phy@0 {
Dethernet.txt12 - phy-mode: string, operation mode of the PHY interface; supported values are
16 - phy-connection-type: the same as "phy-mode" property but described in ePAPR;
17 - phy-handle: phandle, specifies a reference to a node representing a PHY
19 - phy: the same as "phy-handle" property, not recommended for new bindings.
20 - phy-device: the same as "phy-handle" property, not recommended for new
34 They are described in the phy.txt file in this same directory.
/linux-4.1.27/net/mac802154/
Dmain.c57 struct wpan_phy *phy; in ieee802154_alloc_hw() local
87 phy = wpan_phy_new(&mac802154_config_ops, priv_size); in ieee802154_alloc_hw()
88 if (!phy) { in ieee802154_alloc_hw()
93 phy->privid = mac802154_wpan_phy_privid; in ieee802154_alloc_hw()
95 local = wpan_phy_priv(phy); in ieee802154_alloc_hw()
96 local->phy = phy; in ieee802154_alloc_hw()
97 local->hw.phy = local->phy; in ieee802154_alloc_hw()
122 wpan_phy_free(local->phy); in ieee802154_free_hw()
145 create_singlethread_workqueue(wpan_phy_name(local->phy)); in ieee802154_register_hw()
154 wpan_phy_set_dev(local->phy, local->hw.parent); in ieee802154_register_hw()
[all …]
/linux-4.1.27/drivers/staging/vt6655/
Dbaseband.c1781 u16 tx_rate, u8 pkt_type, struct vnt_phy_field *phy) in vnt_get_phy_field() argument
1796 phy->signal = 0x00; in vnt_get_phy_field()
1803 phy->signal = 0x09; in vnt_get_phy_field()
1805 phy->signal = 0x01; in vnt_get_phy_field()
1816 phy->signal = 0x0a; in vnt_get_phy_field()
1818 phy->signal = 0x02; in vnt_get_phy_field()
1833 phy->signal = 0x0b; in vnt_get_phy_field()
1835 phy->signal = 0x03; in vnt_get_phy_field()
1840 phy->signal = 0x9b; in vnt_get_phy_field()
1842 phy->signal = 0x8b; in vnt_get_phy_field()
[all …]
/linux-4.1.27/drivers/usb/host/
Dehci-omap.c70 struct usb_phy *phy[OMAP3_HS_USB_PORTS]; /* one PHY for each port */ member
171 struct usb_phy *phy; in ehci_hcd_omap_probe() local
175 phy = devm_usb_get_phy_by_phandle(dev, "phys", i); in ehci_hcd_omap_probe()
177 phy = devm_usb_get_phy_dev(dev, i); in ehci_hcd_omap_probe()
178 if (IS_ERR(phy)) { in ehci_hcd_omap_probe()
183 ret = PTR_ERR(phy); in ehci_hcd_omap_probe()
189 omap->phy[i] = phy; in ehci_hcd_omap_probe()
192 usb_phy_init(omap->phy[i]); in ehci_hcd_omap_probe()
194 usb_phy_set_suspend(omap->phy[i], 0); in ehci_hcd_omap_probe()
227 if (!omap->phy[i] || in ehci_hcd_omap_probe()
[all …]
Dohci-exynos.c38 struct phy *phy[PHY_NUMBER]; member
45 struct phy *phy; in exynos_ohci_get_phy() local
64 phy = devm_of_phy_get(dev, child, NULL); in exynos_ohci_get_phy()
65 exynos_ohci->phy[phy_number] = phy; in exynos_ohci_get_phy()
66 if (IS_ERR(phy)) { in exynos_ohci_get_phy()
67 ret = PTR_ERR(phy); in exynos_ohci_get_phy()
89 if (!IS_ERR(exynos_ohci->phy[i])) in exynos_ohci_phy_enable()
90 ret = phy_power_on(exynos_ohci->phy[i]); in exynos_ohci_phy_enable()
93 if (!IS_ERR(exynos_ohci->phy[i])) in exynos_ohci_phy_enable()
94 phy_power_off(exynos_ohci->phy[i]); in exynos_ohci_phy_enable()
[all …]
Dehci-orion.c56 struct phy *phy; member
224 priv->phy = devm_phy_optional_get(&pdev->dev, "usb"); in ehci_orion_drv_probe()
225 if (IS_ERR(priv->phy)) { in ehci_orion_drv_probe()
226 err = PTR_ERR(priv->phy); in ehci_orion_drv_probe()
230 err = phy_init(priv->phy); in ehci_orion_drv_probe()
234 err = phy_power_on(priv->phy); in ehci_orion_drv_probe()
274 if (!IS_ERR(priv->phy)) in ehci_orion_drv_probe()
275 phy_power_off(priv->phy); in ehci_orion_drv_probe()
277 if (!IS_ERR(priv->phy)) in ehci_orion_drv_probe()
278 phy_exit(priv->phy); in ehci_orion_drv_probe()
[all …]
Dehci-exynos.c47 struct phy *phy[PHY_NUMBER]; member
56 struct phy *phy; in exynos_ehci_get_phy() local
75 phy = devm_of_phy_get(dev, child, NULL); in exynos_ehci_get_phy()
76 exynos_ehci->phy[phy_number] = phy; in exynos_ehci_get_phy()
77 if (IS_ERR(phy)) { in exynos_ehci_get_phy()
78 ret = PTR_ERR(phy); in exynos_ehci_get_phy()
100 if (!IS_ERR(exynos_ehci->phy[i])) in exynos_ehci_phy_enable()
101 ret = phy_power_on(exynos_ehci->phy[i]); in exynos_ehci_phy_enable()
104 if (!IS_ERR(exynos_ehci->phy[i])) in exynos_ehci_phy_enable()
105 phy_power_off(exynos_ehci->phy[i]); in exynos_ehci_phy_enable()
[all …]
/linux-4.1.27/include/net/
Dcfg802154.h142 static inline void wpan_phy_set_dev(struct wpan_phy *phy, struct device *dev) in wpan_phy_set_dev() argument
144 phy->dev.parent = dev; in wpan_phy_set_dev()
147 int wpan_phy_register(struct wpan_phy *phy);
148 void wpan_phy_unregister(struct wpan_phy *phy);
149 void wpan_phy_free(struct wpan_phy *phy);
151 int wpan_phy_for_each(int (*fn)(struct wpan_phy *phy, void *data), void *data);
153 static inline void *wpan_phy_priv(struct wpan_phy *phy) in wpan_phy_priv() argument
155 BUG_ON(!phy); in wpan_phy_priv()
156 return &phy->priv; in wpan_phy_priv()
161 static inline void wpan_phy_put(struct wpan_phy *phy) in wpan_phy_put() argument
[all …]
/linux-4.1.27/drivers/scsi/mpt3sas/
Dmpt3sas_transport.c504 dev_printk(KERN_INFO, &mpt3sas_phy->phy->dev, in _transport_delete_phy()
510 sas_port_delete_phy(mpt3sas_port->port, mpt3sas_phy->phy); in _transport_delete_phy()
528 dev_printk(KERN_INFO, &mpt3sas_phy->phy->dev, in _transport_add_phy()
534 sas_port_add_phy(mpt3sas_port->port, mpt3sas_phy->phy); in _transport_add_phy()
624 if (sas_node->phy[i].remote_identify.sas_address != sas_address) in _transport_sanity_check()
626 if (sas_node->phy[i].phy_belongs_to_port == 1) in _transport_sanity_check()
628 &sas_node->phy[i]); in _transport_sanity_check()
693 if (sas_node->phy[i].remote_identify.sas_address != in mpt3sas_transport_port_add()
696 list_add_tail(&sas_node->phy[i].port_siblings, in mpt3sas_transport_port_add()
722 sas_port_add_phy(port, mpt3sas_phy->phy); in mpt3sas_transport_port_add()
[all …]
/linux-4.1.27/drivers/scsi/mvsas/
Dmv_sas.c82 struct asd_sas_phy *phy; in mvs_find_dev_mvi() local
86 phy = container_of(sha->sas_port[i]->phy_list.next, in mvs_find_dev_mvi()
90 if (sha->sas_phy[j] == phy) in mvs_find_dev_mvi()
114 struct asd_sas_phy *phy; in mvs_find_dev_phyno() local
115 list_for_each_entry(phy, in mvs_find_dev_phyno()
119 if (sha->sas_phy[j] == phy) in mvs_find_dev_phyno()
237 struct mvs_phy *phy = &mvi->phy[i]; in mvs_bytes_dmaed() local
238 struct asd_sas_phy *sas_phy = &phy->sas_phy; in mvs_bytes_dmaed()
240 if (!phy->phy_attached) in mvs_bytes_dmaed()
243 if (!(phy->att_dev_info & PORT_DEV_TRGT_MASK) in mvs_bytes_dmaed()
[all …]
/linux-4.1.27/drivers/scsi/mpt2sas/
Dmpt2sas_transport.c512 dev_printk(KERN_INFO, &mpt2sas_phy->phy->dev, in _transport_delete_phy()
518 sas_port_delete_phy(mpt2sas_port->port, mpt2sas_phy->phy); in _transport_delete_phy()
536 dev_printk(KERN_INFO, &mpt2sas_phy->phy->dev, in _transport_add_phy()
542 sas_port_add_phy(mpt2sas_port->port, mpt2sas_phy->phy); in _transport_add_phy()
630 if (sas_node->phy[i].remote_identify.sas_address != sas_address) in _transport_sanity_check()
632 if (sas_node->phy[i].phy_belongs_to_port == 1) in _transport_sanity_check()
634 &sas_node->phy[i]); in _transport_sanity_check()
699 if (sas_node->phy[i].remote_identify.sas_address != in mpt2sas_transport_port_add()
702 list_add_tail(&sas_node->phy[i].port_siblings, in mpt2sas_transport_port_add()
728 sas_port_add_phy(port, mpt2sas_phy->phy); in mpt2sas_transport_port_add()
[all …]
/linux-4.1.27/drivers/net/ethernet/oki-semi/pch_gbe/
Dpch_gbe_phy.c109 struct pch_gbe_phy_info *phy = &hw->phy; in pch_gbe_phy_get_id() local
124 phy->id = (u32)phy_id1; in pch_gbe_phy_get_id()
125 phy->id = ((phy->id << 6) | ((phy_id2 & 0xFC00) >> 10)); in pch_gbe_phy_get_id()
126 phy->revision = (u32) (phy_id2 & 0x000F); in pch_gbe_phy_get_id()
129 phy->id, phy->revision); in pch_gbe_phy_get_id()
144 struct pch_gbe_phy_info *phy = &hw->phy; in pch_gbe_phy_read_reg_miic() local
153 *data = pch_gbe_mac_ctrl_miim(hw, phy->addr, PCH_GBE_HAL_MIIM_READ, in pch_gbe_phy_read_reg_miic()
169 struct pch_gbe_phy_info *phy = &hw->phy; in pch_gbe_phy_write_reg_miic() local
178 pch_gbe_mac_ctrl_miim(hw, phy->addr, PCH_GBE_HAL_MIIM_WRITE, in pch_gbe_phy_write_reg_miic()
276 switch (hw->phy.id) { in pch_gbe_phy_tx_clk_delay()
[all …]
/linux-4.1.27/drivers/staging/vt6656/
Dbaseband.c202 u16 tx_rate, u8 pkt_type, struct vnt_phy_field *phy) in vnt_get_phy_field() argument
217 phy->signal = 0x00; in vnt_get_phy_field()
224 phy->signal = 0x09; in vnt_get_phy_field()
226 phy->signal = 0x01; in vnt_get_phy_field()
237 phy->signal = 0x0a; in vnt_get_phy_field()
239 phy->signal = 0x02; in vnt_get_phy_field()
254 phy->signal = 0x0b; in vnt_get_phy_field()
256 phy->signal = 0x03; in vnt_get_phy_field()
261 phy->signal = 0x9b; in vnt_get_phy_field()
263 phy->signal = 0x8b; in vnt_get_phy_field()
[all …]
Dcard.c266 struct vnt_phy_field phy[4]; in vnt_set_rspinf() local
274 vnt_get_cck_rate(priv, RATE_1M), PK_TYPE_11B, &phy[0]); in vnt_set_rspinf()
278 vnt_get_cck_rate(priv, RATE_2M), PK_TYPE_11B, &phy[1]); in vnt_set_rspinf()
282 vnt_get_cck_rate(priv, RATE_5M), PK_TYPE_11B, &phy[2]); in vnt_set_rspinf()
286 vnt_get_cck_rate(priv, RATE_11M), PK_TYPE_11B, &phy[3]); in vnt_set_rspinf()
320 put_unaligned(phy[0].len, (u16 *)&data[0]); in vnt_set_rspinf()
321 data[2] = phy[0].signal; in vnt_set_rspinf()
322 data[3] = phy[0].service; in vnt_set_rspinf()
324 put_unaligned(phy[1].len, (u16 *)&data[4]); in vnt_set_rspinf()
325 data[6] = phy[1].signal; in vnt_set_rspinf()
[all …]
/linux-4.1.27/drivers/net/ieee802154/
Dfakelb.c91 (dp->hw->phy->current_channel == in fakelb_hw_xmit()
92 priv->hw->phy->current_channel)) in fakelb_hw_xmit()
152 hw->phy->channels_supported[0] |= 1; in fakelb_add_one()
154 hw->phy->channels_supported[0] |= 0x7fe; in fakelb_add_one()
156 hw->phy->channels_supported[0] |= 0x7FFF800; in fakelb_add_one()
158 hw->phy->channels_supported[1] |= 1; in fakelb_add_one()
160 hw->phy->channels_supported[1] |= 0x7fe; in fakelb_add_one()
162 hw->phy->channels_supported[2] |= 1; in fakelb_add_one()
164 hw->phy->channels_supported[2] |= 0x7fe; in fakelb_add_one()
166 hw->phy->channels_supported[3] |= 0x3fff; in fakelb_add_one()
[all …]
/linux-4.1.27/Documentation/
Dphy.txt18 all over the Linux kernel to drivers/phy to increase code re-use and for
56 struct phy *phy_create(struct device *dev, struct device_node *node,
58 struct phy *devm_phy_create(struct device *dev, struct device_node *node,
62 the device pointer and phy ops.
66 Inorder to dereference the private data (in phy_ops), the phy provider driver
75 struct phy *phy_get(struct device *dev, const char *string);
76 struct phy *phy_optional_get(struct device *dev, const char *string);
77 struct phy *devm_phy_get(struct device *dev, const char *string);
78 struct phy *devm_phy_optional_get(struct device *dev, const char *string);
82 should contain the phy name as given in the dt data and in the case of
[all …]
/linux-4.1.27/Documentation/devicetree/bindings/ata/
Dapm-xgene.txt21 - phys : A list of phandles + phy-specifiers, one for each
22 entry in phy-names.
23 - phy-names : Should contain:
24 * "sata-phy" for the SATA 6.0Gbps PHY
39 phy2: phy@1f22a000 {
40 compatible = "apm,xgene-phy";
42 #phy-cells = <1>;
45 phy3: phy@1f23a000 {
46 compatible = "apm,xgene-phy";
48 #phy-cells = <1>;
[all …]
/linux-4.1.27/drivers/net/ethernet/chelsio/cxgb/
Dcphy.h81 int (*advertise)(struct cphy *phy, unsigned int advertise_map);
83 int (*set_speed_duplex)(struct cphy *phy, int speed, int duplex);
84 int (*get_link_status)(struct cphy *phy, int *link_ok, int *speed,
139 static inline void cphy_init(struct cphy *phy, struct net_device *dev, in cphy_init() argument
144 phy->adapter = adapter; in cphy_init()
145 phy->ops = phy_ops; in cphy_init()
147 phy->mdio.prtad = phy_addr; in cphy_init()
148 phy->mdio.mmds = phy_ops->mmds; in cphy_init()
149 phy->mdio.mode_support = mdio_ops->mode_support; in cphy_init()
150 phy->mdio.mdio_read = mdio_ops->read; in cphy_init()
[all …]
Dsubr.c153 struct cphy *phy = adapter->port[port_id].phy; in t1_link_changed() local
156 phy->ops->get_link_status(phy, &link_ok, &speed, &duplex, &fc); in t1_link_changed()
200 struct cphy *phy = adapter->port[p].phy; in fpga_phy_intr_handler() local
201 int phy_cause = phy->ops->interrupt_handler(phy); in fpga_phy_intr_handler()
623 int t1_link_start(struct cphy *phy, struct cmac *mac, struct link_config *lc) in t1_link_start() argument
639 phy->ops->advertise(phy, lc->advertising); in t1_link_start()
648 phy->state = PHY_AUTONEG_RDY; in t1_link_start()
649 phy->ops->set_speed_duplex(phy, lc->speed, lc->duplex); in t1_link_start()
650 phy->ops->reset(phy, 0); in t1_link_start()
652 phy->state = PHY_AUTONEG_EN; in t1_link_start()
[all …]
/linux-4.1.27/drivers/usb/dwc2/
Dpci.c62 struct platform_device *phy; member
70 usb_phy_generic_unregister(glue->phy); in dwc2_pci_remove()
80 struct platform_device *phy; in dwc2_pci_probe() local
118 phy = usb_phy_generic_register(); in dwc2_pci_probe()
119 if (IS_ERR(phy)) { in dwc2_pci_probe()
121 PTR_ERR(phy)); in dwc2_pci_probe()
122 return PTR_ERR(phy); in dwc2_pci_probe()
135 glue->phy = phy; in dwc2_pci_probe()
141 usb_phy_generic_unregister(phy); in dwc2_pci_probe()
Dplatform.c160 struct phy *phy; in dwc2_driver_probe() local
223 phy = devm_phy_get(&dev->dev, "usb2-phy"); in dwc2_driver_probe()
224 if (IS_ERR(phy)) { in dwc2_driver_probe()
225 hsotg->phy = NULL; in dwc2_driver_probe()
232 hsotg->phy = phy; in dwc2_driver_probe()
233 phy_power_on(hsotg->phy); in dwc2_driver_probe()
234 phy_init(hsotg->phy); in dwc2_driver_probe()
272 phy_exit(dwc2->phy); in dwc2_suspend()
273 phy_power_off(dwc2->phy); in dwc2_suspend()
287 phy_power_on(dwc2->phy); in dwc2_resume()
[all …]
/linux-4.1.27/Documentation/devicetree/bindings/usb/
Dqcom,dwc3.txt21 Documentation/devicetree/bindings/phy/qcom,dwc3-usb-phy.txt
25 hs_phy: phy@100f8800 {
26 compatible = "qcom,dwc3-hs-usb-phy";
30 #phy-cells = <0>;
35 ss_phy: phy@100f8830 {
36 compatible = "qcom,dwc3-ss-usb-phy";
40 #phy-cells = <0>;
61 phy-names = "usb2-phy", "usb3-phy";
Dsamsung-usbphy.txt3 ** Samsung's usb 2.0 phy transceiver
5 The Samsung's usb 2.0 phy transceiver is used for controlling
6 usb 2.0 phy for s3c-hsotg as well as ehci-s5p and ohci-exynos
15 - reg : base physical address of the phy registers and length of memory mapped
23 - reg : base physical address of the phy registers and length of memory mapped
35 interface for usb-phy. It should provide the following information required by
36 usb-phy controller to control phy.
66 ** Samsung's usb 3.0 phy transceiver
68 Starting exynso5250, Samsung's SoC have usb 3.0 phy transceiver
69 which is used for controlling usb 3.0 phy for dwc3-exynos usb 3.0
[all …]
Ddwc2.txt18 - phys: phy provider specifier
19 - phy-names: shall be "usb2-phy"
20 Refer to phy/phy-bindings.txt for generic phy consumer properties
37 phy-names = "usb2-phy";
Dmsm-hsusb.txt8 - usb-phy: phandle for the PHY device
15 usb-phy = <&usb_otg>;
31 "phy" USB PHY reference clock
45 "phy" USB PHY controller reset
55 - qcom,phy-init-sequence: PHY configuration sequence values. This is related to Device
59 For example: qcom,phy-init-sequence = < -1 0x63 >;
62 - qcom,phy-num: Select number of pyco-phy to use, can be one of
83 clock-names = "phy", "core", "iface";
90 reset-names = "phy", "link";
93 qcom,phy-init-sequence = < -1 0x63 >;
/linux-4.1.27/drivers/scsi/
Dscsi_transport_sas.c458 struct sas_phy *phy = transport_class_to_phy(dev); \
460 return snprintf(buf, 20, format_string, cast phy->field); \
472 struct sas_phy *phy = transport_class_to_phy(dev); \
474 if (!phy->field) \
476 return get_sas_protocol_names(phy->field, buf); \
488 struct sas_phy *phy = transport_class_to_phy(dev); \
490 return get_sas_linkspeed_names(phy->field, buf); \
500 struct sas_phy *phy = transport_class_to_phy(dev); \
501 struct Scsi_Host *shost = dev_to_shost(phy->dev.parent); \
511 error = i->f->set_phy_speed(phy, &rates); \
[all …]
/linux-4.1.27/drivers/net/wireless/brcm80211/brcmsmac/
DMakefile21 -Idrivers/net/wireless/brcm80211/brcmsmac/phy \
36 phy/phy_cmn.o \
37 phy/phy_lcn.o \
38 phy/phy_n.o \
39 phy/phytbl_lcn.o \
40 phy/phytbl_n.o \
41 phy/phy_qmath.o \
/linux-4.1.27/include/linux/
Dsungem_phy.h9 int (*init)(struct mii_phy *phy);
10 int (*suspend)(struct mii_phy *phy);
11 int (*setup_aneg)(struct mii_phy *phy, u32 advertise);
12 int (*setup_forced)(struct mii_phy *phy, int speed, int fd);
13 int (*poll_link)(struct mii_phy *phy);
14 int (*read_link)(struct mii_phy *phy);
15 int (*enable_fiber)(struct mii_phy *phy, int autoneg);
64 extern int sungem_phy_probe(struct mii_phy *phy, int mii_id);
/linux-4.1.27/net/dsa/
Dslave.c100 err = ds->drv->port_enable(ds, p->port, p->phy); in dsa_slave_open()
108 if (p->phy) in dsa_slave_open()
109 phy_start(p->phy); in dsa_slave_open()
132 if (p->phy) in dsa_slave_close()
133 phy_stop(p->phy); in dsa_slave_close()
146 ds->drv->port_disable(ds, p->port, p->phy); in dsa_slave_close()
305 if (p->phy != NULL) in dsa_slave_ioctl()
306 return phy_mii_ioctl(p->phy, ifr, cmd); in dsa_slave_ioctl()
424 if (p->phy != NULL) { in dsa_slave_get_settings()
425 err = phy_read_status(p->phy); in dsa_slave_get_settings()
[all …]
/linux-4.1.27/arch/powerpc/boot/dts/
Dppa8548.dts110 phy0: ethernet-phy@0 {
114 phy1: ethernet-phy@1 {
118 tbi0: tbi-phy@11 {
120 device_type = "tbi-phy";
126 phy-handle = <&phy0>;
130 tbi1: tbi-phy@11 {
132 device_type = "tbi-phy";
138 phy-handle = <&phy1>;
142 tbi2: tbi-phy@11 {
144 device_type = "tbi-phy";
[all …]
Dmvme2500.dts91 phy-handle = <&phy1>;
92 phy-connection-type = "rgmii-id";
96 phy1: ethernet-phy@1 {
102 phy2: ethernet-phy@2 {
108 phy3: ethernet-phy@3 {
114 phy7: ethernet-phy@7 {
120 tbi0: tbi-phy@11 {
122 device_type = "tbi-phy";
128 phy-handle = <&phy7>;
129 phy-connection-type = "rgmii-id";
[all …]
Dmpc8569mds.dts265 phy-handle = <&qe_phy0>;
266 phy-connection-type = "rgmii-id";
275 qe_phy0: ethernet-phy@07 {
280 qe_phy1: ethernet-phy@01 {
285 qe_phy2: ethernet-phy@02 {
290 qe_phy3: ethernet-phy@03 {
295 qe_phy5: ethernet-phy@04 {
298 qe_phy7: ethernet-phy@06 {
301 tbi1: tbi-phy@11 {
303 device_type = "tbi-phy";
[all …]
Dp1021mds.dts158 phy0: ethernet-phy@0 {
162 phy1: ethernet-phy@1 {
166 phy4: ethernet-phy@4 {
169 tbi-phy@5 {
170 device_type = "tbi-phy";
176 tbi0: tbi-phy@11 {
178 device_type = "tbi-phy";
183 phy-handle = <&phy0>;
184 phy-connection-type = "rgmii-id";
188 phy-handle = <&phy4>;
[all …]
Dp1010rdb.dtsi157 phy0: ethernet-phy@0 {
161 phy1: ethernet-phy@1 {
165 phy2: ethernet-phy@2 {
169 tbi-phy@3 {
170 device_type = "tbi-phy";
176 tbi0: tbi-phy@11 {
178 device_type = "tbi-phy";
183 tbi1: tbi-phy@11 {
185 device_type = "tbi-phy";
190 phy-handle = <&phy0>;
[all …]
Dp1025twr.dtsi109 phy0: ethernet-phy@2 {
115 phy1: ethernet-phy@1 {
121 tbi0: tbi-phy@11 {
123 device_type = "tbi-phy";
128 tbi1: tbi-phy@11 {
130 device_type = "tbi-phy";
135 tbi2: tbi-phy@11 {
137 device_type = "tbi-phy";
142 phy-handle = <&phy0>;
143 phy-connection-type = "rgmii-id";
[all …]
Dp1020utm-pc.dtsi82 phy0: ethernet-phy@0 {
86 phy1: ethernet-phy@1 {
90 phy2: ethernet-phy@2 {
97 tbi1: tbi-phy@11 {
99 device_type = "tbi-phy";
104 tbi2: tbi-phy@11 {
106 device_type = "tbi-phy";
111 phy-handle = <&phy2>;
112 phy-connection-type = "rgmii-id";
116 phy-handle = <&phy0>;
[all …]
Dsbc8641d.dts220 phy-handle = <&phy0>;
221 phy-connection-type = "rgmii-id";
229 phy0: ethernet-phy@1f {
234 phy1: ethernet-phy@0 {
239 phy2: ethernet-phy@1 {
244 phy3: ethernet-phy@2 {
249 tbi0: tbi-phy@11 {
251 device_type = "tbi-phy";
269 phy-handle = <&phy1>;
270 phy-connection-type = "rgmii-id";
[all …]
/linux-4.1.27/drivers/net/phy/
Dmdio-bitbang.c97 static void mdiobb_cmd(struct mdiobb_ctrl *ctrl, int op, u8 phy, u8 reg) in mdiobb_cmd() argument
127 mdiobb_send_num(ctrl, phy, 5); in mdiobb_cmd()
137 static int mdiobb_cmd_addr(struct mdiobb_ctrl *ctrl, int phy, u32 addr) in mdiobb_cmd_addr() argument
141 mdiobb_cmd(ctrl, MDIO_C45_ADDR, phy, dev_addr); in mdiobb_cmd_addr()
155 static int mdiobb_read(struct mii_bus *bus, int phy, int reg) in mdiobb_read() argument
161 reg = mdiobb_cmd_addr(ctrl, phy, reg); in mdiobb_read()
162 mdiobb_cmd(ctrl, MDIO_C45_READ, phy, reg); in mdiobb_read()
164 mdiobb_cmd(ctrl, MDIO_READ, phy, reg); in mdiobb_read()
184 static int mdiobb_write(struct mii_bus *bus, int phy, int reg, u16 val) in mdiobb_write() argument
189 reg = mdiobb_cmd_addr(ctrl, phy, reg); in mdiobb_write()
[all …]
/linux-4.1.27/arch/arm/boot/dts/
Dspear1310.dtsi36 phy-id = <0>;
37 #phy-cells = <1>;
45 phy-id = <1>;
46 #phy-cells = <1>;
54 phy-id = <2>;
55 #phy-cells = <1>;
64 phy-names = "sata-phy";
73 phy-names = "sata-phy";
82 phy-names = "sata-phy";
95 phy-names = "pcie-phy";
[all …]
Dkirkwood-guruplug-server-plus.dts103 ethphy0: ethernet-phy@0 {
105 compatible = "ethernet-phy-id0141.0cb0",
106 "ethernet-phy-ieee802.3-c22";
110 ethphy1: ethernet-phy@1 {
112 compatible = "ethernet-phy-id0141.0cb0",
113 "ethernet-phy-ieee802.3-c22";
121 phy-handle = <&ethphy0>;
122 phy-connection-type = "rgmii-id";
129 phy-handle = <&ethphy1>;
130 phy-connection-type = "rgmii-id";
Dhisi-x5hd2-dkb.dts58 phy-handle = <&phy2>;
59 phy-mode = "mii";
64 phy2: ethernet-phy@2 {
72 phy-handle = <&phy1>;
73 phy-mode = "rgmii";
78 phy1: ethernet-phy@1 {
85 phy-names = "sata-phy";
Dstih418.dtsi30 compatible = "st,stih407-usb2-phy";
31 #phy-cells = <0>;
39 compatible = "st,stih407-usb2-phy";
40 #phy-cells = <0>;
56 phy-names = "usb";
70 phy-names = "usb";
82 phy-names = "usb";
96 phy-names = "usb";
/linux-4.1.27/arch/arm/mach-imx/
Dmx31moboard-devboard.c197 struct usb_phy *phy; in devboard_usbh1_init() local
200 phy = kzalloc(sizeof(*phy), GFP_KERNEL); in devboard_usbh1_init()
201 if (!phy) in devboard_usbh1_init()
204 phy->otg = kzalloc(sizeof(struct usb_otg), GFP_KERNEL); in devboard_usbh1_init()
205 if (!phy->otg) { in devboard_usbh1_init()
206 kfree(phy); in devboard_usbh1_init()
210 phy->label = "ISP1105"; in devboard_usbh1_init()
211 phy->init = devboard_isp1105_init; in devboard_usbh1_init()
212 phy->otg->set_vbus = devboard_isp1105_set_vbus; in devboard_usbh1_init()
214 usbh1_pdata.otg = phy; in devboard_usbh1_init()
Dmx31moboard-marxbot.c311 struct usb_phy *phy; in marxbot_usbh1_init() local
314 phy = kzalloc(sizeof(*phy), GFP_KERNEL); in marxbot_usbh1_init()
315 if (!phy) in marxbot_usbh1_init()
318 phy->otg = kzalloc(sizeof(struct usb_otg), GFP_KERNEL); in marxbot_usbh1_init()
319 if (!phy->otg) { in marxbot_usbh1_init()
320 kfree(phy); in marxbot_usbh1_init()
324 phy->label = "ISP1105"; in marxbot_usbh1_init()
325 phy->init = marxbot_isp1105_init; in marxbot_usbh1_init()
326 phy->otg->set_vbus = marxbot_isp1105_set_vbus; in marxbot_usbh1_init()
328 usbh1_pdata.otg = phy; in marxbot_usbh1_init()
/linux-4.1.27/drivers/pci/host/
Dpci-dra7xx.c67 struct phy **phy; member
327 struct phy **phy; in dra7xx_pcie_probe() local
363 phy = devm_kzalloc(dev, sizeof(*phy) * phy_count, GFP_KERNEL); in dra7xx_pcie_probe()
364 if (!phy) in dra7xx_pcie_probe()
369 phy[i] = devm_phy_get(dev, name); in dra7xx_pcie_probe()
370 if (IS_ERR(phy[i])) in dra7xx_pcie_probe()
371 return PTR_ERR(phy[i]); in dra7xx_pcie_probe()
373 ret = phy_init(phy[i]); in dra7xx_pcie_probe()
377 ret = phy_power_on(phy[i]); in dra7xx_pcie_probe()
379 phy_exit(phy[i]); in dra7xx_pcie_probe()
[all …]
Dpcie-iproc.c194 if (pcie->phy) { in iproc_pcie_setup()
195 ret = phy_init(pcie->phy); in iproc_pcie_setup()
201 ret = phy_power_on(pcie->phy); in iproc_pcie_setup()
242 if (pcie->phy) in iproc_pcie_setup()
243 phy_power_off(pcie->phy); in iproc_pcie_setup()
245 if (pcie->phy) in iproc_pcie_setup()
246 phy_exit(pcie->phy); in iproc_pcie_setup()
257 if (pcie->phy) { in iproc_pcie_remove()
258 phy_power_off(pcie->phy); in iproc_pcie_remove()
259 phy_exit(pcie->phy); in iproc_pcie_remove()
/linux-4.1.27/drivers/power/
Disp1704_charger.c63 struct usb_phy *phy; member
76 return usb_phy_io_read(isp->phy, reg); in isp1704_read()
81 return usb_phy_io_write(isp->phy, val, reg); in isp1704_write()
253 switch (isp->phy->last_event) { in isp1704_charger_work()
271 if (isp->phy->otg->gadget) in isp1704_charger_work()
272 usb_gadget_connect(isp->phy->otg->gadget); in isp1704_charger_work()
301 if (isp->phy->otg->gadget) in isp1704_charger_work()
302 usb_gadget_disconnect(isp->phy->otg->gadget); in isp1704_charger_work()
440 isp->phy = devm_usb_get_phy_by_phandle(&pdev->dev, "usb-phy", 0); in isp1704_charger_probe()
442 isp->phy = devm_usb_get_phy(&pdev->dev, USB_PHY_TYPE_USB2); in isp1704_charger_probe()
[all …]
/linux-4.1.27/net/caif/
Dcfcnfg.c136 struct cfcnfg_phyinfo *phy; in cfcnfg_get_phyinfo_rcu() local
138 list_for_each_entry_rcu(phy, &cnfg->phys, node) in cfcnfg_get_phyinfo_rcu()
139 if (phy->id == phyid) in cfcnfg_get_phyinfo_rcu()
140 return phy; in cfcnfg_get_phyinfo_rcu()
152 struct cfcnfg_phyinfo *phy; in cfcnfg_get_phyid() local
154 list_for_each_entry_rcu(phy, &cnfg->phys, node) { in cfcnfg_get_phyid()
155 if (phy->up && phy->pref == phy_pref && in cfcnfg_get_phyid()
156 phy->frm_layer != NULL) in cfcnfg_get_phyid()
158 return &phy->dev_info; in cfcnfg_get_phyid()
162 list_for_each_entry_rcu(phy, &cnfg->phys, node) in cfcnfg_get_phyid()
[all …]
/linux-4.1.27/drivers/pinctrl/
Dpinctrl-tegra-xusb.c101 struct phy *phys[2];
535 static int tegra_xusb_phy_init(struct phy *phy) in tegra_xusb_phy_init() argument
537 struct tegra_xusb_padctl *padctl = phy_get_drvdata(phy); in tegra_xusb_phy_init()
542 static int tegra_xusb_phy_exit(struct phy *phy) in tegra_xusb_phy_exit() argument
544 struct tegra_xusb_padctl *padctl = phy_get_drvdata(phy); in tegra_xusb_phy_exit()
549 static int pcie_phy_power_on(struct phy *phy) in pcie_phy_power_on() argument
551 struct tegra_xusb_padctl *padctl = phy_get_drvdata(phy); in pcie_phy_power_on()
585 static int pcie_phy_power_off(struct phy *phy) in pcie_phy_power_off() argument
587 struct tegra_xusb_padctl *padctl = phy_get_drvdata(phy); in pcie_phy_power_off()
605 static int sata_phy_power_on(struct phy *phy) in sata_phy_power_on() argument
[all …]
/linux-4.1.27/Documentation/DocBook/
D.networking.xml.cmd2 …ivers/net/phy/phy.c drivers/net/phy/phy.c drivers/net/phy/phy_device.c drivers/net/phy/phy_device.…
/linux-4.1.27/arch/mips/boot/dts/cavium-octeon/
Docteon_68xx.dts60 phy0: ethernet-phy@6 {
72 phy1: ethernet-phy@1 {
81 phy2: ethernet-phy@2 {
90 phy3: ethernet-phy@3 {
99 phy4: ethernet-phy@4 {
116 phy41: ethernet-phy@1 {
125 phy42: ethernet-phy@2 {
134 phy43: ethernet-phy@3 {
143 phy44: ethernet-phy@4 {
160 phy21: ethernet-phy@1 {
[all …]
Docteon_3xxx.dts59 phy0: ethernet-phy@0 {
71 phy1: ethernet-phy@1 {
83 phy2: ethernet-phy@2 {
91 phy3: ethernet-phy@3 {
99 phy4: ethernet-phy@4 {
107 phy5: ethernet-phy@5 {
116 phy6: ethernet-phy@6 {
124 phy7: ethernet-phy@7 {
132 phy8: ethernet-phy@8 {
140 phy9: ethernet-phy@9 {
[all …]
/linux-4.1.27/drivers/net/ethernet/ti/
Dtlan.c964 u32 phy = priv->phy[priv->phy_num]; in tlan_ioctl() local
971 data->phy_id = phy; in tlan_ioctl()
1706 u32 phy; in tlan_handle_status_check() local
1724 phy = priv->phy[priv->phy_num]; in tlan_handle_status_check()
1733 tlan_mii_read_reg(dev, phy, TLAN_TLPHY_STS, &tlphy_sts); in tlan_handle_status_check()
1734 tlan_mii_read_reg(dev, phy, TLAN_TLPHY_CTL, &tlphy_ctl); in tlan_handle_status_check()
1738 tlan_mii_write_reg(dev, phy, TLAN_TLPHY_CTL, in tlan_handle_status_check()
1743 tlan_mii_write_reg(dev, phy, TLAN_TLPHY_CTL, in tlan_handle_status_check()
2263 u32 phy; in tlan_finish_reset() local
2272 phy = priv->phy[priv->phy_num]; in tlan_finish_reset()
[all …]
/linux-4.1.27/drivers/net/ethernet/smsc/
Dsmc911x.h844 #define SMC_GET_MII(lp,a,phy,v) \ argument
850 SMC_SET_MII_ACC( (lp), ((phy)<<11) | ((a)<<6) | \
857 #define SMC_SET_MII(lp,a,phy,v) \ argument
864 SMC_SET_MII_ACC( (lp), ((phy)<<11) | ((a)<<6) | \
871 #define SMC_GET_PHY_BMCR(lp,phy,x) SMC_GET_MII( (lp), MII_BMCR, phy, x ) argument
872 #define SMC_SET_PHY_BMCR(lp,phy,x) SMC_SET_MII( (lp), MII_BMCR, phy, x ) argument
873 #define SMC_GET_PHY_BMSR(lp,phy,x) SMC_GET_MII( (lp), MII_BMSR, phy, x ) argument
874 #define SMC_GET_PHY_ID1(lp,phy,x) SMC_GET_MII( (lp), MII_PHYSID1, phy, x ) argument
875 #define SMC_GET_PHY_ID2(lp,phy,x) SMC_GET_MII( (lp), MII_PHYSID2, phy, x ) argument
876 #define SMC_GET_PHY_MII_ADV(lp,phy,x) SMC_GET_MII( (lp), MII_ADVERTISE, phy, x ) argument
[all …]
/linux-4.1.27/Documentation/devicetree/bindings/pci/
Dbrcm,iproc-pcie.txt18 - phy-names: must be "pcie-phy"
39 phys = <&phy 0 5>;
40 phy-names = "pcie-phy";
61 phys = <&phy 1 6>;
62 phy-names = "pcie-phy";
/linux-4.1.27/arch/arm/mach-omap2/
Dusb-host.c431 int usbhs_init_phys(struct usbhs_phy_data *phy, int num_phys) in usbhs_init_phys() argument
442 if (!phy->port) { in usbhs_init_phys()
449 if (!gpio_is_valid(phy->reset_gpio) && in usbhs_init_phys()
450 !gpio_is_valid(phy->vcc_gpio)) in usbhs_init_phys()
461 if (gpio_is_valid(phy->vcc_gpio)) in usbhs_init_phys()
463 nop_pdata.gpio_reset = phy->reset_gpio; in usbhs_init_phys()
469 pdevinfo.id = phy->port; in usbhs_init_phys()
474 phy->port); in usbhs_init_phys()
483 usb_bind_phy("ehci-omap.0", phy->port - 1, phy_id); in usbhs_init_phys()
486 if (gpio_is_valid(phy->vcc_gpio)) { in usbhs_init_phys()
[all …]
/linux-4.1.27/drivers/scsi/bfa/
Dbfa_ioc.c5320 bfa_phy_present(struct bfa_phy_s *phy) in bfa_phy_present() argument
5322 return (phy->ioc->attr->card_type == BFA_MFG_TYPE_LIGHTNING); in bfa_phy_present()
5328 struct bfa_phy_s *phy = cbarg; in bfa_phy_notify() local
5330 bfa_trc(phy, event); in bfa_phy_notify()
5335 if (phy->op_busy) { in bfa_phy_notify()
5336 phy->status = BFA_STATUS_IOC_FAILURE; in bfa_phy_notify()
5337 phy->cbfn(phy->cbarg, phy->status); in bfa_phy_notify()
5338 phy->op_busy = 0; in bfa_phy_notify()
5355 struct bfa_phy_s *phy = cbarg; in bfa_phy_query_send() local
5357 (struct bfi_phy_query_req_s *) phy->mb.msg; in bfa_phy_query_send()
[all …]
/linux-4.1.27/arch/powerpc/sysdev/
Dtsi108_dev.c76 struct device_node *phy, *mdio; in tsi108_eth_of_init() local
119 phy = of_find_node_by_phandle(*ph); in tsi108_eth_of_init()
121 if (phy == NULL) { in tsi108_eth_of_init()
126 phy_id = of_get_property(phy, "reg", NULL); in tsi108_eth_of_init()
130 tsi_eth_data.phy = *phy_id; in tsi108_eth_of_init()
141 if (of_get_property(phy, "txc-rxc-delay-disable", NULL)) in tsi108_eth_of_init()
143 of_node_put(phy); in tsi108_eth_of_init()

1234567