02 Nov, 2017

1 commit

  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

15 Mar, 2016

1 commit

  • The fixed phys delete function simply removed the fixed phy from the
    internal linked list and freed the memory. It however did not
    unregister the associated phy device. This meant it was still possible
    to find the phy device on the mdio bus.

    Make fixed_phy_del() an internal function and add a
    fixed_phy_unregister() to unregisters the phy device and then uses
    fixed_phy_del() to free resources.

    Modify DSA to use this new API function, so we don't leak phys.

    Signed-off-by: Andrew Lunn
    Signed-off-by: David S. Miller

    Andrew Lunn
     

01 Sep, 2015

1 commit


04 Apr, 2015

1 commit

  • Currently fixed_phy uses a callback to periodically poll the link state.
    This patch adds the fixed_phy_update_state() API.
    It solves the following problems:
    - On link state interrupt, MAC driver can't update status.
    Instead it needs to provide the callback to periodically query
    the HW about the link state. It is more efficient to update status
    after interrupt.
    - The callback needs to be unregistered before phy_disconnect(),
    or otherwise it will be called with net_dev==NULL. phy_disconnect()
    does not have enough info to unregister the callback automatically.
    - The callback needs to be registered before of_phy_connect() to
    avoid running with outdated state, but of_phy_connect() returns the
    phy_device pointer, which is needed to register the callback. Registering
    it before of_phy_connect() will therefore require a hack to get the
    pointer earlier.

    Overall, this addition makes the subsequent patch that implements
    SGMII link status for mvneta, much cleaner.

    CC: Florian Fainelli
    CC: netdev@vger.kernel.org
    CC: linux-kernel@vger.kernel.org

    Signed-off-by: Stas Sergeev
    Signed-off-by: David S. Miller

    Stas Sergeev
     

17 Dec, 2014

1 commit

  • Otherwise we get things like:

    warning: (NET_DSA_BCM_SF2 && BCMGENET && SYSTEMPORT) selects FIXED_PHY which has unmet direct dependencies (NETDEVICES && PHYLIB=y)

    In order to make this work we have to rename fixed.c to fixed_phy.c
    because the regulator drivers already have a module named "fixed.o".

    Signed-off-by: David S. Miller

    David S. Miller
     

08 Oct, 2014

1 commit

  • Adjust fixed_phy_register() to return struct phy_device *, so that
    it becomes easy to use fixed PHYs without device tree support:

    phydev = fixed_phy_register(PHY_POLL, &fixed_phy_status, NULL);
    fixed_phy_set_link_update(phydev, fixed_phy_link_update);
    phy_connect_direct(netdev, phydev, handler_fn, phy_interface);

    This change is a prerequisite for modifying bcmgenet driver to work
    without a device tree on Broadcom's MIPS-based 7xxx platforms.

    Signed-off-by: Petri Gynther
    Signed-off-by: David S. Miller

    Petri Gynther
     

28 Aug, 2014

1 commit


06 Jun, 2014

1 commit

  • This commit fixes the following sparse warning:

    drivers/net/phy/fixed.c:207
    - warning: symbol 'fixed_phy_del' was not declared.
    Should it be static?

    by adding symbol definition to the phy_fixed.h API file. It is ok to do
    because the function in question is an exported symbol.

    Signed-off-by: Konrad Zapalowicz
    Signed-off-by: David S. Miller

    Konrad Zapalowicz
     

17 May, 2014

1 commit

  • The existing fixed_phy_add() function has several drawbacks that
    prevents it from being used as is for OF-based declaration of fixed
    PHYs:

    * The address of the PHY on the fake bus needs to be passed, while a
    dynamic allocation is desired.

    * Since the phy_device instantiation is post-poned until the next
    mdiobus scan, there is no way to associate the fixed PHY with its
    OF node, which later prevents of_phy_connect() from finding this
    fixed PHY from a given OF node.

    To solve this, this commit introduces fixed_phy_register(), which will
    allocate an available PHY address, add the PHY using fixed_phy_add()
    and instantiate the phy_device structure associated with the provided
    OF node.

    Signed-off-by: Thomas Petazzoni
    Acked-by: Florian Fainelli
    Acked-by: Grant Likely
    Tested-by: Florian Fainelli
    Signed-off-by: David S. Miller

    Thomas Petazzoni
     

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