12 Jan, 2017

1 commit

  • commit 015105b12183556771e111e93f5266851e7c5582 upstream.

    Make sure to drop the references taken by of_parse_phandle() and
    bus_find_device() before returning from am335x_get_phy_control().

    Note that there is no guarantee that the devres-managed struct
    phy_control will be valid for the lifetime of the sibling phy device
    regardless of this change.

    Fixes: 3bb869c8b3f1 ("usb: phy: Add AM335x PHY driver")
    Acked-by: Bin Liu
    Signed-off-by: Johan Hovold
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Johan Hovold
     

17 Dec, 2015

2 commits

  • To prevent VBUS contention, the am335x MUSB phy senses VBUS first before
    transitioning to host mode. However, for host-only mode, VBUS could be
    directly tied to 5V power rail which could prevent MUSB transitions to
    host mode.

    This change receives dr_mode of the controller then bypass the first
    VBUS sensing for host-only mode, so that MUSB can work in host mode
    event if VBUS is tied to 5V.

    Signed-off-by: Bin Liu
    Signed-off-by: Felipe Balbi

    Bin Liu
     
  • The filename of am35x-phy-control.h is confusing. The header is used
    by the am335x phy driver, but the filename refers to am35x. Even worse
    there is indeed another device called am35x but it does not use this
    header at all.

    Signed-off-by: Bin Liu
    Signed-off-by: Felipe Balbi

    Bin Liu
     

11 Mar, 2015

1 commit


15 Dec, 2014

1 commit

  • Pull driver core update from Greg KH:
    "Here's the set of driver core patches for 3.19-rc1.

    They are dominated by the removal of the .owner field in platform
    drivers. They touch a lot of files, but they are "simple" changes,
    just removing a line in a structure.

    Other than that, a few minor driver core and debugfs changes. There
    are some ath9k patches coming in through this tree that have been
    acked by the wireless maintainers as they relied on the debugfs
    changes.

    Everything has been in linux-next for a while"

    * tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
    Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
    fs: debugfs: add forward declaration for struct device type
    firmware class: Deletion of an unnecessary check before the function call "vunmap"
    firmware loader: fix hung task warning dump
    devcoredump: provide a one-way disable function
    device: Add dev__once variants
    ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
    ath: use seq_file api for ath9k debugfs files
    debugfs: add helper function to create device related seq_file
    drivers/base: cacheinfo: remove noisy error boot message
    Revert "core: platform: add warning if driver has no owner"
    drivers: base: support cpu cache information interface to userspace via sysfs
    drivers: base: add cpu_device_create to support per-cpu devices
    topology: replace custom attribute macros with standard DEVICE_ATTR*
    cpumask: factor out show_cpumap into separate helper function
    driver core: Fix unbalanced device reference in drivers_probe
    driver core: fix race with userland in device_add()
    sysfs/kernfs: make read requests on pre-alloc files use the buffer.
    sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
    fs: sysfs: return EGBIG on write if offset is larger than file size
    ...

    Linus Torvalds
     

04 Nov, 2014

1 commit


20 Oct, 2014

1 commit


21 Apr, 2014

1 commit


19 Dec, 2013

1 commit

  • Include header file drivers/usb/phy/am35x-phy-control.h in
    phy/phy-am335x-control.c because function am335x_get_phy_control() has
    its prototype declaration in drivers/usb/phy/am35x-phy-control.h.

    Also, remove definition of structure phy_control because it is already
    defined in the included header.

    This eliminates the following warning in phy/phy-am335x-control.c:
    drivers/usb/phy/phy-am335x-control.c:114:21: warning: no previous prototype for ‘am335x_get_phy_control’ [-Wmissing-prototypes]

    Signed-off-by: Rashika Kheria
    Reviewed-by: Josh Triplett
    Signed-off-by: Felipe Balbi

    Rashika Kheria
     

01 Oct, 2013

2 commits

  • The data structure of_match_ptr() protects is always compiled in.
    Hence of_match_ptr() is not needed.

    Signed-off-by: Sachin Kamat
    Signed-off-by: Felipe Balbi

    Sachin Kamat
     
  • This is based on George Cherian's patch which added power & wakeup
    support to am335x and does no longer apply since I took some if the code
    apart in favor of the multi instance support.
    This compiles and I boots and later it detects a device after I plug it in :)
    Could somebody please test it so it does what it should?

    Cc: George Cherian
    Reviewed-by: Roger Quadros
    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Felipe Balbi

    Sebastian Andrzej Siewior
     

28 Aug, 2013

1 commit

  • Randy reported this
    |drivers/usb/phy/phy-am335x-control.c:45:3: error: implicit declaration
    |of function '__WARN' [-Werror=implicit-function-declaration]

    and left it as an excercice to figure out that this happens only with
    CONFIG_BUG=n. As a fix I replace it with WARN_ON(). And there is a space
    before return so fix this, too.

    Reported-by: Randy Dunlap
    Acked-by: Randy Dunlap
    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Felipe Balbi

    Sebastian Andrzej Siewior
     

14 Aug, 2013

1 commit

  • Stephen Rothwell reported that this driver does not compile on PowerPC
    due to this missing include. One could argue why this driver is enabled
    on PowerPC in the first place but it sure isn't wrong to include headers
    for used function instead of to rely that they sneak in.

    Reported-by: Stephen Rothwell
    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Felipe Balbi

    Sebastian Andrzej Siewior
     

09 Aug, 2013

1 commit

  • This driver is a redo of my earlier attempt. It uses parts of the
    generic PHY driver and uses the new control driver for the register
    the phy needs to power on/off the phy. It also enables easy access for
    the wakeup register which is not yet implemented.
    The difference between the omap attempt is:
    - no static holding variable
    - one global visible function which exports a struct with callbacks to
    access the "control" registers.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Felipe Balbi

    Sebastian Andrzej Siewior