14 Nov, 2017

1 commit

  • Pull USB/PHY updates from Greg KH:
    "Here is the big set of USB and PHY driver updates for 4.15-rc1.

    There is the usual amount of gadget and xhci driver updates, along
    with phy and chipidea enhancements. There's also a lot of SPDX tags
    and license boilerplate cleanups as well, which provide some churn in
    the diffstat.

    Other major thing is the typec code that moved out of staging and into
    the "real" part of the drivers/usb/ tree, which was nice to see
    happen.

    All of these have been in linux-next with no reported issues for a
    while"

    * tag 'usb-4.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (263 commits)
    usb: gadget: f_fs: Fix use-after-free in ffs_free_inst
    USB: usbfs: compute urb->actual_length for isochronous
    usb: core: message: remember to reset 'ret' to 0 when necessary
    USB: typec: Remove remaining redundant license text
    USB: typec: add SPDX identifiers to some files
    USB: renesas_usbhs: rcar?.h: add SPDX tags
    USB: chipidea: ci_hdrc_tegra.c: add SPDX line
    USB: host: xhci-debugfs: add SPDX lines
    USB: add SPDX identifiers to all remaining Makefiles
    usb: host: isp1362-hcd: remove a couple of redundant assignments
    USB: adutux: remove redundant variable minor
    usb: core: add a new usb_get_ptm_status() helper
    usb: core: add a 'type' parameter to usb_get_status()
    usb: core: introduce a new usb_get_std_status() helper
    usb: core: rename usb_get_status() 'type' argument to 'recip'
    usb: core: add Status Type definitions
    USB: gadget: Remove redundant license text
    USB: gadget: function: Remove redundant license text
    USB: gadget: udc: Remove redundant license text
    USB: gadget: legacy: Remove redundant license text
    ...

    Linus Torvalds
     

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
     

23 Oct, 2017

1 commit

  • The extcon has two type of extcon devices as following.
    - 'extcon provider deivce' adds new extcon device and detect the
    state/properties of external connector. Also, it notifies the
    state/properties to the extcon consumer device.
    - 'extcon consumer device' gets the change state/properties
    from extcon provider device.
    Prior to that, include/linux/extcon.h contains all exported API for
    both provider and consumer device driver. To clarify the meaning of
    header file and to remove the wrong use-case on consumer device,
    this patch separates into extcon.h and extcon-provider.h.

    [Description for include/linux/{extcon.h|extcon-provider.h}]
    - extcon.h includes the extcon API and data structure for extcon consumer
    device driver. This header file contains the following APIs:
    : Register/unregister the notifier to catch the change of extcon device
    : Get the extcon device instance
    : Get the extcon device name
    : Get the state of each external connector
    : Get the property value of each external connector
    : Get the property capability of each external connector

    - extcon-provider.h includes the extcon API and data structure for extcon
    provider device driver. This header file contains the following APIs:
    : Include 'include/linux/extcon.h'
    : Allocate the memory for extcon device instance
    : Register/unregister extcon device
    : Set the state of each external connector
    : Set the property value of each external connector
    : Set the property capability of each external connector

    Signed-off-by: Chanwoo Choi
    Acked-by: Sebastian Reichel
    Acked-by: Chen-Yu Tsai
    Acked-by: Charles Keepax
    Acked-by: Lee Jones
    Acked-by: Felipe Balbi
    Acked-by: Yoshihiro Shimoda
    Acked-by: Kishon Vijay Abraham I

    Chanwoo Choi
     

04 Apr, 2017

1 commit

  • The extcon core already provides the extcon_register_notifier() function
    in order to register the notifier block which is used to monitor
    the state change for the specific external connector such as EXTCON_USB,
    EXTCON_USB_HOST and so on. The extcon consumer uses the this function.

    The extcon consumer might need to monitor the all supported external
    connectors from the extcon device. In this case, The extcon consumer
    should have each notifier_block structure for each external connector.

    This patch adds the new extcon_register_notifier_all() function
    that extcon consumer is able to monitor the state change of all
    supported external connectors by using only one notifier_block structure.

    - List of new added functions:
    int extcon_register_notifier_all(struct extcon_dev *edev,
    struct notifier_block *nb);
    int extcon_unregister_notifier_all(struct extcon_dev *edev,
    struct notifier_block *nb);
    int devm_extcon_register_notifier_all(struct device *dev,
    struct extcon_dev *edev, struct notifier_block *nb);
    void devm_extcon_unregister_notifier_all(struct device *dev,
    struct extcon_dev *edev, struct notifier_block *nb);

    Suggested-by: Hans de Goede
    Signed-off-by: Chanwoo Choi
    Tested-by: Hans de Goede
    Acked-by: Hans de Goede

    Chanwoo Choi
     

09 Jan, 2017

1 commit