Vitaly Bordug 7c32f470f4 PHY fixed driver: rework release path and update phy_id notation
device_bind_driver() error code returning has been fixed.  release()
function has been written, so that to free resources in correct way; the
release path is now clean.

Before the rework, it used to cause
 Device 'fixed@100:1' does not have a release() function, it is broken
 and must be fixed.
 BUG: at drivers/base/core.c:104 device_release()

 Call Trace:
  [<ffffffff802ec380>] kobject_cleanup+0x53/0x7e
  [<ffffffff802ec3ab>] kobject_release+0x0/0x9
  [<ffffffff802ecf3f>] kref_put+0x74/0x81
  [<ffffffff8035493b>] fixed_mdio_register_device+0x230/0x265
  [<ffffffff80564d31>] fixed_init+0x1f/0x35
  [<ffffffff802071a4>] init+0x147/0x2fb
  [<ffffffff80223b6e>] schedule_tail+0x36/0x92
  [<ffffffff8020a678>] child_rip+0xa/0x12
  [<ffffffff80311714>] acpi_ds_init_one_object+0x0/0x83
  [<ffffffff8020705d>] init+0x0/0x2fb
  [<ffffffff8020a66e>] child_rip+0x0/0x12

Also changed the notation of the fixed phy definition on
mdio bus to the form of <speed>+<duplex> to make it able to be used by
gianfar and ucc_geth that define phy_id strictly as "%d:%d" and cleaned up
the whitespace issues.

Signed-off-by: Vitaly Bordug <vitb@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-10-10 16:53:50 -07:00
..
2007-07-31 15:39:39 -07:00
2007-10-09 12:38:26 -07:00
2007-08-22 19:52:46 -07:00
2007-07-21 18:37:12 -07:00
2007-07-16 09:05:42 -07:00
2007-09-09 10:38:37 -04:00
2007-09-09 22:29:14 +02:00
2007-09-17 00:58:40 -04:00
2007-09-11 17:21:51 +02:00
2007-07-20 14:25:51 +10:00
2007-07-31 15:39:37 -07:00
2007-09-28 16:21:10 -07:00
2007-09-11 17:21:19 -07:00
2007-06-28 19:19:20 +10:00
2007-09-11 17:21:19 -07:00
2007-10-10 16:52:21 -07:00
2007-07-18 08:38:22 -07:00
2007-07-18 15:57:16 -07:00
2007-10-10 16:51:13 -07:00
2007-09-19 11:24:18 -07:00
2007-07-26 11:35:17 -07:00