public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] USB patches for 3.15-rc1
@ 2014-04-01 18:49 Greg KH
  2014-04-02  0:28 ` Linus Torvalds
  0 siblings, 1 reply; 14+ messages in thread
From: Greg KH @ 2014-04-01 18:49 UTC (permalink / raw)
  To: Linus Torvalds, Andrew Morton; +Cc: linux-kernel, linux-usb

The following changes since commit fa389e220254c69ffae0d403eac4146171062d08:

  Linux 3.14-rc6 (2014-03-09 19:41:57 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/ tags/usb-3.15-rc1

for you to fetch changes up to 940ab8f1ef9369da5b58a1bec6820bfd4a7b9042:

  Merge tag 'for-usb-next-adventure' of git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-next (2014-03-21 10:47:56 -0700)

----------------------------------------------------------------

USB patches for 3.15-rc1

Here's the big USB pull request for 3.15-rc1.

The normal set of patches, lots of controller driver updates, and a
smattering of individual USB driver updates as well.

All have been in linux-next for a while.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

----------------------------------------------------------------
Adrian Huang (1):
      xhci: add the meaningful IRQ description if it is empty

Alan Stern (5):
      USB: ehci-platform: check for platform data misconfiguration
      USB: ohci-platform: check for platform data misconfiguration
      USB: complain if userspace resets an active endpoint
      USB: unbind all interfaces before rebinding any
      USB: disable reset-resume when USB_QUIRK_RESET is set

Alexander Shiyan (1):
      usb: chipidea: imx: Use dev_name() for ci_hdrc name to distinguish USBs

Alexandre Belloni (1):
      usb: gadget: atmel_usba: fix crash when no endpoint are specified

Andrzej Pietrasiewicz (4):
      usb: gadget: FunctionFS: dereference ffs_dev conditionally
      usb: gadget: code cleanup
      usb: gadget: FunctionFS: staticize functions used only in f_fs.c
      usb: gadget: FunctionFS: use consistent naming with regard to ffs_lock

Austin Beam (1):
      phy: omap-usb2: Provide workaround for USB2PHY false disconnect

Bjørn Mork (2):
      usb: core: let dynamic ids override static ids
      usb: hub: usb_ext_cap_descriptor.bmAttributes is le32

Bo Shen (2):
      usb: gadget: at91: fix the number of endpoint parameter
      usb: gadget: at91: using USBA_NR_DMAS for DMA channels

Christian Vogel (2):
      usb/misc/usbled: Add Riso Kagaku Webmail Notifier
      usbhid/quirks: Ignore Riso Kagaku Webmail Notifier

Chuansheng Liu (1):
      usb: gadget: return the right length in ffs_epfile_io()

Dan Carpenter (4):
      usb: phy: msm: tiny leak on error in probe()
      usb: gadget: gr_udc: remove some unneeded error handling
      usb: dwc3: gadget: cut and paste fixups in suspend/resume
      usb: dwc3: gadget: remove known conditions

Daniel Tang (2):
      usb: chipidea: add support for USB OTG controller on LSI Zevio SoCs
      devicetree: bindings: document lsi,zevio-usb

Dinh Nguyen (1):
      usb: dwc2: handle the Host Port Interrupt when it occurs in device mode

Fabio Estevam (1):
      usb: chipidea: Propagate the real error code on platform_get_irq() failure

Felipe Balbi (19):
      usb: musb: avoid NULL pointer dereference
      usb: dwc3: gadget: always enable IOC on bulk/interrupt transfers
      usb: dwc3: core: define bit 10 of GCTL register
      usb: dwc3: workaround: clock gating issues
      usb: dwc3: workaround: bogus hibernation events
      usb: dwc3: cleanup struct dwc3
      usb: dwc3: add has_hibernation flag
      usb: dwc3: core: allocate scratch buffers
      usb: dwc3: core: fix indentation
      usb: dwc3: gadget: set KEEP_CONNECT in case of hibernation
      usb: dwc3: gadget: make sure HIRD threshold is 0 in superspeed
      usb: dwc3: gadget: call gadget driver's ->suspend/->resume
      usb: dwc3: gadget: pre-start Stream transfers when they're queued
      usb: dwc3: fix randconfig build errors
      usb: dwc3: define more revisions
      usb: gadget: lpc32xx_udc: fix wrong clk_put() sequence
      usb: gadget: f_subset: switch over to PTR_RET
      usb: gadget: inode: switch over to memdup_user()
      usb: gadget: composite: switch over to ERR_CAST()

Geert Uytterhoeven (1):
      usb: musb: USB_MUSB_DUAL_ROLE/USB_MUSB_GADGET should depend on HAS_DMA

George Cherian (6):
      usb: musb: musb_host: Enable ISOCH IN handling for AM335x host
      usb: musb: musb_cppi41: Make CPPI aware of high bandwidth transfers
      usb: musb: musb_cppi41: Handle ISOCH differently and not use the hrtimer.
      usb: musb: musb_cppi41: Dont reprogram DMA if tear down is initiated
      phy: omap-usb2: Adapt phy-omap-usb2 for AM437x
      phy: omap-usb2: Add different compatible for OMAP5

Gerd Hoffmann (6):
      xhci: fix usb3 streams
      uas: properly reinitialize in uas_eh_bus_reset_handler
      uas: make work list per-device
      uas: add dead request list
      uas: replace BUG_ON() + WARN_ON() with WARN_ON_ONCE()
      uas: remove BROKEN

Greg Kroah-Hartman (8):
      Merge 3.14-rc3 into usb-next
      Merge 3.14-rc4 into usb-next
      Merge 3.14-rc5 into usb-next
      Merge tag 'for-usb-next-2014-03-06' of git://git.kernel.org/.../sarah/xhci into usb-next
      Merge tag 'usb-for-v3.15' of git://git.kernel.org/.../balbi/usb into usb-next
      Merge tag 'for_3.15' of git://git.kernel.org/.../kishon/linux-phy into usb-next
      Merge 3.14-rc6 into usb-next
      Merge tag 'for-usb-next-adventure' of git://git.kernel.org/.../sarah/xhci into usb-next

Gregory CLEMENT (1):
      usb: gadget: atmel_usba: fix crashed during stopping when DEBUG is enabled

Hans de Goede (72):
      ohci-platform: Add support for devicetree instantiation
      ehci-platform: Add support for clks and phy passed through devicetree
      ohci-platform: Add support for controllers with big-endian regs / descriptors
      ehci-platform: Add support for controllers with big-endian regs / descriptors
      ohci-platform: Change compatible string from usb-ohci to generic-ohci
      ehci-platform: Change compatible string from usb-ehci to generic-ehci
      uhci-platform: Change compatible string from platform-uhci to generic-uhci
      xhci-platform: Change compatible string from xhci-platform to generic-xhci
      phy-core: Don't allow building phy-core as a module
      PHY: sunxi: Add driver for sunxi usb phy
      xhci: Free streams when they are still allocated on a set_interface call
      xhci: Check size rather then number of streams when allocating stream ctxs
      xhci: For streams the css flag most be read from the stream-ctx on ep stop
      xhci: Set SCT field for Set TR dequeue on streams
      xhci: For streams the dequeue ptr must be read from the stream ctx
      xhci: use usb_ss_max_streams in xhci_check_streams_endpoint
      usb-core: Fix usb_free_streams return value documentation
      usb-core: Move USB_MAXENDPOINTS definitions to usb.h
      usb-core: Track if an endpoint has streams
      usb-core: Free bulk streams on interface release
      usbfs: Kill urbs on interface before doing a set_interface
      usbfs: proc_do_submiturb use a local variable for number_of_packets
      usbfs: Add support for bulk stream ids
      usbfs: Add ep_to_host_endpoint helper function
      usbfs: Add support for allocating / freeing streams
      uas: Urbs must be anchored before submitting them
      uas: Properly set interface to altsetting 0 on probe failure
      uas: Avoid unnecessary unlock / lock calls around unlink_data_urbs
      uas: uas_alloc_cmd_urb: drop unused stream_id parameter
      uas: Fix uas not working when plugged into an ehci port
      uas: Fix reset locking
      uas: Fix reset handling for externally triggered reset
      uas: s/response_ui/response_iu/
      uas: Fix response iu struct definition
      uas: Pack iu struct definitions
      uas: Use all available stream ids
      uas: Add a uas_find_uas_alt_setting helper function
      uas: Move uas detect code to uas-detect.h
      xhci: xhci_mem_cleanup: make sure cmd_ring_reserved_trbs really is 0
      xhci: The trb_address_map radix tree expects 1KB segment memory aligment
      xhci: Handle MaxPSASize == 0
      usb: Clear host_endpoint->streams when implicitly freeing streams
      usb: Reset USB-3 devices on USB-3 link bounce
      uas: Add the posibilty to blacklist uas devices from using the uas driver
      usb-storage: Don't bind to uas devices if the uas driver is enabled
      usb-storage: Modify and export adjust_quirks so that it can be used by uas
      uas: Honor no-uas quirk set in usb-storage's quirks module parameter
      uas: Add uas_find_endpoints() helper function
      uas: Fix bounds check in uas_find_endpoints
      uas: Move uas_find_endpoints to uas-detect.h
      uas: Drop fixed endpoint config handling
      uas: Verify endpoint descriptors from uas_use_uas_driver()
      uas: Not being able to alloc streams when connected through usb-3 is an error
      uas: task_mgmt: Kill the sense-urb if we fail to submit the cmd urb
      uas: Don't allow more then one task to run at the same time
      uas: Use GFP_NOIO rather then GFP_ATOMIC where possible
      uas: Add suspend/resume support
      uas: Reset device on reboot
      uas: Fix task-management not working when connected over USB-2
      uas: uas_alloc_data_urb: Remove unnecessary use_streams check
      uas: Properly complete inflight commands on bus-reset or disconnect
      uas: add uas_mark_cmd_dead helper function
      uas: cmdinfo: use only one list head
      uas: Fix command / task mgmt submission racing with disconnect
      uas: Fix memory management
      uas: Clear cmdinfo on command queue-ing
      uas: Use the right error codes for different kinds of errors
      uas: Improve error reporting
      uas: Add some data in/out ready iu sanity checks
      uas: Make sure sg elements are properly aligned
      uas: Add Hans de Goede as uas maintainer
      uas: Remove comment about registering a uas scsi controller for each usb bus

Huang Rui (1):
      usb: dwc3: fix wrong bit mask in dwc3_event_devt

Jingoo Han (2):
      usb: gadget: s3c-hsotg: use %pad for dma_addr_t
      usb: chipidea: use dev_get_platdata()

Joe Perches (1):
      USB: sisusb: Use static const, fix typo

Johan Hovold (7):
      USB: cypress_m8: fix potential scheduling while atomic
      USB: serial: make bulk_out_size a lower limit
      USB: serial: continue to read on errors
      USB: serial: continue to write on errors
      USB: serial: add missing braces
      USB: serial: add missing newlines to dev_<level> messages.
      USB: keyspan: remove dead debugging code

Julia Lawall (1):
      usb: gadget: fix error return code

Kamil Debski (4):
      phy: core: Add an exported of_phy_get function
      phy: core: Add devm_of_phy_get to phy-core
      phy: Add new Exynos USB 2.0 PHY driver
      phy: Add Exynos 5250 support to the Exynos USB 2.0 PHY driver

Kees Cook (1):
      usb: gadget: tcm_usb_gadget: stop format strings

Kishon Vijay Abraham I (7):
      Documentation: dt bindings: move ..usb/usb-phy.txt to ..phy/ti-phy.txt
      usb: dwc3: core: support optional PHYs
      usb: dwc3: adapt dwc3 core to use Generic PHY Framework
      drivers: phy: usb3/pipe3: Adapt pipe3 driver to Generic PHY Framework
      usb: phy: omap-usb2: remove *set_suspend* callback from omap-usb2
      phy: omap-usb2: move omap_usb.h from linux/usb/ to linux/phy/
      phy: rename struct omap_control_usb to struct omap_control_phy

Li Jun (1):
      usb: phy: fsm: update OTG HNP state transition conditions according to OTG and EH 2.0 spec.

Loc Ho (2):
      Documentation: Add APM X-Gene SoC 15Gbps Multi-purpose PHY driver binding documentation
      PHY: add APM X-Gene SoC 15Gbps Multi-purpose PHY driver

Manu Gautam (1):
      usb: gadget: f_fs: Add support for SuperSpeed Mode

Marek Szyprowski (1):
      usb: gadget: s3c-hsotg: add proper suspend/resume support

Markus Pargmann (2):
      usb: musb: dsps, use devm_kzalloc
      usb: musb: dsps, debugfs files

Mathias Nyman (1):
      xhci: Prevent runtime pm from autosuspending during initialization

Matt Porter (1):
      usb: gadget: s3c-hsotg: fix build on x86 and other architectures

Michael Grzeschik (1):
      usb: chipidea: udc: add maximum-speed = full-speed option

Michal Nazarewicz (3):
      usb: gadget: functionfs: fix typo in the enum variable
      usb: gadget: functionfs: replace FFS_SETUP_STATUS with an inline function
      usb: gadget: f_fs: Add flags to descriptors block

Michal Simek (1):
      usb: phy: Add ulpi IDs for SMSC USB3320 and TI TUSB1210

Oliver Neukum (3):
      hub: debug message for failing to enable device
      xhci: make warnings greppable
      storage: accept some UAS devices if streams are unavailable

Paul Bolle (3):
      USB: ELAN: Remove useless "default M" lines
      usb: host: remove USB_ARCH_HAS_?HCI
      usb: host: remove selects of USB_ARCH_HAS_?HCI

Paul Zimmerman (5):
      usb: dwc2: fix dereference before NULL check
      usb: dwc3: add 'saved_state' field to dwc3_ep structure
      usb: dwc3: gadget: implement dwc3_gadget_get_link_state
      usb: dwc3: gadget: add a 'restore' argument to set_ep_config
      usb: dwc3: gadget: add 'force' argument to stop_active_transfer

Peter Chen (15):
      usb: chipidea: refine PHY operation
      usb: chipidea: udc: refine ep operation at isr_tr_complete_handler
      usb: doc: phy-mxs: Add more compatible strings
      usb: phy: mxs: Add platform judgement code
      usb: phy: mxs: Add auto clock and power setting
      usb: doc: phy-mxs: update binding for adding anatop phandle
      usb: phy: mxs: Add anatop regmap
      usb: phy: mxs: change description of usb device speed
      usb: phy: mxs: Enable IC fixes for related SoCs
      usb: phy: mxs: add controller id
      usb: phy: Add set_wakeup API
      usb: phy: mxs: Add implementation of set_wakeup
      usb: phy: mxs: Add system suspend/resume API
      usb: phy: mxs: Add sync time after controller clear phcd
      usb: chipidea: udc: refine isr_tr_complete_handler

Richard Weinberger (1):
      Remove MACH_OMAP_H4_OTG

Robert Baldyga (6):
      usb: gadget: s3c-hsotg: stall ep0 in set_halt function
      usb: gadget: f_fs: fix setup request handling
      usb: gadget: f_fs: add poll for endpoint 0
      usb: gadget: f_fs: add aio support
      usb: gadget: at91_udc: fix ep maxpacket initialisation
      usb: gadget: f_fs: add missing spinlock and mutex unlock

Roger Quadros (11):
      phy: omap-control: Update DT binding information
      phy: omap-control: update dra7 and am437 usb2 Documentation bindings
      phy: ti-pipe3: Add clocks to PIPE3 PHY Documentation binding
      phy: ti-pipe3: Add SATA compatible to Documentation binding
      phy: omap-control: update dra7 and am437 usb2 bindings
      phy: ti-pipe3: cleanup clock handling
      phy: ti-pipe3: Add SATA DPLL support
      phy: ti-pipe3: Don't get 'wkupclk' and 'refclk' for SATA PHY
      phy: ti-pipe3: streamline PHY operations
      phy: ti-pipe3: Fix suspend/resume and module reload
      phy: omap: Depend on OMAP_OCP2SCP bus driver

Sachin Kamat (5):
      usb: gadget: s3c2410_udc: Fix build error
      usb: gadget: s3c-hsudc: remove unused label
      usb: phy: twl4030-usb: Silence checkpatch warnings
      usb: phy: twl4030-usb: Remove redundant semicolon
      usb: phy: bcm-kona-usb2: Use PTR_ERR_OR_ZERO

Sarah Sharp (5):
      usb/xhci: Change how we indicate a host supports Link PM.
      xhci: Remove segments from radix tree on failed insert.
      xhci: Refactor command watchdog and fix split string.
      xhci: Kill streams URBs when the host dies.
      xhci: Transition maintainership to Mathias Nyman.

Sebastian Hesselbarth (1):
      phy: mvebu-sata: prepare new Dove DT Kconfig variable

Sergei Shtylyov (1):
      usb: phy: rcar-gen2-usb: always use 'dev' variable in probe() method

Shaibal Dutta (1):
      usb: move hub init and LED blink work to power efficient workqueue

Sylwester Nawrocki (2):
      phy: Select PHY_EXYNOS_MIPI_VIDEO by default for ARCH_EXYNOS
      phy: Select PHY_EXYNOS_DP_VIDEO by default for ARCH_EXYNOS

Thierry Reding (1):
      USB: EHCI: tegra: Drop unused defines

Thomas Pugliese (13):
      usb: wusbcore: fix kernel panic on HWA unplug
      usb: wusbcore: fix stranded URB after HWA unplug
      usb: wusbcore: prevent urb dequeue and giveback race
      usb: wusbcore: add a convenience function for completing a transfer segment
      usb: wusbcore: adjust iterator correctly when searching for ep comp descriptor
      usb: wusbcore: read actual_length bytes isoc in segments
      usb: wusbcore: add info to HWA debug prints
      usb: wusbcore: fix compile warnings
      usb: wusbcore: fix potential double list_del on urb dequeue
      usb: wusbcore: don't mark WA_SEG_DTI_PENDING segs as done in urb_dequeue
      usb: wusbcore: disable transfer notifications for Alereon HWAs
      usb: wusbcore: combine iso transfer result frame reads when possible
      usb: wusbcore: use multiple urbs for HWA iso transfer result frame reads

Weinn Jheng (1):
      usb: gadget: u_ether: move hardware transmit to RX NAPI

Wolfram Sang (1):
      usb: dwc3: omap: don't check resource with devm_ioremap_resource

Yuvaraj Kumar C D (1):
      PHY: Exynos: Add Exynos5250 SATA PHY driver

wenlin.kang (2):
      usb: gadget: printer: fix possible deadlock
      usb: gadget: printer: fix memory leak

 .../devicetree/bindings/phy/apm-xgene-phy.txt      |   79 +
 .../devicetree/bindings/phy/samsung-phy.txt        |   54 +
 .../devicetree/bindings/phy/sun4i-usb-phy.txt      |   26 +
 Documentation/devicetree/bindings/phy/ti-phy.txt   |   86 +
 .../devicetree/bindings/usb/ci-hdrc-imx.txt        |    2 +
 .../devicetree/bindings/usb/ci-hdrc-zevio.txt      |   17 +
 Documentation/devicetree/bindings/usb/dwc3.txt     |    6 +-
 Documentation/devicetree/bindings/usb/mxs-phy.txt  |    8 +-
 Documentation/devicetree/bindings/usb/omap-usb.txt |   24 -
 Documentation/devicetree/bindings/usb/usb-ehci.txt |   27 +-
 Documentation/devicetree/bindings/usb/usb-ohci.txt |   25 +
 Documentation/devicetree/bindings/usb/usb-phy.txt  |   48 -
 .../usb/{platform-uhci.txt => usb-uhci.txt}        |    4 +-
 Documentation/devicetree/bindings/usb/usb-xhci.txt |    4 +-
 .../devicetree/bindings/usb/via,vt8500-ehci.txt    |   15 -
 .../devicetree/bindings/usb/vt8500-ehci.txt        |   12 -
 Documentation/phy/samsung-usb2.txt                 |  135 ++
 MAINTAINERS                                        |    5 +-
 arch/arm/Kconfig                                   |    3 -
 arch/arm/mach-exynos/Kconfig                       |    1 -
 arch/arm/mach-omap2/Kconfig                        |    2 -
 arch/arm/mach-shmobile/Kconfig                     |    4 -
 arch/arm/mach-tegra/Kconfig                        |    1 -
 arch/mips/Kconfig                                  |    7 -
 arch/mips/ath79/Kconfig                            |    8 -
 arch/mips/ralink/Kconfig                           |    6 -
 arch/powerpc/platforms/44x/Kconfig                 |    1 -
 arch/powerpc/platforms/ps3/Kconfig                 |    2 -
 arch/sh/Kconfig                                    |    9 -
 drivers/hid/hid-core.c                             |    1 +
 drivers/hid/hid-ids.h                              |    3 +
 drivers/phy/Kconfig                                |  107 +-
 drivers/phy/Makefile                               |    9 +
 drivers/phy/phy-bcm-kona-usb2.c                    |    4 +-
 drivers/phy/phy-core.c                             |   76 +-
 drivers/phy/phy-exynos4210-usb2.c                  |  261 +++
 drivers/phy/phy-exynos4x12-usb2.c                  |  328 ++++
 drivers/phy/phy-exynos5250-sata.c                  |  251 +++
 drivers/phy/phy-exynos5250-usb2.c                  |  404 +++++
 drivers/{usb => }/phy/phy-omap-control.c           |  169 +-
 drivers/phy/phy-omap-usb2.c                        |  131 +-
 drivers/phy/phy-samsung-usb2.c                     |  228 +++
 drivers/phy/phy-samsung-usb2.h                     |   67 +
 drivers/phy/phy-sun4i-usb.c                        |  331 ++++
 drivers/phy/phy-ti-pipe3.c                         |  470 ++++++
 drivers/phy/phy-twl4030-usb.c                      |    6 +-
 drivers/phy/phy-xgene.c                            | 1750 ++++++++++++++++++++
 drivers/usb/Kconfig                                |   10 -
 drivers/usb/chipidea/Makefile                      |    1 +
 drivers/usb/chipidea/bits.h                        |    2 +
 drivers/usb/chipidea/ci.h                          |    2 -
 drivers/usb/chipidea/ci_hdrc_imx.c                 |    2 +-
 drivers/usb/chipidea/ci_hdrc_zevio.c               |   72 +
 drivers/usb/chipidea/core.c                        |   87 +-
 drivers/usb/chipidea/udc.c                         |  324 ++--
 drivers/usb/core/config.c                          |    1 -
 drivers/usb/core/devio.c                           |  174 +-
 drivers/usb/core/driver.c                          |  121 +-
 drivers/usb/core/hcd.c                             |   37 +-
 drivers/usb/core/hub.c                             |   97 +-
 drivers/usb/core/message.c                         |    7 +-
 drivers/usb/core/usb.h                             |    2 +-
 drivers/usb/dwc2/core_intr.c                       |   25 +-
 drivers/usb/dwc2/hcd_intr.c                        |   14 +-
 drivers/usb/dwc3/core.c                            |  251 ++-
 drivers/usb/dwc3/core.h                            |  105 +-
 drivers/usb/dwc3/dwc3-omap.c                       |    5 -
 drivers/usb/dwc3/gadget.c                          |  183 +-
 drivers/usb/dwc3/gadget.h                          |   12 -
 drivers/usb/gadget/Kconfig                         |    3 +-
 drivers/usb/gadget/at91_udc.c                      |   14 +-
 drivers/usb/gadget/atmel_usba_udc.c                |   16 +-
 drivers/usb/gadget/atmel_usba_udc.h                |    2 +-
 drivers/usb/gadget/composite.c                     |    2 +-
 drivers/usb/gadget/f_fs.c                          |  616 +++++--
 drivers/usb/gadget/f_subset.c                      |    2 +-
 drivers/usb/gadget/gr_udc.c                        |   10 +-
 drivers/usb/gadget/inode.c                         |    9 +-
 drivers/usb/gadget/lpc32xx_udc.c                   |    4 +-
 drivers/usb/gadget/printer.c                       |    8 +-
 drivers/usb/gadget/s3c-hsotg.c                     |  143 +-
 drivers/usb/gadget/s3c-hsudc.c                     |    1 -
 drivers/usb/gadget/tcm_usb_gadget.c                |    2 +-
 drivers/usb/gadget/u_ether.c                       |  101 +-
 drivers/usb/gadget/u_fs.h                          |   30 +-
 drivers/usb/host/Kconfig                           |    1 -
 drivers/usb/host/ehci-platform.c                   |  182 +-
 drivers/usb/host/ehci-tegra.c                      |    4 -
 drivers/usb/host/hwa-hc.c                          |   42 +-
 drivers/usb/host/ohci-platform.c                   |  199 ++-
 drivers/usb/host/uhci-platform.c                   |    1 +
 drivers/usb/host/xhci-hub.c                        |    8 +-
 drivers/usb/host/xhci-mem.c                        |  212 ++-
 drivers/usb/host/xhci-pci.c                        |   18 +-
 drivers/usb/host/xhci-plat.c                       |    4 +
 drivers/usb/host/xhci-ring.c                       |  146 +-
 drivers/usb/host/xhci.c                            |   33 +-
 drivers/usb/host/xhci.h                            |    5 +-
 drivers/usb/misc/Kconfig                           |    1 -
 drivers/usb/misc/sisusbvga/sisusb.c                |   10 +-
 drivers/usb/misc/usbled.c                          |   34 +
 drivers/usb/musb/Kconfig                           |    2 +
 drivers/usb/musb/musb_core.c                       |    5 +-
 drivers/usb/musb/musb_cppi41.c                     |   69 +-
 drivers/usb/musb/musb_dsps.c                       |   58 +-
 drivers/usb/musb/musb_host.c                       |   30 +-
 drivers/usb/musb/omap2430.c                        |    2 +-
 drivers/usb/phy/Kconfig                            |   21 -
 drivers/usb/phy/Makefile                           |    2 -
 drivers/usb/phy/phy-fsm-usb.c                      |    9 +-
 drivers/usb/phy/phy-msm-usb.c                      |    3 +-
 drivers/usb/phy/phy-mxs-usb.c                      |  310 +++-
 drivers/usb/phy/phy-omap-usb3.c                    |  361 ----
 drivers/usb/phy/phy-rcar-gen2-usb.c                |    6 +-
 drivers/usb/phy/phy-twl6030-usb.c                  |    2 +-
 drivers/usb/phy/phy-ulpi.c                         |    2 +
 drivers/usb/serial/ch341.c                         |    6 +-
 drivers/usb/serial/cyberjack.c                     |    2 +-
 drivers/usb/serial/cypress_m8.c                    |   21 +-
 drivers/usb/serial/generic.c                       |   61 +-
 drivers/usb/serial/iuu_phoenix.c                   |    2 +-
 drivers/usb/serial/keyspan.c                       |   30 -
 drivers/usb/serial/keyspan_pda.c                   |    2 +-
 drivers/usb/serial/kl5kusb105.c                    |    4 +-
 drivers/usb/serial/kobil_sct.c                     |    3 +-
 drivers/usb/serial/mos7720.c                       |   12 +-
 drivers/usb/serial/mos7840.c                       |    4 +-
 drivers/usb/serial/quatech2.c                      |    2 +-
 drivers/usb/serial/spcp8x5.c                       |    7 +-
 drivers/usb/serial/symbolserial.c                  |    4 +-
 drivers/usb/serial/ti_usb_3410_5052.c              |    4 +-
 drivers/usb/serial/usb-serial.c                    |   17 +-
 drivers/usb/storage/Kconfig                        |    2 +-
 drivers/usb/storage/uas-detect.h                   |   96 ++
 drivers/usb/storage/uas.c                          |  687 +++++---
 drivers/usb/storage/unusual_devs.h                 |    5 +
 drivers/usb/storage/unusual_uas.h                  |   52 +
 drivers/usb/storage/usb.c                          |   26 +-
 drivers/usb/storage/usb.h                          |    3 +
 drivers/usb/wusbcore/devconnect.c                  |    4 +-
 drivers/usb/wusbcore/wa-hc.c                       |    2 -
 drivers/usb/wusbcore/wa-hc.h                       |   26 +-
 drivers/usb/wusbcore/wa-rpipe.c                    |    2 +-
 drivers/usb/wusbcore/wa-xfer.c                     |  583 +++++--
 .../omap_control_usb.h => phy/omap_control_phy.h}  |   36 +-
 include/linux/{usb => phy}/omap_usb.h              |   14 +-
 include/linux/phy/phy.h                            |   15 +
 include/linux/usb.h                                |    4 +
 include/linux/usb/chipidea.h                       |    1 +
 include/linux/usb/hcd.h                            |    1 +
 include/linux/usb/phy.h                            |   16 +
 include/linux/usb/serial.h                         |    3 +-
 include/linux/usb/uas.h                            |   14 +-
 include/linux/usb_usual.h                          |    6 +-
 include/uapi/linux/usb/functionfs.h                |   44 +-
 include/uapi/linux/usbdevice_fs.h                  |   12 +-
 156 files changed, 9148 insertions(+), 2183 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/phy/apm-xgene-phy.txt
 create mode 100644 Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
 create mode 100644 Documentation/devicetree/bindings/phy/ti-phy.txt
 create mode 100644 Documentation/devicetree/bindings/usb/ci-hdrc-zevio.txt
 create mode 100644 Documentation/devicetree/bindings/usb/usb-ohci.txt
 delete mode 100644 Documentation/devicetree/bindings/usb/usb-phy.txt
 rename Documentation/devicetree/bindings/usb/{platform-uhci.txt => usb-uhci.txt} (76%)
 delete mode 100644 Documentation/devicetree/bindings/usb/via,vt8500-ehci.txt
 delete mode 100644 Documentation/devicetree/bindings/usb/vt8500-ehci.txt
 create mode 100644 Documentation/phy/samsung-usb2.txt
 create mode 100644 drivers/phy/phy-exynos4210-usb2.c
 create mode 100644 drivers/phy/phy-exynos4x12-usb2.c
 create mode 100644 drivers/phy/phy-exynos5250-sata.c
 create mode 100644 drivers/phy/phy-exynos5250-usb2.c
 rename drivers/{usb => }/phy/phy-omap-control.c (53%)
 create mode 100644 drivers/phy/phy-samsung-usb2.c
 create mode 100644 drivers/phy/phy-samsung-usb2.h
 create mode 100644 drivers/phy/phy-sun4i-usb.c
 create mode 100644 drivers/phy/phy-ti-pipe3.c
 create mode 100644 drivers/phy/phy-xgene.c
 create mode 100644 drivers/usb/chipidea/ci_hdrc_zevio.c
 delete mode 100644 drivers/usb/phy/phy-omap-usb3.c
 create mode 100644 drivers/usb/storage/uas-detect.h
 create mode 100644 drivers/usb/storage/unusual_uas.h
 rename include/linux/{usb/omap_control_usb.h => phy/omap_control_phy.h} (68%)
 rename include/linux/{usb => phy}/omap_usb.h (86%)

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [GIT PULL] USB patches for 3.15-rc1
  2014-04-01 18:49 [GIT PULL] USB patches for 3.15-rc1 Greg KH
@ 2014-04-02  0:28 ` Linus Torvalds
  2014-04-02  2:28   ` Greg KH
  0 siblings, 1 reply; 14+ messages in thread
From: Linus Torvalds @ 2014-04-02  0:28 UTC (permalink / raw)
  To: Greg KH, Kishon Vijay Abraham I, Loc Ho, Tejun Heo
  Cc: Andrew Morton, Linux Kernel Mailing List, USB list

On Tue, Apr 1, 2014 at 11:49 AM, Greg KH <gregkh@linuxfoundation.org> wrote:
>
> USB patches for 3.15-rc1
>
> Here's the big USB pull request for 3.15-rc1.

Hmm. I'm getting this when testing:

  warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))

which looks like AHCI_XGENE doesn't have the proper dependency on OF
(or alternatively PHY_XGENE has an incorrect dependemcy on OF).

According to google it looks like Fengguang reported this on
kbuild-all, but nowhere else.

The actual build then succeeds. But the Kconfig warning is real and
implies that something is seriously wrong wrt the dependencies for
this thing.

It looks like the "select PHY_XGENE" came in through the libata
update, but this USB update actually brought in the "config PHY_XGENE"
and thus this error. Which makes me wonder how this all worked. Why
does that "select PHY_XGENE" exist when apparently it's not needed?

Regardless, there's something broken somewhere.

                  Linus

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [GIT PULL] USB patches for 3.15-rc1
  2014-04-02  0:28 ` Linus Torvalds
@ 2014-04-02  2:28   ` Greg KH
  2014-04-02  5:42     ` Loc Ho
  0 siblings, 1 reply; 14+ messages in thread
From: Greg KH @ 2014-04-02  2:28 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: Kishon Vijay Abraham I, Loc Ho, Tejun Heo, Andrew Morton,
	Linux Kernel Mailing List, USB list

On Tue, Apr 01, 2014 at 05:28:19PM -0700, Linus Torvalds wrote:
> On Tue, Apr 1, 2014 at 11:49 AM, Greg KH <gregkh@linuxfoundation.org> wrote:
> >
> > USB patches for 3.15-rc1
> >
> > Here's the big USB pull request for 3.15-rc1.
> 
> Hmm. I'm getting this when testing:
> 
>   warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
> dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))
> 
> which looks like AHCI_XGENE doesn't have the proper dependency on OF
> (or alternatively PHY_XGENE has an incorrect dependemcy on OF).
> 
> According to google it looks like Fengguang reported this on
> kbuild-all, but nowhere else.
> 
> The actual build then succeeds. But the Kconfig warning is real and
> implies that something is seriously wrong wrt the dependencies for
> this thing.
> 
> It looks like the "select PHY_XGENE" came in through the libata
> update, but this USB update actually brought in the "config PHY_XGENE"
> and thus this error. Which makes me wonder how this all worked. Why
> does that "select PHY_XGENE" exist when apparently it's not needed?
> 
> Regardless, there's something broken somewhere.

Odd, I don't know what to do to fix this up "properly".

Loc Ho, this came in from your patch, any ideas?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [GIT PULL] USB patches for 3.15-rc1
  2014-04-02  2:28   ` Greg KH
@ 2014-04-02  5:42     ` Loc Ho
  2014-04-02 13:06       ` Kishon Vijay Abraham I
  0 siblings, 1 reply; 14+ messages in thread
From: Loc Ho @ 2014-04-02  5:42 UTC (permalink / raw)
  To: Greg KH
  Cc: Linus Torvalds, Kishon Vijay Abraham I, Tejun Heo, Andrew Morton,
	Linux Kernel Mailing List, USB list

Hi,

>> > USB patches for 3.15-rc1
>> >
>> > Here's the big USB pull request for 3.15-rc1.
>>
>> Hmm. I'm getting this when testing:
>>
>>   warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
>> dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))
>>
>> which looks like AHCI_XGENE doesn't have the proper dependency on OF
>> (or alternatively PHY_XGENE has an incorrect dependemcy on OF).
>>
>> According to google it looks like Fengguang reported this on
>> kbuild-all, but nowhere else.
>>
>> The actual build then succeeds. But the Kconfig warning is real and
>> implies that something is seriously wrong wrt the dependencies for
>> this thing.
>>
>> It looks like the "select PHY_XGENE" came in through the libata
>> update, but this USB update actually brought in the "config PHY_XGENE"
>> and thus this error. Which makes me wonder how this all worked. Why
>> does that "select PHY_XGENE" exist when apparently it's not needed?
>>
>> Regardless, there's something broken somewhere.
>
> Odd, I don't know what to do to fix this up "properly".
>
> Loc Ho, this came in from your patch, any ideas?

I don't think it has anything to do with USB. With the current
dependency, X-Gene SATA AHCI driver will be included if either ARM64
or COMPILE_TEST. It in turn will select "PHY_XGENE" which has
dependency on OF and HAS_IOMEM. An fix would be make AHCI_XGENE
depends on OF as suggested by Linus. This is trigger by "COMPILE_TEST"
for non-ARM64. We can also remove "COMPILE_TEST" from AHCI_XGENE
driver like other SATA drivers. My prefer solution is to remove
"COMPILE_TEST".

-Loc

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [GIT PULL] USB patches for 3.15-rc1
  2014-04-02  5:42     ` Loc Ho
@ 2014-04-02 13:06       ` Kishon Vijay Abraham I
  2014-04-02 14:45         ` Bartlomiej Zolnierkiewicz
  2014-04-02 15:49         ` Loc Ho
  0 siblings, 2 replies; 14+ messages in thread
From: Kishon Vijay Abraham I @ 2014-04-02 13:06 UTC (permalink / raw)
  To: Loc Ho, Greg KH
  Cc: Linus Torvalds, Tejun Heo, Andrew Morton,
	Linux Kernel Mailing List, USB list

Hi,

On Wednesday 02 April 2014 11:12 AM, Loc Ho wrote:
> Hi,
> 
>>>> USB patches for 3.15-rc1
>>>>
>>>> Here's the big USB pull request for 3.15-rc1.
>>>
>>> Hmm. I'm getting this when testing:
>>>
>>>   warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
>>> dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))
>>>
>>> which looks like AHCI_XGENE doesn't have the proper dependency on OF
>>> (or alternatively PHY_XGENE has an incorrect dependemcy on OF).
>>>
>>> According to google it looks like Fengguang reported this on
>>> kbuild-all, but nowhere else.
>>>
>>> The actual build then succeeds. But the Kconfig warning is real and
>>> implies that something is seriously wrong wrt the dependencies for
>>> this thing.
>>>
>>> It looks like the "select PHY_XGENE" came in through the libata
>>> update, but this USB update actually brought in the "config PHY_XGENE"
>>> and thus this error. Which makes me wonder how this all worked. Why
>>> does that "select PHY_XGENE" exist when apparently it's not needed?
>>>
>>> Regardless, there's something broken somewhere.
>>
>> Odd, I don't know what to do to fix this up "properly".
>>
>> Loc Ho, this came in from your patch, any ideas?

Shouldn't we let the users to enable PHY_XGENE (maybe add in the platform
defconfig)?

Thanks
Kishon

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [GIT PULL] USB patches for 3.15-rc1
  2014-04-02 13:06       ` Kishon Vijay Abraham I
@ 2014-04-02 14:45         ` Bartlomiej Zolnierkiewicz
  2014-04-02 15:49         ` Loc Ho
  1 sibling, 0 replies; 14+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2014-04-02 14:45 UTC (permalink / raw)
  To: Kishon Vijay Abraham I
  Cc: Loc Ho, Greg KH, Linus Torvalds, Tejun Heo, Andrew Morton,
	Linux Kernel Mailing List, USB list


Hi,

On Wednesday, April 02, 2014 06:36:13 PM Kishon Vijay Abraham I wrote:
> Hi,
> 
> On Wednesday 02 April 2014 11:12 AM, Loc Ho wrote:
> > Hi,
> > 
> >>>> USB patches for 3.15-rc1
> >>>>
> >>>> Here's the big USB pull request for 3.15-rc1.
> >>>
> >>> Hmm. I'm getting this when testing:
> >>>
> >>>   warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
> >>> dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))
> >>>
> >>> which looks like AHCI_XGENE doesn't have the proper dependency on OF
> >>> (or alternatively PHY_XGENE has an incorrect dependemcy on OF).
> >>>
> >>> According to google it looks like Fengguang reported this on
> >>> kbuild-all, but nowhere else.
> >>>
> >>> The actual build then succeeds. But the Kconfig warning is real and
> >>> implies that something is seriously wrong wrt the dependencies for
> >>> this thing.
> >>>
> >>> It looks like the "select PHY_XGENE" came in through the libata
> >>> update, but this USB update actually brought in the "config PHY_XGENE"
> >>> and thus this error. Which makes me wonder how this all worked. Why
> >>> does that "select PHY_XGENE" exist when apparently it's not needed?
> >>>
> >>> Regardless, there's something broken somewhere.
> >>
> >> Odd, I don't know what to do to fix this up "properly".
> >>
> >> Loc Ho, this came in from your patch, any ideas?
> 
> Shouldn't we let the users to enable PHY_XGENE (maybe add in the platform
> defconfig)?

The idea that PHY drivers have to be explicitly enabled to make
other drivers work doesn't sound very attractive.  I would prefer
to go with Loc's idea of dropping COMPILE_TEST dependency and
making the AHCI_XGENE driver available only on ARM64.

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [GIT PULL] USB patches for 3.15-rc1
  2014-04-02 13:06       ` Kishon Vijay Abraham I
  2014-04-02 14:45         ` Bartlomiej Zolnierkiewicz
@ 2014-04-02 15:49         ` Loc Ho
  2014-04-02 15:53           ` [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE Tejun Heo
  1 sibling, 1 reply; 14+ messages in thread
From: Loc Ho @ 2014-04-02 15:49 UTC (permalink / raw)
  To: Kishon Vijay Abraham I
  Cc: Greg KH, Linus Torvalds, Tejun Heo, Andrew Morton,
	Linux Kernel Mailing List, USB list

Hi,

>>>>> USB patches for 3.15-rc1
>>>>>
>>>>> Here's the big USB pull request for 3.15-rc1.
>>>>
>>>> Hmm. I'm getting this when testing:
>>>>
>>>>   warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
>>>> dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))
>>>>
>>>> which looks like AHCI_XGENE doesn't have the proper dependency on OF
>>>> (or alternatively PHY_XGENE has an incorrect dependemcy on OF).
>>>>
>>>> According to google it looks like Fengguang reported this on
>>>> kbuild-all, but nowhere else.
>>>>
>>>> The actual build then succeeds. But the Kconfig warning is real and
>>>> implies that something is seriously wrong wrt the dependencies for
>>>> this thing.
>>>>
>>>> It looks like the "select PHY_XGENE" came in through the libata
>>>> update, but this USB update actually brought in the "config PHY_XGENE"
>>>> and thus this error. Which makes me wonder how this all worked. Why
>>>> does that "select PHY_XGENE" exist when apparently it's not needed?
>>>>
>>>> Regardless, there's something broken somewhere.
>>>
>>> Odd, I don't know what to do to fix this up "properly".
>>>
>>> Loc Ho, this came in from your patch, any ideas?
>
> Shouldn't we let the users to enable PHY_XGENE (maybe add in the platform
> defconfig)?
>

This is another option but PHY_XGENE is required by AHCI_XGENE . If
one selects AHCI_XGENE, it should select its dependency.

-Loc

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE
  2014-04-02 15:49         ` Loc Ho
@ 2014-04-02 15:53           ` Tejun Heo
  2014-04-02 15:58             ` Tejun Heo
                               ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Tejun Heo @ 2014-04-02 15:53 UTC (permalink / raw)
  To: Loc Ho
  Cc: Kishon Vijay Abraham I, Greg KH, Linus Torvalds, Andrew Morton,
	Linux Kernel Mailing List, USB list

Applied the following patch to libata/for-3.15-fixes.

Thanks.
------- 8< -------
>From 9c23f2cf7f6e107e85eef57fdf3049a93b6e157c Mon Sep 17 00:00:00 2001
From: Tejun Heo <tj@kernel.org>
Date: Wed, 2 Apr 2014 11:47:04 -0400

AHCI_XGENE is only applicable on ARM64 but it can also be enabled for
compile testing; however, AHCI_XGENE selects PHY_XGENE which has other
arch specific dependencies.  This leads to the following warning when
enabling it on other archs for compile testing.

  warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
  dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))

Let's drop COMPILE_TEST from AHCI_XGENE.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Loc Ho <lho@apm.com>
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
---
 drivers/ata/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 20e03a7..0a4fa5e 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -134,7 +134,7 @@ config AHCI_SUNXI
 
 config AHCI_XGENE
 	tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
-	depends on ARM64 || COMPILE_TEST
+	depends on ARM64
 	select PHY_XGENE
 	help
 	 This option enables support for APM X-Gene SoC SATA host controller.
-- 
1.9.0


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE
  2014-04-02 15:53           ` [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE Tejun Heo
@ 2014-04-02 15:58             ` Tejun Heo
  2014-04-02 16:22             ` Tejun Heo
  2014-04-02 16:41             ` [PATCH libata/for-3.15-fixes] libata: make AHCI_XGENE depend on PHY_XGENE Tejun Heo
  2 siblings, 0 replies; 14+ messages in thread
From: Tejun Heo @ 2014-04-02 15:58 UTC (permalink / raw)
  To: Loc Ho
  Cc: Kishon Vijay Abraham I, Greg KH, Linus Torvalds, Andrew Morton,
	Linux Kernel Mailing List, USB list

On Wed, Apr 02, 2014 at 11:53:57AM -0400, Tejun Heo wrote:
>  config AHCI_XGENE
>  	tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
> -	depends on ARM64 || COMPILE_TEST
> +	depends on ARM64
>  	select PHY_XGENE

So, an alternative would be doing

	select PHY_XGENE if ARM64

butI don't think it'd be worthwhile to go above and beyond for
COMPILE_TEST and it might cause other linkage issues down the road.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE
  2014-04-02 15:53           ` [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE Tejun Heo
  2014-04-02 15:58             ` Tejun Heo
@ 2014-04-02 16:22             ` Tejun Heo
  2014-04-02 16:36               ` Tejun Heo
  2014-04-03 14:32               ` Bartlomiej Zolnierkiewicz
  2014-04-02 16:41             ` [PATCH libata/for-3.15-fixes] libata: make AHCI_XGENE depend on PHY_XGENE Tejun Heo
  2 siblings, 2 replies; 14+ messages in thread
From: Tejun Heo @ 2014-04-02 16:22 UTC (permalink / raw)
  To: Loc Ho
  Cc: Kishon Vijay Abraham I, Greg KH, Linus Torvalds, Andrew Morton,
	Linux Kernel Mailing List, USB list

On Wed, Apr 02, 2014 at 11:53:57AM -0400, Tejun Heo wrote:
> Applied the following patch to libata/for-3.15-fixes.
> 
> Thanks.
> ------- 8< -------
> From 9c23f2cf7f6e107e85eef57fdf3049a93b6e157c Mon Sep 17 00:00:00 2001
> From: Tejun Heo <tj@kernel.org>
> Date: Wed, 2 Apr 2014 11:47:04 -0400
> 
> AHCI_XGENE is only applicable on ARM64 but it can also be enabled for
> compile testing; however, AHCI_XGENE selects PHY_XGENE which has other
> arch specific dependencies.  This leads to the following warning when
> enabling it on other archs for compile testing.
> 
>   warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
>   dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))
> 
> Let's drop COMPILE_TEST from AHCI_XGENE.
> 
> Signed-off-by: Tejun Heo <tj@kernel.org>
> Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
> Cc: Loc Ho <lho@apm.com>
> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>

So, apparently, this isn't enough as this would allow enabling
PHY_XGENE regardless of HAS_IOMEM or OF.  From kconfig-language.txt,

   Note:
	select should be used with care. select will force
	a symbol to a value without visiting the dependencies.
	By abusing select you are able to select a symbol FOO even
	if FOO depends on BAR that is not set.
	In general use select only for non-visible symbols
	(no prompts anywhere) and for symbols with no dependencies.
	That will limit the usefulness but on the other hand avoid
	the illegal configurations all over.

We can add all the necessary dependencies to AHCI_XGENE but I think
the the right thing to do is turning it into a proper dependency.
Will prep another patch.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE
  2014-04-02 16:22             ` Tejun Heo
@ 2014-04-02 16:36               ` Tejun Heo
  2014-04-03 14:32               ` Bartlomiej Zolnierkiewicz
  1 sibling, 0 replies; 14+ messages in thread
From: Tejun Heo @ 2014-04-02 16:36 UTC (permalink / raw)
  To: Kishon Vijay Abraham I
  Cc: Loc Ho, Greg KH, Linus Torvalds, Andrew Morton,
	Linux Kernel Mailing List, USB list

Hello, Kishon.

I'm converting AHCI_XGENE to depend on PHY_XGENE instead of selecting
it as dependency chaining through select doesn't work.  Looking at the
PHY Kconfig options, I wonder whether we're going about this the right
way.  Are PHY drivers meaningful at all w/o higher level drivers
making use of them?  If not, why do we even have visible Kconfig opts
for them?  Shouldn't we just chain everything through selects and
float the actual dependencies to the higher level drivers which the
users actually care about?

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH libata/for-3.15-fixes] libata: make AHCI_XGENE depend on PHY_XGENE
  2014-04-02 15:53           ` [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE Tejun Heo
  2014-04-02 15:58             ` Tejun Heo
  2014-04-02 16:22             ` Tejun Heo
@ 2014-04-02 16:41             ` Tejun Heo
  2 siblings, 0 replies; 14+ messages in thread
From: Tejun Heo @ 2014-04-02 16:41 UTC (permalink / raw)
  To: Loc Ho
  Cc: Kishon Vijay Abraham I, Greg KH, Linus Torvalds, Andrew Morton,
	Linux Kernel Mailing List, USB list

AHCI_XGENE is only applicable on ARM64 but it can also be enabled for
compile testing; however, AHCI_XGENE selects PHY_XGENE which has other
arch specific dependencies.  This leads to the following warning when
enabling it on other archs for compile testing.

  warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
  dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))

Selecting a config option which itself has dependencies can easily
lead to broken configurations.  For now, let's just make AHCI_XGENE
depend on PHY_XGENE which has all the necessary dependencies already.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Loc Ho <lho@apm.com>
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: Kishon Vijay Abraham I <kishon@ti.com>
---
 drivers/ata/Kconfig |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 20e03a7..2e4da3b 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -134,8 +134,7 @@ config AHCI_SUNXI
 
 config AHCI_XGENE
 	tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
-	depends on ARM64 || COMPILE_TEST
-	select PHY_XGENE
+	depends on PHY_XGENE
 	help
 	 This option enables support for APM X-Gene SoC SATA host controller.
 

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE
  2014-04-02 16:22             ` Tejun Heo
  2014-04-02 16:36               ` Tejun Heo
@ 2014-04-03 14:32               ` Bartlomiej Zolnierkiewicz
  2014-04-03 14:49                 ` Tejun Heo
  1 sibling, 1 reply; 14+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2014-04-03 14:32 UTC (permalink / raw)
  To: Tejun Heo
  Cc: Loc Ho, Kishon Vijay Abraham I, Greg KH, Linus Torvalds,
	Andrew Morton, Linux Kernel Mailing List, USB list


Hi,

On Wednesday, April 02, 2014 12:22:15 PM Tejun Heo wrote:
> On Wed, Apr 02, 2014 at 11:53:57AM -0400, Tejun Heo wrote:
> > Applied the following patch to libata/for-3.15-fixes.
> > 
> > Thanks.
> > ------- 8< -------
> > From 9c23f2cf7f6e107e85eef57fdf3049a93b6e157c Mon Sep 17 00:00:00 2001
> > From: Tejun Heo <tj@kernel.org>
> > Date: Wed, 2 Apr 2014 11:47:04 -0400
> > 
> > AHCI_XGENE is only applicable on ARM64 but it can also be enabled for
> > compile testing; however, AHCI_XGENE selects PHY_XGENE which has other
> > arch specific dependencies.  This leads to the following warning when
> > enabling it on other archs for compile testing.
> > 
> >   warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
> >   dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))
> > 
> > Let's drop COMPILE_TEST from AHCI_XGENE.
> > 
> > Signed-off-by: Tejun Heo <tj@kernel.org>
> > Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
> > Cc: Loc Ho <lho@apm.com>
> > Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
> 
> So, apparently, this isn't enough as this would allow enabling
> PHY_XGENE regardless of HAS_IOMEM or OF.  From kconfig-language.txt,

PHY_XGENE has the following dependencies:

	depends on HAS_IOMEM && OF && (ARM64 || COMPILE_TEST)

So it should be OK.

>    Note:
> 	select should be used with care. select will force
> 	a symbol to a value without visiting the dependencies.
> 	By abusing select you are able to select a symbol FOO even
> 	if FOO depends on BAR that is not set.
> 	In general use select only for non-visible symbols
> 	(no prompts anywhere) and for symbols with no dependencies.
> 	That will limit the usefulness but on the other hand avoid
> 	the illegal configurations all over.
> 
> We can add all the necessary dependencies to AHCI_XGENE but I think
> the the right thing to do is turning it into a proper dependency.

Please note that ARM64 implies that HAS_IOMEM and OF are _always_
selected.  This is the reason why removing "|| COMPILE_TEST" from
AHCI_XGENE dependencies is sufficient to fix the issue (though
I have to admit that relying indirectly on ARM64 selects is a bit
hacky).

> Will prep another patch.

Hmmm, the alternative idea is to remove PHY_XGENE reference from
AHCI_XGENE altogether and add:

	default y if AHCI_XGENE

to PHY_XGENE instead (which seems to be not as hacky as solution
with "select PHY_XGENE" and also more user-friendly than "depends
on PHY_XGENE" one).

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE
  2014-04-03 14:32               ` Bartlomiej Zolnierkiewicz
@ 2014-04-03 14:49                 ` Tejun Heo
  0 siblings, 0 replies; 14+ messages in thread
From: Tejun Heo @ 2014-04-03 14:49 UTC (permalink / raw)
  To: Bartlomiej Zolnierkiewicz
  Cc: Loc Ho, Kishon Vijay Abraham I, Greg KH, Linus Torvalds,
	Andrew Morton, Linux Kernel Mailing List, USB list

Hello,

On Thu, Apr 03, 2014 at 04:32:24PM +0200, Bartlomiej Zolnierkiewicz wrote:
> > So, apparently, this isn't enough as this would allow enabling
> > PHY_XGENE regardless of HAS_IOMEM or OF.  From kconfig-language.txt,
> 
> PHY_XGENE has the following dependencies:
> 
> 	depends on HAS_IOMEM && OF && (ARM64 || COMPILE_TEST)
> 
> So it should be OK.
...
> Please note that ARM64 implies that HAS_IOMEM and OF are _always_
> selected.  This is the reason why removing "|| COMPILE_TEST" from
> AHCI_XGENE dependencies is sufficient to fix the issue (though
> I have to admit that relying indirectly on ARM64 selects is a bit
> hacky).

This being okay is so not obvious.  Let's either float all
dependencies to the higher level drivers or just use "depends on".  I
really dislike mixing the two and playing games with the subtle
combinations.  For now, I'm making it all "depends on".  Please feel
free to improve on it as necessary.

> Hmmm, the alternative idea is to remove PHY_XGENE reference from
> AHCI_XGENE altogether and add:
> 
> 	default y if AHCI_XGENE
> 
> to PHY_XGENE instead (which seems to be not as hacky as solution
> with "select PHY_XGENE" and also more user-friendly than "depends
> on PHY_XGENE" one).

The config dependencies should be indicative the actual dependency.
AHCI_XGENE is useless without PHY_XGENE; then, the config dependency
*must* represent that.  That's the priority.

It is true that users probably won't care about PHY_XGENE or any PHY
drivers probably, but, again, let's please not mix depends and selects
in contrived manner to hit the just right mixture of the two.  Let's
please do it systematically.  Float all actual deps to the surface to
the options that the users configuring care about and propagate down
to phy drivers using select.  Our config system *really* doesn't work
with mixed depends and selects.  I mean, think about the suggested
solution.  It works only because there's no actual linkage dependency
between the two, ARM64 implies HAS_IOMEM && OF, AND we omitted
COMPILE_TEST for a completely obscure reason.  I don't think that's
acceptable.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2014-04-03 14:49 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-01 18:49 [GIT PULL] USB patches for 3.15-rc1 Greg KH
2014-04-02  0:28 ` Linus Torvalds
2014-04-02  2:28   ` Greg KH
2014-04-02  5:42     ` Loc Ho
2014-04-02 13:06       ` Kishon Vijay Abraham I
2014-04-02 14:45         ` Bartlomiej Zolnierkiewicz
2014-04-02 15:49         ` Loc Ho
2014-04-02 15:53           ` [PATCH libata/for-3.15-fixes] libata: drop COMPILE_TEST from AHCI_XGENE Tejun Heo
2014-04-02 15:58             ` Tejun Heo
2014-04-02 16:22             ` Tejun Heo
2014-04-02 16:36               ` Tejun Heo
2014-04-03 14:32               ` Bartlomiej Zolnierkiewicz
2014-04-03 14:49                 ` Tejun Heo
2014-04-02 16:41             ` [PATCH libata/for-3.15-fixes] libata: make AHCI_XGENE depend on PHY_XGENE Tejun Heo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox