OpenWrt – Blame information for rev 2
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | --- a/drivers/net/phy/adm6996.c |
2 | +++ b/drivers/net/phy/adm6996.c |
||
3 | @@ -289,7 +289,7 @@ static u16 |
||
4 | adm6996_read_mii_reg(struct adm6996_priv *priv, enum admreg reg) |
||
5 | { |
||
6 | struct phy_device *phydev = priv->priv; |
||
7 | - struct mii_bus *bus = phydev->mdio.bus; |
||
8 | + struct mii_bus *bus = phydev->bus; |
||
9 | |||
10 | return bus->read(bus, PHYADDR(reg)); |
||
11 | } |
||
12 | @@ -298,7 +298,7 @@ static void |
||
13 | adm6996_write_mii_reg(struct adm6996_priv *priv, enum admreg reg, u16 val) |
||
14 | { |
||
15 | struct phy_device *phydev = priv->priv; |
||
16 | - struct mii_bus *bus = phydev->mdio.bus; |
||
17 | + struct mii_bus *bus = phydev->bus; |
||
18 | |||
19 | bus->write(bus, PHYADDR(reg), val); |
||
20 | } |
||
21 | @@ -1050,13 +1050,13 @@ static int adm6996_config_init(struct ph |
||
22 | pdev->supported = ADVERTISED_100baseT_Full; |
||
23 | pdev->advertising = ADVERTISED_100baseT_Full; |
||
24 | |||
25 | - if (pdev->mdio.addr != 0) { |
||
26 | + if (pdev->addr != 0) { |
||
27 | pr_info ("%s: PHY overlaps ADM6996, providing fixed PHY 0x%x.\n" |
||
28 | - , pdev->attached_dev->name, pdev->mdio.addr); |
||
29 | + , pdev->attached_dev->name, pdev->addr); |
||
30 | return 0; |
||
31 | } |
||
32 | |||
33 | - priv = devm_kzalloc(&pdev->mdio.dev, sizeof(struct adm6996_priv), GFP_KERNEL); |
||
34 | + priv = devm_kzalloc(&pdev->dev, sizeof(struct adm6996_priv), GFP_KERNEL); |
||
35 | if (!priv) |
||
36 | return -ENOMEM; |
||
37 | |||
38 | @@ -1076,7 +1076,7 @@ static int adm6996_config_init(struct ph |
||
39 | } |
||
40 | |||
41 | /* |
||
42 | - * Warning: phydev->priv is NULL if phydev->mdio.addr != 0 |
||
43 | + * Warning: phydev->priv is NULL if phydev->addr != 0 |
||
44 | */ |
||
45 | static int adm6996_read_status(struct phy_device *phydev) |
||
46 | { |
||
47 | @@ -1092,7 +1092,7 @@ static int adm6996_read_status(struct ph |
||
48 | } |
||
49 | |||
50 | /* |
||
51 | - * Warning: phydev->priv is NULL if phydev->mdio.addr != 0 |
||
52 | + * Warning: phydev->priv is NULL if phydev->addr != 0 |
||
53 | */ |
||
54 | static int adm6996_config_aneg(struct phy_device *phydev) |
||
55 | { |
||
56 | @@ -1101,11 +1101,11 @@ static int adm6996_config_aneg(struct ph |
||
57 | |||
58 | static int adm6996_fixup(struct phy_device *dev) |
||
59 | { |
||
60 | - struct mii_bus *bus = dev->mdio.bus; |
||
61 | + struct mii_bus *bus = dev->bus; |
||
62 | u16 reg; |
||
63 | |||
64 | /* Our custom registers are at PHY addresses 0-10. Claim those. */ |
||
65 | - if (dev->mdio.addr > 10) |
||
66 | + if (dev->addr > 10) |
||
67 | return 0; |
||
68 | |||
69 | /* look for the switch on the bus */ |
||
70 | @@ -1152,6 +1152,7 @@ static struct phy_driver adm6996_phy_dri |
||
71 | .config_aneg = &adm6996_config_aneg, |
||
72 | .read_status = &adm6996_read_status, |
||
73 | .soft_reset = adm6996_soft_reset, |
||
74 | + .driver = { .owner = THIS_MODULE,}, |
||
75 | }; |
||
76 | |||
77 | static int adm6996_gpio_probe(struct platform_device *pdev) |
||
78 | @@ -1220,7 +1221,7 @@ static int __init adm6996_init(void) |
||
79 | int err; |
||
80 | |||
81 | phy_register_fixup_for_id(PHY_ANY_ID, adm6996_fixup); |
||
82 | - err = phy_driver_register(&adm6996_phy_driver, THIS_MODULE); |
||
83 | + err = phy_driver_register(&adm6996_phy_driver); |
||
84 | if (err) |
||
85 | return err; |
||
86 | |||
87 | --- a/drivers/net/phy/ar8216.c |
||
88 | +++ b/drivers/net/phy/ar8216.c |
||
89 | @@ -177,7 +177,7 @@ ar8xxx_phy_check_aneg(struct phy_device |
||
90 | if (ret & BMCR_ANENABLE) |
||
91 | return 0; |
||
92 | |||
93 | - dev_info(&phydev->mdio.dev, "ANEG disabled, re-enabling ...\n"); |
||
94 | + dev_info(&phydev->dev, "ANEG disabled, re-enabling ...\n"); |
||
95 | ret |= BMCR_ANENABLE | BMCR_ANRESTART; |
||
96 | return phy_write(phydev, MII_BMCR, ret); |
||
97 | } |
||
98 | @@ -2021,7 +2021,7 @@ ar8xxx_phy_config_init(struct phy_device |
||
99 | |||
100 | priv->phy = phydev; |
||
101 | |||
102 | - if (phydev->mdio.addr != 0) { |
||
103 | + if (phydev->addr != 0) { |
||
104 | if (chip_is_ar8316(priv)) { |
||
105 | /* switch device has been initialized, reinit */ |
||
106 | priv->dev.ports = (AR8216_NUM_PORTS - 1); |
||
107 | @@ -2069,7 +2069,7 @@ ar8xxx_check_link_states(struct ar8xxx_p |
||
108 | /* flush ARL entries for this port if it went down*/ |
||
109 | if (!link_new) |
||
110 | priv->chip->atu_flush_port(priv, i); |
||
111 | - dev_info(&priv->phy->mdio.dev, "Port %d is %s\n", |
||
112 | + dev_info(&priv->phy->dev, "Port %d is %s\n", |
||
113 | i, link_new ? "up" : "down"); |
||
114 | } |
||
115 | |||
116 | @@ -2088,10 +2088,10 @@ ar8xxx_phy_read_status(struct phy_device |
||
117 | if (phydev->state == PHY_CHANGELINK) |
||
118 | ar8xxx_check_link_states(priv); |
||
119 | |||
120 | - if (phydev->mdio.addr != 0) |
||
121 | + if (phydev->addr != 0) |
||
122 | return genphy_read_status(phydev); |
||
123 | |||
124 | - ar8216_read_port_link(priv, phydev->mdio.addr, &link); |
||
125 | + ar8216_read_port_link(priv, phydev->addr, &link); |
||
126 | phydev->link = !!link.link; |
||
127 | if (!phydev->link) |
||
128 | return 0; |
||
129 | @@ -2122,7 +2122,7 @@ ar8xxx_phy_read_status(struct phy_device |
||
130 | static int |
||
131 | ar8xxx_phy_config_aneg(struct phy_device *phydev) |
||
132 | { |
||
133 | - if (phydev->mdio.addr == 0) |
||
134 | + if (phydev->addr == 0) |
||
135 | return 0; |
||
136 | |||
137 | return genphy_config_aneg(phydev); |
||
138 | @@ -2177,15 +2177,15 @@ ar8xxx_phy_probe(struct phy_device *phyd |
||
139 | int ret; |
||
140 | |||
141 | /* skip PHYs at unused adresses */ |
||
142 | - if (phydev->mdio.addr != 0 && phydev->mdio.addr != 3 && phydev->mdio.addr != 4) |
||
143 | + if (phydev->addr != 0 && phydev->addr != 3 && phydev->addr != 4) |
||
144 | return -ENODEV; |
||
145 | |||
146 | - if (!ar8xxx_is_possible(phydev->mdio.bus)) |
||
147 | + if (!ar8xxx_is_possible(phydev->bus)) |
||
148 | return -ENODEV; |
||
149 | |||
150 | mutex_lock(&ar8xxx_dev_list_lock); |
||
151 | list_for_each_entry(priv, &ar8xxx_dev_list, list) |
||
152 | - if (priv->mii_bus == phydev->mdio.bus) |
||
153 | + if (priv->mii_bus == phydev->bus) |
||
154 | goto found; |
||
155 | |||
156 | priv = ar8xxx_create(); |
||
157 | @@ -2194,7 +2194,7 @@ ar8xxx_phy_probe(struct phy_device *phyd |
||
158 | goto unlock; |
||
159 | } |
||
160 | |||
161 | - priv->mii_bus = phydev->mdio.bus; |
||
162 | + priv->mii_bus = phydev->bus; |
||
163 | |||
164 | ret = ar8xxx_probe_switch(priv); |
||
165 | if (ret) |
||
166 | @@ -2215,7 +2215,7 @@ ar8xxx_phy_probe(struct phy_device *phyd |
||
167 | found: |
||
168 | priv->use_count++; |
||
169 | |||
170 | - if (phydev->mdio.addr == 0) { |
||
171 | + if (phydev->addr == 0) { |
||
172 | if (ar8xxx_has_gige(priv)) { |
||
173 | phydev->supported = SUPPORTED_1000baseT_Full; |
||
174 | phydev->advertising = ADVERTISED_1000baseT_Full; |
||
175 | @@ -2305,21 +2305,33 @@ ar8xxx_phy_soft_reset(struct phy_device |
||
176 | return 0; |
||
177 | } |
||
178 | |||
179 | -static struct phy_driver ar8xxx_phy_driver[] = { |
||
180 | - { |
||
181 | - .phy_id = 0x004d0000, |
||
182 | - .name = "Atheros AR8216/AR8236/AR8316", |
||
183 | - .phy_id_mask = 0xffff0000, |
||
184 | - .features = PHY_BASIC_FEATURES, |
||
185 | - .probe = ar8xxx_phy_probe, |
||
186 | - .remove = ar8xxx_phy_remove, |
||
187 | - .detach = ar8xxx_phy_detach, |
||
188 | - .config_init = ar8xxx_phy_config_init, |
||
189 | - .config_aneg = ar8xxx_phy_config_aneg, |
||
190 | - .read_status = ar8xxx_phy_read_status, |
||
191 | - .soft_reset = ar8xxx_phy_soft_reset, |
||
192 | - } |
||
193 | +static struct phy_driver ar8xxx_phy_driver = { |
||
194 | + .phy_id = 0x004d0000, |
||
195 | + .name = "Atheros AR8216/AR8236/AR8316", |
||
196 | + .phy_id_mask = 0xffff0000, |
||
197 | + .features = PHY_BASIC_FEATURES, |
||
198 | + .probe = ar8xxx_phy_probe, |
||
199 | + .remove = ar8xxx_phy_remove, |
||
200 | + .detach = ar8xxx_phy_detach, |
||
201 | + .config_init = ar8xxx_phy_config_init, |
||
202 | + .config_aneg = ar8xxx_phy_config_aneg, |
||
203 | + .read_status = ar8xxx_phy_read_status, |
||
204 | + .soft_reset = ar8xxx_phy_soft_reset, |
||
205 | + .driver = { .owner = THIS_MODULE }, |
||
206 | }; |
||
207 | |||
208 | -module_phy_driver(ar8xxx_phy_driver); |
||
209 | +int __init |
||
210 | +ar8xxx_init(void) |
||
211 | +{ |
||
212 | + return phy_driver_register(&ar8xxx_phy_driver); |
||
213 | +} |
||
214 | + |
||
215 | +void __exit |
||
216 | +ar8xxx_exit(void) |
||
217 | +{ |
||
218 | + phy_driver_unregister(&ar8xxx_phy_driver); |
||
219 | +} |
||
220 | + |
||
221 | +module_init(ar8xxx_init); |
||
222 | +module_exit(ar8xxx_exit); |
||
223 | MODULE_LICENSE("GPL"); |
||
224 | --- a/drivers/net/phy/ar8327.c |
||
225 | +++ b/drivers/net/phy/ar8327.c |
||
226 | @@ -662,11 +662,11 @@ ar8327_hw_init(struct ar8xxx_priv *priv) |
||
227 | if (!priv->chip_data) |
||
228 | return -ENOMEM; |
||
229 | |||
230 | - if (priv->phy->mdio.dev.of_node) |
||
231 | - ret = ar8327_hw_config_of(priv, priv->phy->mdio.dev.of_node); |
||
232 | + if (priv->phy->dev.of_node) |
||
233 | + ret = ar8327_hw_config_of(priv, priv->phy->dev.of_node); |
||
234 | else |
||
235 | ret = ar8327_hw_config_pdata(priv, |
||
236 | - priv->phy->mdio.dev.platform_data); |
||
237 | + priv->phy->dev.platform_data); |
||
238 | |||
239 | if (ret) |
||
240 | return ret; |
||
241 | --- a/drivers/net/phy/ip17xx.c |
||
242 | +++ b/drivers/net/phy/ip17xx.c |
||
243 | @@ -1273,7 +1273,7 @@ static int ip17xx_probe(struct phy_devic |
||
244 | int err; |
||
245 | |||
246 | /* We only attach to PHY 0, but use all available PHYs */ |
||
247 | - if (pdev->mdio.addr != 0) |
||
248 | + if (pdev->addr != 0) |
||
249 | return -ENODEV; |
||
250 | |||
251 | state = kzalloc(sizeof(*state), GFP_KERNEL); |
||
252 | @@ -1283,7 +1283,7 @@ static int ip17xx_probe(struct phy_devic |
||
253 | dev = &state->dev; |
||
254 | |||
255 | pdev->priv = state; |
||
256 | - state->mii_bus = pdev->mdio.bus; |
||
257 | + state->mii_bus = pdev->bus; |
||
258 | |||
259 | err = get_model(state); |
||
260 | if (err < 0) |
||
261 | @@ -1295,7 +1295,7 @@ static int ip17xx_probe(struct phy_devic |
||
262 | dev->name = state->regs->NAME; |
||
263 | dev->ops = &ip17xx_ops; |
||
264 | |||
265 | - pr_info("IP17xx: Found %s at %s\n", dev->name, dev_name(&pdev->mdio.dev)); |
||
266 | + pr_info("IP17xx: Found %s at %s\n", dev->name, dev_name(&pdev->dev)); |
||
267 | return 0; |
||
268 | |||
269 | error: |
||
270 | @@ -1353,25 +1353,58 @@ static int ip17xx_read_status(struct phy |
||
271 | return 0; |
||
272 | } |
||
273 | |||
274 | -static struct phy_driver ip17xx_driver[] = { |
||
275 | - { |
||
276 | - .name = "IC+ IP17xx", |
||
277 | - .phy_id = 0x02430c00, |
||
278 | - .phy_id_mask = 0x0ffffc00, |
||
279 | - .features = PHY_BASIC_FEATURES, |
||
280 | - .probe = ip17xx_probe, |
||
281 | - .remove = ip17xx_remove, |
||
282 | - .config_init = ip17xx_config_init, |
||
283 | - .config_aneg = ip17xx_config_aneg, |
||
284 | - .aneg_done = ip17xx_aneg_done, |
||
285 | - .update_link = ip17xx_update_link, |
||
286 | - .read_status = ip17xx_read_status, |
||
287 | - } |
||
288 | +static struct phy_driver ip17xx_driver = { |
||
289 | + .name = "IC+ IP17xx", |
||
290 | + .phy_id = 0x02430c00, |
||
291 | + .phy_id_mask = 0x0ffffc00, |
||
292 | + .features = PHY_BASIC_FEATURES, |
||
293 | + .probe = ip17xx_probe, |
||
294 | + .remove = ip17xx_remove, |
||
295 | + .config_init = ip17xx_config_init, |
||
296 | + .config_aneg = ip17xx_config_aneg, |
||
297 | + .aneg_done = ip17xx_aneg_done, |
||
298 | + .update_link = ip17xx_update_link, |
||
299 | + .read_status = ip17xx_read_status, |
||
300 | + .driver = { .owner = THIS_MODULE }, |
||
301 | }; |
||
302 | |||
303 | -module_phy_driver(ip17xx_driver); |
||
304 | +static struct phy_driver ip175a_driver = { |
||
305 | + .name = "IC+ IP175A", |
||
306 | + .phy_id = 0x02430c50, |
||
307 | + .phy_id_mask = 0x0ffffff0, |
||
308 | + .features = PHY_BASIC_FEATURES, |
||
309 | + .probe = ip17xx_probe, |
||
310 | + .remove = ip17xx_remove, |
||
311 | + .config_init = ip17xx_config_init, |
||
312 | + .config_aneg = ip17xx_config_aneg, |
||
313 | + .aneg_done = ip17xx_aneg_done, |
||
314 | + .update_link = ip17xx_update_link, |
||
315 | + .read_status = ip17xx_read_status, |
||
316 | + .driver = { .owner = THIS_MODULE }, |
||
317 | +}; |
||
318 | + |
||
319 | + |
||
320 | +int __init ip17xx_init(void) |
||
321 | +{ |
||
322 | + int ret; |
||
323 | + |
||
324 | + ret = phy_driver_register(&ip175a_driver); |
||
325 | + if (ret < 0) |
||
326 | + return ret; |
||
327 | + |
||
328 | + return phy_driver_register(&ip17xx_driver); |
||
329 | +} |
||
330 | + |
||
331 | +void __exit ip17xx_exit(void) |
||
332 | +{ |
||
333 | + phy_driver_unregister(&ip17xx_driver); |
||
334 | + phy_driver_unregister(&ip175a_driver); |
||
335 | +} |
||
336 | |||
337 | MODULE_AUTHOR("Patrick Horn <patrick.horn@gmail.com>"); |
||
338 | MODULE_AUTHOR("Felix Fietkau <nbd@nbd.name>"); |
||
339 | MODULE_AUTHOR("Martin Mares <mj@ucw.cz>"); |
||
340 | MODULE_LICENSE("GPL"); |
||
341 | + |
||
342 | +module_init(ip17xx_init); |
||
343 | +module_exit(ip17xx_exit); |
||
344 | --- a/drivers/net/phy/mvswitch.c |
||
345 | +++ b/drivers/net/phy/mvswitch.c |
||
346 | @@ -50,17 +50,13 @@ struct mvswitch_priv { |
||
347 | static inline u16 |
||
348 | r16(struct phy_device *phydev, int addr, int reg) |
||
349 | { |
||
350 | - struct mii_bus *bus = phydev->mdio.bus; |
||
351 | - |
||
352 | - return bus->read(bus, addr, reg); |
||
353 | + return phydev->bus->read(phydev->bus, addr, reg); |
||
354 | } |
||
355 | |||
356 | static inline void |
||
357 | w16(struct phy_device *phydev, int addr, int reg, u16 val) |
||
358 | { |
||
359 | - struct mii_bus *bus = phydev->mdio.bus; |
||
360 | - |
||
361 | - bus->write(bus, addr, reg, val); |
||
362 | + phydev->bus->write(phydev->bus, addr, reg, val); |
||
363 | } |
||
364 | |||
365 | |||
366 | @@ -398,13 +394,12 @@ mvswitch_probe(struct phy_device *pdev) |
||
367 | static int |
||
368 | mvswitch_fixup(struct phy_device *dev) |
||
369 | { |
||
370 | - struct mii_bus *bus = dev->mdio.bus; |
||
371 | u16 reg; |
||
372 | |||
373 | - if (dev->mdio.addr != 0x10) |
||
374 | + if (dev->addr != 0x10) |
||
375 | return 0; |
||
376 | |||
377 | - reg = bus->read(bus, MV_PORTREG(IDENT, 0)) & MV_IDENT_MASK; |
||
378 | + reg = dev->bus->read(dev->bus, MV_PORTREG(IDENT, 0)) & MV_IDENT_MASK; |
||
379 | if (reg != MV_IDENT_VALUE) |
||
380 | return 0; |
||
381 | |||
382 | @@ -425,13 +420,14 @@ static struct phy_driver mvswitch_driver |
||
383 | .config_aneg = &mvswitch_config_aneg, |
||
384 | .aneg_done = &mvswitch_aneg_done, |
||
385 | .read_status = &mvswitch_read_status, |
||
386 | + .driver = { .owner = THIS_MODULE,}, |
||
387 | }; |
||
388 | |||
389 | static int __init |
||
390 | mvswitch_init(void) |
||
391 | { |
||
392 | phy_register_fixup_for_id(PHY_ANY_ID, mvswitch_fixup); |
||
393 | - return phy_driver_register(&mvswitch_driver, THIS_MODULE); |
||
394 | + return phy_driver_register(&mvswitch_driver); |
||
395 | } |
||
396 | |||
397 | static void __exit |
||
398 | --- a/drivers/net/phy/psb6970.c |
||
399 | +++ b/drivers/net/phy/psb6970.c |
||
400 | @@ -70,16 +70,12 @@ struct psb6970_priv { |
||
401 | |||
402 | static u16 psb6970_mii_read(struct phy_device *phydev, int reg) |
||
403 | { |
||
404 | - struct mii_bus *bus = phydev->mdio.bus; |
||
405 | - |
||
406 | - return bus->read(bus, PHYADDR(reg)); |
||
407 | + return phydev->bus->read(phydev->bus, PHYADDR(reg)); |
||
408 | } |
||
409 | |||
410 | static void psb6970_mii_write(struct phy_device *phydev, int reg, u16 val) |
||
411 | { |
||
412 | - struct mii_bus *bus = phydev->mdio.bus; |
||
413 | - |
||
414 | - bus->write(bus, PHYADDR(reg), val); |
||
415 | + phydev->bus->write(phydev->bus, PHYADDR(reg), val); |
||
416 | } |
||
417 | |||
418 | static int |
||
419 | @@ -316,11 +312,11 @@ static int psb6970_config_init(struct ph |
||
420 | |||
421 | priv->phy = pdev; |
||
422 | |||
423 | - if (pdev->mdio.addr == 0) |
||
424 | + if (pdev->addr == 0) |
||
425 | printk(KERN_INFO "%s: psb6970 switch driver attached.\n", |
||
426 | pdev->attached_dev->name); |
||
427 | |||
428 | - if (pdev->mdio.addr != 0) { |
||
429 | + if (pdev->addr != 0) { |
||
430 | kfree(priv); |
||
431 | return 0; |
||
432 | } |
||
433 | @@ -388,14 +384,14 @@ static void psb6970_remove(struct phy_de |
||
434 | if (!priv) |
||
435 | return; |
||
436 | |||
437 | - if (pdev->mdio.addr == 0) |
||
438 | + if (pdev->addr == 0) |
||
439 | unregister_switch(&priv->dev); |
||
440 | kfree(priv); |
||
441 | } |
||
442 | |||
443 | static int psb6970_fixup(struct phy_device *dev) |
||
444 | { |
||
445 | - struct mii_bus *bus = dev->mdio.bus; |
||
446 | + struct mii_bus *bus = dev->bus; |
||
447 | u16 reg; |
||
448 | |||
449 | /* look for the switch on the bus */ |
||
450 | @@ -419,12 +415,13 @@ static struct phy_driver psb6970_driver |
||
451 | .config_init = &psb6970_config_init, |
||
452 | .config_aneg = &psb6970_config_aneg, |
||
453 | .read_status = &psb6970_read_status, |
||
454 | + .driver = {.owner = THIS_MODULE}, |
||
455 | }; |
||
456 | |||
457 | int __init psb6970_init(void) |
||
458 | { |
||
459 | phy_register_fixup_for_id(PHY_ANY_ID, psb6970_fixup); |
||
460 | - return phy_driver_register(&psb6970_driver, THIS_MODULE); |
||
461 | + return phy_driver_register(&psb6970_driver); |
||
462 | } |
||
463 | |||
464 | module_init(psb6970_init); |
||
465 | --- a/drivers/net/phy/rtl8306.c |
||
466 | +++ b/drivers/net/phy/rtl8306.c |
||
467 | @@ -877,7 +877,7 @@ rtl8306_config_init(struct phy_device *p |
||
468 | int err; |
||
469 | |||
470 | /* Only init the switch for the primary PHY */ |
||
471 | - if (pdev->mdio.addr != 0) |
||
472 | + if (pdev->addr != 0) |
||
473 | return 0; |
||
474 | |||
475 | val.value.i = 1; |
||
476 | @@ -887,7 +887,7 @@ rtl8306_config_init(struct phy_device *p |
||
477 | priv->dev.ops = &rtl8306_ops; |
||
478 | priv->do_cpu = 0; |
||
479 | priv->page = -1; |
||
480 | - priv->bus = pdev->mdio.bus; |
||
481 | + priv->bus = pdev->bus; |
||
482 | |||
483 | chipid = rtl_get(dev, RTL_REG_CHIPID); |
||
484 | chipver = rtl_get(dev, RTL_REG_CHIPVER); |
||
485 | @@ -933,13 +933,13 @@ rtl8306_fixup(struct phy_device *pdev) |
||
486 | u16 chipid; |
||
487 | |||
488 | /* Attach to primary LAN port and WAN port */ |
||
489 | - if (pdev->mdio.addr != 0 && pdev->mdio.addr != 4) |
||
490 | + if (pdev->addr != 0 && pdev->addr != 4) |
||
491 | return 0; |
||
492 | |||
493 | memset(&priv, 0, sizeof(priv)); |
||
494 | priv.fixup = true; |
||
495 | priv.page = -1; |
||
496 | - priv.bus = pdev->mdio.bus; |
||
497 | + priv.bus = pdev->bus; |
||
498 | chipid = rtl_get(&priv.dev, RTL_REG_CHIPID); |
||
499 | if (chipid == 0x5988) |
||
500 | pdev->phy_id = RTL8306_MAGIC; |
||
501 | @@ -957,14 +957,14 @@ rtl8306_probe(struct phy_device *pdev) |
||
502 | * share one rtl_priv instance between virtual phy |
||
503 | * devices on the same bus |
||
504 | */ |
||
505 | - if (priv->bus == pdev->mdio.bus) |
||
506 | + if (priv->bus == pdev->bus) |
||
507 | goto found; |
||
508 | } |
||
509 | priv = kzalloc(sizeof(struct rtl_priv), GFP_KERNEL); |
||
510 | if (!priv) |
||
511 | return -ENOMEM; |
||
512 | |||
513 | - priv->bus = pdev->mdio.bus; |
||
514 | + priv->bus = pdev->bus; |
||
515 | |||
516 | found: |
||
517 | pdev->priv = priv; |
||
518 | @@ -985,7 +985,7 @@ rtl8306_config_aneg(struct phy_device *p |
||
519 | struct rtl_priv *priv = pdev->priv; |
||
520 | |||
521 | /* Only for WAN */ |
||
522 | - if (pdev->mdio.addr == 0) |
||
523 | + if (pdev->addr == 0) |
||
524 | return 0; |
||
525 | |||
526 | /* Restart autonegotiation */ |
||
527 | @@ -1001,7 +1001,7 @@ rtl8306_read_status(struct phy_device *p |
||
528 | struct rtl_priv *priv = pdev->priv; |
||
529 | struct switch_dev *dev = &priv->dev; |
||
530 | |||
531 | - if (pdev->mdio.addr == 4) { |
||
532 | + if (pdev->addr == 4) { |
||
533 | /* WAN */ |
||
534 | pdev->speed = rtl_get(dev, RTL_PORT_REG(4, SPEED)) ? SPEED_100 : SPEED_10; |
||
535 | pdev->duplex = rtl_get(dev, RTL_PORT_REG(4, DUPLEX)) ? DUPLEX_FULL : DUPLEX_HALF; |
||
536 | @@ -1044,6 +1044,7 @@ static struct phy_driver rtl8306_driver |
||
537 | .config_init = &rtl8306_config_init, |
||
538 | .config_aneg = &rtl8306_config_aneg, |
||
539 | .read_status = &rtl8306_read_status, |
||
540 | + .driver = { .owner = THIS_MODULE,}, |
||
541 | }; |
||
542 | |||
543 | |||
544 | @@ -1051,7 +1052,7 @@ static int __init |
||
545 | rtl_init(void) |
||
546 | { |
||
547 | phy_register_fixup_for_id(PHY_ANY_ID, rtl8306_fixup); |
||
548 | - return phy_driver_register(&rtl8306_driver, THIS_MODULE); |
||
549 | + return phy_driver_register(&rtl8306_driver); |
||
550 | } |
||
551 | |||
552 | static void __exit |