• Li Yang's avatar
    [PATCH] ucc_geth: changes to ucc_geth driver as a result of qe_lib changes and bugfixes · 18a8e864
    Li Yang authored
    changes due to qe_lib changes include:
    
    o removed inclusion of platform header file
    o removed platform_device code, replaced with of_device
    o removed typedefs
    o uint -> u32 conversions
    o removed following defines:
      QE_SIZEOF_BD, BD_BUFFER_ARG, BD_BUFFER_CLEAR, BD_BUFFER,
      BD_STATUS_AND_LENGTH_SET, BD_STATUS_AND_LENGTH, and BD_BUFFER_SET
      because they hid sizeof/in_be32/out_be32 operations from the reader.
    o removed irrelevant comments, added others to resemble removed BD_ defines
    o const'd and uncasted all get_property() assignments
    
    bugfixes, courtesy of Scott Wood, include:
    
    - Read phy_address as a u32, not u8.
    - Match on type == "network" as well as compatible == "ucc_geth", as
      device_is_compatible() will only compare up to the length of the
      test string, allowing "ucc_geth_phy" to match as well.
    - fixes the MAC setting code in ucc_geth.c.  The old code was overwriting and dereferencing random stack contents.
    Signed-off-by: default avatarLi Yang <leoli@freescale.com>
    Signed-off-by: default avatarKim Phillips <kim.phillips@freescale.com>
    Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
    18a8e864
ucc_geth_phy.c 19.3 KB