24 Jan, 2008

1 commit

  • With that patch fixed.c now fully emulates MDIO bus, thus no need
    to duplicate PHY layer functionality. That, in turn, drastically
    simplifies the code, and drops down line count.

    As an additional bonus, now there is no need to register MDIO bus
    for each PHY, all emulated PHYs placed on the platform fixed MDIO bus.
    There is also no more need to pre-allocate PHYs via .config option,
    this is all now handled dynamically.

    Signed-off-by: Anton Vorontsov
    Signed-off-by: Vitaly Bordug
    Acked-by: Jeff Garzik
    Signed-off-by: Kumar Gala

    Vitaly Bordug
     

11 Oct, 2007

1 commit

  • 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:
    [] kobject_cleanup+0x53/0x7e
    [] kobject_release+0x0/0x9
    [] kref_put+0x74/0x81
    [] fixed_mdio_register_device+0x230/0x265
    [] fixed_init+0x1f/0x35
    [] init+0x147/0x2fb
    [] schedule_tail+0x36/0x92
    [] child_rip+0xa/0x12
    [] acpi_ds_init_one_object+0x0/0x83
    [] init+0x0/0x2fb
    [] child_rip+0x0/0x12

    Also changed the notation of the fixed phy definition on
    mdio bus to the form of + 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
    Signed-off-by: Andrew Morton
    Signed-off-by: Jeff Garzik

    Vitaly Bordug