Commit graph

448532 commits

Author SHA1 Message Date
Sebastian Ott
93065d045a s390/pci: use pdev->dev.groups for attribute creation
Let the driver core handle attribute creation by putting all s390
specific pci attributes in an attribute group which is referenced
by pdev->dev.groups in pcibios_add_device.

Link: https://lkml.kernel.org/r/alpine.LFD.2.11.1404141101500.1529@denkbrett
Reviewed-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:49 +02:00
Sebastian Ott
b346953dda s390/pci: use macro for attribute creation
Introduce the zpci_attr macro to create read only sysfs attributes
to avoid duplicate code.

Reviewed-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:48 +02:00
Sebastian Ott
ca25f564c4 s390/pci: improve state check when processing hotplug events
Processing pci hotplug events can fail when a pci function is in an
unexpected state. This can happen when we already processed the
change associated with the hotplug event (especially when receiving
hotplug events during early boot).
Just ignore the event in this case.

Reviewed-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:48 +02:00
Martin Schwidefsky
d3a73acbc2 s390: split TIF bits into CIF, PIF and TIF bits
The oi and ni instructions used in entry[64].S to set and clear bits
in the thread-flags are not guaranteed to be atomic in regard to other
CPUs. Split the TIF bits into CPU, pt_regs and thread-info specific
bits. Updates on the TIF bits are done with atomic instructions,
updates on CPU and pt_regs bits are done with non-atomic instructions.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:47 +02:00
Martin Schwidefsky
beef560b4c s390/uaccess: simplify control register updates
Always switch to the kernel ASCE in switch_mm. Load the secondary
space ASCE in finish_arch_post_lock_switch after checking that
any pending page table operations have completed. The primary
ASCE is loaded in entry[64].S. With this the update_primary_asce
call can be removed from the switch_to macro and from the start
of switch_mm function. Remove the load_primary argument from
update_user_asce/clear_user_asce, rename update_user_asce to
set_user_asce and rename update_primary_asce to load_kernel_asce.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:46 +02:00
Michael Holzheu
f4192bf2dc s390/smp: Avoid busy loop after halt and "begin" on z/VM
Currently the smp_stop_cpu() function for SMP kernels enters a busy
loop when "begin" is entered on the z/VM console after Linux is halted.
To avoid this behavior, use the non-SMP variant of smp_stop_cpu()
which stops the CPU again after "begin" is entered. As a side
effect we now have consistent behavior for SMP and non-SMP Linux.

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:45 +02:00
Randy Dunlap
0d234a2896 s390: fix new ccwgroup.h kernel-doc warning
Fix new s390 kernel-doc warning:

Warning(arch/s390/include/asm/ccwgroup.h:27): No description found for parameter 'ungroup_work'

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Cc:	Sebastian Ott <sebott@linux.vnet.ibm.com>
Cc:	Peter Oberparleiter <oberpar@linux.vnet.ibm.com>
Cc:	linux-s390@vger.kernel.org
Cc:	Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc:	Heiko Carstens <heiko.carstens@de.ibm.com>
Cc:	linux390@de.ibm.com
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:45 +02:00
Michael Holzheu
7d4c738ce5 s390/zfcpdump: Update documentation in zfcpdump.txt
Do the following changes:

 - Document new /proc/vmcore interface
 - Document partition dump external initramfs with s390-tools-1.24.0
 - Remove initramfs config file because initramfs is now built automatically
   in s390-tools
 - Replace description of kernel config options with "make zfcpdump_defconfig"
 - Some editorial changes

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:44 +02:00
Michael Holzheu
bf28a5970d s390/dump: Remove CONFIG_ZFCPDUMP
Currently there are two s390 kernel dump config options "CONFIG_ZFCPDUMP"
and "CONFIG_CRASH_DUMP". In order to keep things simple and because the
"CONFIG_ZFCPDUMP" option already has a dependency to "CONFIG_CRASH_DUMP"
remove the CONFIG_ZFCPDUMP option.

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Reviewed-by: Eric Farman <farman@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:43 +02:00
Heiko Carstens
71c40f7f8f s390/cmma: remove "cmma disable" code in case of dump again
This is not necessary anymore, since the offending code is gone with
the conversion to the memblock code.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>-
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:42 +02:00
Philipp Hachtmann
6c8cd5bbda s390/spinlock: optimize spinlock code sequence
Use lowcore constant to improve the code generated for spinlocks.

[ Martin Schwidefsky: patch breakdown and code beautification ]

Signed-off-by: Philipp Hachtmann <phacht@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:42 +02:00
Philipp Hachtmann
5b3f683e69 s390/spinlock: cleanup spinlock code
Improve the spinlock code in several aspects:
 - Have _raw_compare_and_swap return true if the operation has been
   successful instead of returning the old value.
 - Remove the "volatile" from arch_spinlock_t and arch_rwlock_t
 - Rename 'owner_cpu' to 'lock'
 - Add helper functions arch_spin_trylock_once / arch_spin_tryrelease_once

[ Martin Schwidefsky: patch breakdown and code beautification ]

Signed-off-by: Philipp Hachtmann <phacht@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:41 +02:00
Philipp Hachtmann
50be634507 s390/mm: Convert bootmem to memblock
The original bootmem allocator is getting replaced by memblock. To
cover the needs of the s390 kdump implementation the physical memory
list is used.
With this patch the bootmem allocator and its bitmaps are completely
removed from s390.

Signed-off-by: Philipp Hachtmann <phacht@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:40 +02:00
Philipp Hachtmann
70210ed950 mm/memblock: add physical memory list
Add the physmem list to the memblock structure. This list only exists
if HAVE_MEMBLOCK_PHYS_MAP is selected and contains the unmodified
list of physically available memory. It differs from the memblock
memory list as it always contains all memory ranges even if the
memory has been restricted, e.g. by use of the mem= kernel parameter.

Signed-off-by: Philipp Hachtmann <phacht@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:39 +02:00
Philipp Hachtmann
f1af9d3af3 mm/memblock: Do some refactoring, enhance API
Refactor the memblock code and extend the memblock API to make it
more flexible. With the extended API it is simple to define and
work with additional memory lists.

The static functions memblock_add_region and __memblock_remove are
renamed to memblock_add_range and meblock_remove_range and added to
the memblock API.

The __next_free_mem_range and __next_free_mem_range_rev functions
are replaced with calls to the more generic list walkers
__next_mem_range and __next_mem_range_rev.

To walk an arbitrary memory list two new macros for_each_mem_range
and for_each_mem_range_rev are added. These new macros are used
to define for_each_free_mem_range and for_each_free_mem_range_reverse.

Signed-off-by: Philipp Hachtmann <phacht@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-05-20 08:58:39 +02:00
Ingo Molnar
6480c56130 perf/core improvements and fixes:
. Add libdw DWARF post unwind support for ARM (Jean Pihet)
 
 . Consolidate types.h for ARM and ARM64 (Jean Pihet)
 
 . Fix possible null pointer dereference in session.c (Masanari Iida)
 
 . Cleanup, remove unused variables in map_switch_event() (Dongsheng Yang)
 
 . Remove nr_state_machine_bugs in perf latency (Dongsheng Yang)
 
 . Remove usage of trace_sched_wakeup(.success) (Peter Zijlstra)
 
 Signed-off-by: Jiri Olsa <jolsa@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTefKDAAoJEPZqUSBWB3s9KhsP/A+vkQ2ClJsCTK9ADSRA1NSx
 wnsXjE4UzgjQeaqSz+6tm/2BbckHhkzt2hcrQ690Gm0cqvY+WJ8FNxxiEmFXDgFG
 TCISeYjqpao7V1XgQX+deyIJSYD3TP/EzTUbpoJWZXIImKGs4mCP/D5C+5SNnXm2
 NREvZeHErqcrRiha6Qa9AwdoVG/uQAQKaZeEQKIMIhH7aiqgRTbGrNbobcZ5R9bT
 dZCE1Zq3ns5/Vco7HAsu0Ij6SvmETNb2OPdGrBb7zr2tNRXFKVyZAGfG+rN8G915
 Dt5fioE3s0kQMYpq8PHDcbkBH1HNbfz+QujJp7OKThC0zl6lH8Tyx8Oj2L8C7UyI
 J1vL87HLjxRvTb1EgTw7vR+n2te4vNgTd1TdXjAQyxhTU0V2AnhI+8ZQQUoKPvOX
 exQlt9ftL8IEC4EyKCyx6B5dRNIK7RVLFPKevf7a39QVEtqTbutMqu9u0I/+1PxZ
 s/v3sgLKKzVLjo3Bfsne0ZMJ+a9eJ8vz2vi63UCw44QaFXCl1VmMvoZaJxOMGnvN
 Mjlg5Vlgl0tSGToJkq0nF7mlb9iKrAYsUUWO9ND7Ya4B8C79u482oJDXI0YqH76g
 rCQlPwLbAcJF17+9z9kol2RvJolFgQnnZ52ypSYErJoKSMTdVhZ0HaaAsO4R6uKz
 RoHcyunF7ZNAmeOnzOg5
 =l453
 -----END PGP SIGNATURE-----

Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf into perf/core

Pull perf/core improvements and fixes from Jiri Olsa:

  * Add libdw DWARF post unwind support for ARM (Jean Pihet)

  * Consolidate types.h for ARM and ARM64 (Jean Pihet)

  * Fix possible null pointer dereference in session.c (Masanari Iida)

  * Cleanup, remove unused variables in map_switch_event() (Dongsheng Yang)

  * Remove nr_state_machine_bugs in perf latency (Dongsheng Yang)

  * Remove usage of trace_sched_wakeup(.success) (Peter Zijlstra)

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2014-05-20 08:36:09 +02:00
Tomi Valkeinen
fbf7309823 OMAPDSS: panel-lgphilips-lb035q02: use gpiod for enable gpio
The new gpiod API supports automatic handling of active-high/active-low
with DT. To make it possible to use that when booting with DT, change
the driver's handling of the enable GPIO to use gpiod.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2014-05-20 09:35:40 +03:00
Olof Johansson
96c2ac4cc5 Merge tag 'sti-soc-for-v3.16' of git://git.stlinux.com/devel/kernel/linux-sti into next/soc
Merge "ARM: STi: SoC changes for v3.16" from Maxime Coquelin:

SoC changes for STi platforms
 - Add support for STiH407

* tag 'sti-soc-for-v3.16' of git://git.stlinux.com/devel/kernel/linux-sti:
  ARM: STi: Add STiH407 SoC support

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 23:30:26 -07:00
Olof Johansson
bf4348e622 Renesas ARM Based SoC soc-cleanup Updates for v3.16
r8a7791 (R-Car H2) SoC and its Koelsch board and,
 r8a7740 (R-Mobile A1) SoC and its Armadillo800eva board
 * Set CPU clock frequency from OF nodes
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJTdV6AAAoJENfPZGlqN0++Q70QAI4sQTJdB6WRbmQ5DtAVQZ4n
 lJcFNoL4HkH52b9vC5GrHAZmtvJl4s5n53qAi88gsdkznfHmsDcFdbG7GdOo4ij0
 JHE6aPHEhpOMjLJaYwN6Sr+X3sIQFktjRKzREFuUVYrVnFiVWSLksnmBF9EmiRma
 IdWXSZhHAENnPHMC3IuYbfIRtRKXyNLvpW3SloMdtE4C1gc0PWA3yG2a28gFQfI1
 aQZ3z4m5eocxABpUClP1PVMVFWSr8dqfK9PIriGGPJBuLGsKCmqWiWLX3rXNxK/S
 VaU3UYOscXVV33SAI3VRGtUi7Eh3PfPXmlKSsQDBjZKfnhwlwIztekzuZcq+vaK+
 FLYFRh8DlpxqIA2fl2B8D6C5kpsgTbWKGUhEKi9UgXFqM1ZEm3SxyYFaN8NckyQP
 t7ZH3ZKNfjJrPk6bN5JUC7eepRiNtc7YOz5d1I4HBQkrFpIFlc+JHTODX0R6Ao4+
 9mSraY+5Boyrw9aOTDH2wY08M01eYipN99zeScPZ/rNXEx+McwWHXBOhemrkKhbr
 6cWHFeJoR7V1UuibV9ifLlvsBl+j/IGv0B8ZjgwaYN+KLxI/OWAigUfNvkvP3zp8
 xMLgyvqTHh8gFU24xdPbhZ1DJNM5rQSOKd4AIGqiPS4ZGHZ4Ash7BtS42cA43RiG
 TWoNYzKKNvcGDP67HmyI
 =pLjF
 -----END PGP SIGNATURE-----

Merge tag 'renesas-soc-cleanup-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc

Merge "Renesas ARM Based SoC soc-cleanup Updates for v3.16" from Simon Horman:

r8a7791 (R-Car H2) SoC and its Koelsch board and,
r8a7740 (R-Mobile A1) SoC and its Armadillo800eva board
* Set CPU clock frequency from OF nodes

* tag 'renesas-soc-cleanup-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: Set clock frequency in HZ from OF nodes
  ARM: shmobile: Use shmobile_init_late() on r8a7740
  ARM: shmobile: Remove unused r8a7791_init_early()
  ARM: shmobile: Use r8a7791 DT CPU Frequency for Koelsch
  ARM: shmobile: Use r8a7791 DT CPU Frequency in common case
  ARM: shmobile: Remove unused r8a7740_init_delay()
  ARM: shmobile: Use r8a7740 DT CPU Frequency for Armadillo DT Ref
  ARM: shmobile: Use r8a7740 DT CPU Frequency in common case
  ARM: shmobile: Add r8a7740 Maximum CPU Frequency to DTS

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 23:29:46 -07:00
Olof Johansson
fd46edb9f6 Second Round of Renesas ARM Based SoC Clock Updates for v3.16
r8a7791 (R-Car M2) SoC
 * Correct SYS-DMAC clock defines
 
 r8a7740 (R-Mobile A1) SoC
 * Correct name of DT Ethernet clock
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJTcc5oAAoJENfPZGlqN0++vKEP/3zy1DnzzaXb/xr65I6hSOvG
 AUjZah73KDcaBQ1pjXzOhhCXDbfX+ba17vJMBSOHuWghXTZser212XRgPGasMuxy
 XUZJvscCk67nvW2rY3u3KqHRmLsu5Bj8LJ+iENa0BNbLrvHmPMfwMrqjodZBLSLq
 KgPT7HkQRLxzo6vxLUw8Ipd1VEcQApQKlNqkpYz4HVUmzvHegErMFsfuO7aMnK69
 IZtD45cBZN7sSKi/Hl/qzRwCXESSWh3TMtB7hRToZKGb0e1m8wLfHKiGIS3FvkhH
 1cgO/KunDYYm2cdDKwbvyTCapv0olXK2tn63rzo/jEqSyfXHXgP/849oW2395qyV
 PMhudgOa8shsJWhjEb6yQReacUJVNUDMV/n3cblmd9WLfs5LtGP30SOxoc0aLTKG
 cOPhiqnjTxTaD+ITrFjSzNaJhMQN7ynoJF+lMsbkIt5gkMeEFRIpobrW0q5ZqwRw
 FBvCXCj0ffgxjuQ+9VmtCi80yu3esiV1aSK6FNqkI8T4fqa6oUltdY+yUoIkYYP8
 lz/XlpBVnvcJ0hq1zeDeyEEv3HsElFjEn79ZbNmrIMNn5psYJMDQYT27I/qr4093
 QL0unUxVo2GK1B6uM8Yz95whn3/HkUyaBNvfVTwrc9e0Z/uSJ1xZ/SOXOyLs/lKi
 vuTBJOyfBnpY2j2eP2EE
 =YJay
 -----END PGP SIGNATURE-----

Merge tag 'renesas-clock2-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc

Merge "Second Round of Renesas ARM Based SoC Clock Updates for v3.16" from
Simon Horman:

r8a7791 (R-Car M2) SoC
* Correct SYS-DMAC clock defines

r8a7740 (R-Mobile A1) SoC
* Correct name of DT Ethernet clock

* tag 'renesas-clock2-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7791: Correct SYS-DMAC clock defines
  ARM: shmobile: r8a7740: Correct name of DT Ethernet clock

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 23:29:24 -07:00
Olof Johansson
5fe0163aea Merge branch 'cleanup/kconfig' into next/soc
Bring in the cleanup branch due to conflicts in new additions. Should really
have been the base before the other branch, but this way works too.

* cleanup/kconfig:
  ARM: qcom: clean-up unneeded kconfig selects
  ARM: bcm: clean-up unneeded kconfig selects
  ARM: mvebu: clean-up unneeded kconfig selects

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 23:29:01 -07:00
Ben Skeggs
0f1d360b2e drm/gf119-/disp: fix nasty bug which can clobber SOR0's clock setup
Fixes a LVDS bleed issue on Lenovo W530 that can occur under a
number of circumstances.

Cc: <stable@vger.kernel.org > # v3.9+
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-05-20 16:28:57 +10:00
Martin Peres
6679b2ccc9 drm/nvd9/therm: handle another kind of PWM fan
Signed-off-by: Martin Peres <martin.peres@free.fr>
Tested-by: SaveTheRobots <john.rowley08@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2014-05-20 16:28:53 +10:00
Olof Johansson
0673836c0b Third Round of Renesas ARM Based SoC DT Updates for v3.16
r8a7791 (R-Car M2), r8a7779 (R-Car H1), r8a7778 (R-Car M1),
 r8a7740 (R-Mobile A1) and r8a73a4 (R-Mobile APE6) SoCs
 * Move interrupt-parent property to root node
 
 r8a7791 (R-Car M2) and r8a7790 (R-Car H2) SoCs
 * Add GPIO clocks
 
 r8a7791 (R-Car M2) based Henninger board
 * Add MSIOF0, QSPI and SDHI0/2 support
 * Specify EXTAL frequency
 
 r8a7779 (R-Car H1) based Marzen board
 * Set SMSC lan to use irq-push-pull
 
 r8a7740 (R-Mobile A1) SoC
 * Remove duplicate interrupt-parent property
 
 r8a7740 (R-Mobile A1) based Armadillo800 EVA board
 * Add Ethernet support
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJTdVy4AAoJENfPZGlqN0++OhQP/jjNY1Foc/0zRDNLK/QaevNs
 mJwdTUI2TIbRVH8op6fHK8NN8M+L3lRMB5Ak9zDevt3mdnq9A6YwBXgMSuQzl61B
 1Irx6IsU4GYIhsVgbgjYvxak51JboJJQhB8dpnCcg4DJSEMGjd+2hypzoXTCRAA+
 NpLz0ECh82N34QYIrafvqFWeVTk2XnFG7s638HbFsxoHYvZ9C+Wk8K6IN3Yoj/Ws
 cXgwq/CL1+TGsWb9n3gQ45GjzkStnL30V9S8XmQrx++lfvZOe09vezXK/uNlTRoA
 iIX/S4AMaY+fRGzsROtjTAos4Gx+DKBFUSbDiyNDUzxSUV2V7DYRwLIE2ycNL9eK
 nMTnXAaEg4XKPPdvEEuxzjI+ThEoQbIA5FsIJXu41QICo0V11lJVkuCQlbJusL34
 eYDh7dS/qWe/mvOLvWzKyZ9a4RKbSvpyzsQgBmTYqhtrelmn9L1SgYPTXyY7LQZx
 DxukJacF1B3/as1P2h/d1NyrVOIQekDkfZo5Djxyh2eg1aEiwIlnkVhgy+X4fKV6
 8RcCUQc1YtGF+gVpfDUp1rc1vacnBUKhdk1H4QaT6EcpQvJSDRiWlh7yP1uxCoo0
 1egcG3VjZMJ/fUdcpfIQFDj8VHbGT8ElW1vmE4milfYO1ibtiM1f2Rp+DuiRQWf6
 qK0ZyswfKc058QRZUTSB
 =NHN4
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dt3-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt

Merge "Third Round of Renesas ARM Based SoC DT Updates for v3.16" from Simon
Horman:

r8a7791 (R-Car M2), r8a7779 (R-Car H1), r8a7778 (R-Car M1),
r8a7740 (R-Mobile A1) and r8a73a4 (R-Mobile APE6) SoCs
* Move interrupt-parent property to root node

r8a7791 (R-Car M2) and r8a7790 (R-Car H2) SoCs
* Add GPIO clocks

r8a7791 (R-Car M2) based Henninger board
* Add MSIOF0, QSPI and SDHI0/2 support
* Specify EXTAL frequency

r8a7779 (R-Car H1) based Marzen board
* Set SMSC lan to use irq-push-pull

r8a7740 (R-Mobile A1) SoC
* Remove duplicate interrupt-parent property

r8a7740 (R-Mobile A1) based Armadillo800 EVA board
* Add Ethernet support

* tag 'renesas-dt3-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7740 dtsi: Remove duplicate interrupt-parent property
  ARM: shmobile: marzen-reference: Set SMSC lan to use irq-push-pull
  ARM: shmobile: r8a7791 dtsi: Add GPIO clocks
  ARM: shmobile: r8a7790 dtsi: Add GPIO clocks
  ARM: shmobile: dts: Move interrupt-parent property to root node
  ARM: shmobile: armadillo-reference dts: Add Ethernet support
  ARM: shmobile: r8a7740 dtsi: Add Ethernet support
  ARM: shmobile: henninger: add MSIOF0 DT support
  ARM: shmobile: henninger: add QSPI DT support
  ARM: shmobile: henninger: add SDHI0/2 DT support
  ARM: shmobile: henninger: specify EXTAL frequency

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 23:00:25 -07:00
Stefan Agner
4a70e96889 ARM: add drivers for Colibri T30 to multi_v7_defconfig
Toradex Colibri Evaluation Board uses the DS1307 RTC and the
MCP251x CAN controller. The NVIDIA Tegra 3 based Colibri T30
module can be used on this carrier board, hence enable those
drivers in tegra_defonfig and multi_v7_defconfig.

Furthermore the NVIDIA Tegra 3 based Apalis T30 module too
contains two MCP251x CAN controller.

Signed-off-by: Stefan Agner <stefan@agner.ch>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 22:51:01 -07:00
Olof Johansson
5669aab8d7 3.16: second DT series:
- at91sam9rl and at91sam9261 fixes about PLL ranges
 - at91sam9261 more comprehensive support for SSC
 - sama5d3 Xplained: addition of pull-ups, PWM and PMIC (regulator)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJTczG7AAoJEAf03oE53VmQ4yQIALYl7+JTGrdCG9W77IroOpN4
 bplNRAXdOjK9abHObcif4/cN3KbYnAn5AU0xnJKm65vWfvuf/XvchFENHMwuSTlB
 1lX5Dqt3lvJ+d/awAngckJjNgIWqzr/ajbOrDyLTwRCIHCFVOp/36trkzdbDjmj+
 3FLImm9NwHFu6+HCocyTfUiNN5TdVhAyvM49PwdzAidKDYF7bgLlMpThVvD8kncO
 7sHnbt2vF/GkKiCePKWNV/vusBzRFKQuh+1A3vdl5FOMvxT5PFhLjQh+yaAnH0oa
 B/zAANWUClyiotaIkmLl9PUiWn7lpgjtqkhPm2gMi1Ouv4o89CJ7ubTYRG9K1EI=
 =/fbC
 -----END PGP SIGNATURE-----

Merge tag 'at91-dt2' of git://github.com/at91linux/linux-at91 into next/dt

Merge "at91: DT for 3.16 #2" from Nicolas Ferre:

3.16: second DT series:
- at91sam9rl and at91sam9261 fixes about PLL ranges
- at91sam9261 more comprehensive support for SSC
- sama5d3 Xplained: addition of pull-ups, PWM and PMIC (regulator)

* tag 'at91-dt2' of git://github.com/at91linux/linux-at91:
  ARM: at91/dt: at91-sama5d3_xplained: add the regulator device node
  ARM: at91: add 2 PWM outputs to SAMA5D3 Xplained
  ARM: at91: add PWM pinctrl to SAMA5D3
  ARM: at91: add pull-up to i2c[02] on SAMA5D3 Xplained
  ARM: at91/dt: sam9rl: Fix PLL output range and mck divisors
  ARM: at91/dt: sam9261: Add ssc2, SSC clocks and pcks
  ARM: at91/dt: sam9261: Fix PLL output ranges and other clocks divisors

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 22:46:00 -07:00
Olof Johansson
b4c6ed1386 Second Round of Renesas ARM Based SoC Boards Updates for v3.16
r8a7740 (R-Mobile A1) based Armadillo800 EVA board
 * Minor cleanup of the Armadillo legacy board code
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJTcxp4AAoJENfPZGlqN0++2H0QAJKflhmqKrhRArHETnUOFEVL
 rGNJO+es0eXcNt5YNRi1rTt41TtwntJvpfPZgd+5vKCG9ozBw8stc60FmrvrzHzh
 B+LXPv2MBy/wD7A5rE+xas8gafgpH6C5sjWlIB50rTLoZ+oHZCmhoUMYspWHWHLN
 eBV4KgHRXgKYfngm8OChYpxGTOrU+4XUcHRp3EeduTBOP8hMV1eaNXORIvTUDS6C
 7gCQK7Fv9szahMeI2VuzP1kgFU23I4wxil0GUN1otIuWiRXnS+DVRp64mNh8bBbj
 +fuEy8cdmwptYChzR87y5+3etSpRow1qBw4/zuSvzG6sOgJpxne18/pvnNK/jkpM
 RTbuq92xdhlX85zH+Ii1fIc2Ke3Fw17WX9augFAhjD9BhobKzROJ6qP34HFf1AjN
 Jz9hkS+13KNb3FDtLt1/ZhbUmSJVWqqGK+CQUSLMmBbStAHdbzEf+SDGDN74fDw8
 VFWsGgANxLcJT7DVh8Eq2LpQppmt9rd/6HccMLNsSfeFd3nuyafbTLDCDoxYpN4K
 t6afqB8EWZj7w3F5tEqwhmOom70zPU5n/7t1TKcn+Sb1wetMBVeqkKvQ7stF0Kq7
 M1fCAWlrxbdbHGeznSbMzz3bdorqoStLe9SozcN1YyGOdBcZR7Tet/my2r9djQEA
 t3s1Z742PtNka+n5LRJ+
 =Ll63
 -----END PGP SIGNATURE-----

Merge tag 'renesas-boards2-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/boards

Merge "Second Round of Renesas ARM Based SoC Boards Updates for v3.16" from
Simon Horman:

r8a7740 (R-Mobile A1) based Armadillo800 EVA board
* Minor cleanup of the Armadillo legacy board code

* tag 'renesas-boards2-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: Minor cleanup of the Armadillo legacy board code

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 22:39:05 -07:00
Linus Torvalds
6ed8bf82fe Merge branch 'parisc-3.15-4' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux
Pull parisc fixes from Helge Deller:
 "There are two patches in here:

  The first patch greatly improves latency and corrects the memory
  ordering in our light-weight atomic locking syscall.

  The second patch ratelimits printing of userspace segfaults in the
  same way as it's done on other platforms.  This fixes a possible DOS
  on parisc since it prevents the syslog to grow too fast.  For example,
  when the debian acl2 package was built on our debian buildd servers,
  this package produced lots of gigabytes in syslog in very short time
  and thus filled our harddisks, which then turned the server nearly
  completely unaccessible and unresponsive"

* 'parisc-3.15-4' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
  parisc: Improve LWS-CAS performance
  parisc: ratelimit userspace segfault printing
2014-05-20 14:35:28 +09:00
Linus Torvalds
8d900e7f31 - arm64 migrate_irqs() fix following commit ffde1de640 (irqchip: Gic:
Support forced affinity setting)
 - fix arm64 pud_huge() to return 0 when only 2 levels page tables are
   used (__PAGETABLE_PMD_FOLDED defined and pmd_huge already covers block
   entries at the first level), otherwise KVM gets confused
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.9 (GNU/Linux)
 
 iQIcBAABAgAGBQJTdkdgAAoJEGvWsS0AyF7x1iYQALKLvpQm8wWndDyDx3AoFagp
 tXdoNCUJhOeoc2VlipwbrHQ0M7ZfHzVS21TceDbC6COmjkItmthPnt0ImpA29831
 wtm34+lNH/Bim1GLEhwR2EcEVLpBH8/gDdwy5lE7olupO63ViYUUTZtaacrg5SgD
 zlVdo+kp+MzmDoz3FkUrlPkFstbm7GcWe2BYEpOu828Qd4uKHtjd13Ud9MgdJRJi
 9TeBh68MjALK3KWhd0HOt0ESJjb5pY6whMv/8stg/cD/o6zrqUapxNNk9tqE0PIy
 crOzOatmuvm8PJrkgJPV8Xnk9tToz+/j/djiFD4imaHAodQKk6eSPD0wwx+NTlPs
 q7fPAlhYNgpvExXrbF0mqtb8q3er6MRnFp6OHWgwU6a+O8tt4Rkms/s9XuuAM/us
 iX3t/oEjHXGe7uhIEQdrnWdVVHAJpz6HCbDQ9GgsZPZAS6D4NSIqSf35f4KjoYsH
 FFoNrEqtoJz06wxaI9M9lAzUuQQO3vYUDdi3Xk+SHBjumztRcEh432niOoITZEL8
 ickfQa2BHqqQwq9nK1i9SEbH7n1tTKaJAOAtK8c8Rnjzh0ckkODvZbhUsyUuF66Y
 +jWgXh2NVTUN/tXMn8tQFYbxNRQR+z6J+kxOyG62knaAjjeUokdVAhRhn+lvcE/F
 wFIU9cQOkLCWIAzsW/WS
 =Ql27
 -----END PGP SIGNATURE-----

Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

Pull two arm64 fixes from Catalin Marinas:
 - arm64 migrate_irqs() fix following commit ffde1de640 (irqchip: Gic:
   Support forced affinity setting)
 - fix arm64 pud_huge() to return 0 when only 2 levels page tables are
   used (__PAGETABLE_PMD_FOLDED defined and pmd_huge already covers
   block entries at the first level), otherwise KVM gets confused

* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
  arm64: fix pud_huge() for 2-level pagetables
  arm64: use cpu_online_mask when using forced irq_set_affinity
2014-05-20 14:33:48 +09:00
Linus Torvalds
41abc90228 Metag architecture and related fixes for v3.15
Mostly fixes for metag and parisc relating to upgrowing stacks.
 
 * Fix missing compiler barriers in metag memory barriers.
 * Fix BUG_ON on metag when RLIMIT_STACK hard limit is increased beyond
   safe value.
 * Make maximum stack size configurable. This reduces the default user
   stack size back to 80MB (especially on parisc after their removal of
   _STK_LIM_MAX override). This only affects metag and parisc.
 * Remove metag _STK_LIM_MAX override to match other arches and follow
   parisc, now that it is safe to do so (due to the BUG_ON fix mentioned
   above).
 * Finally now that both metag and parisc _STK_LIM_MAX overrides have
   been removed, it makes sense to remove _STK_LIM_MAX altogether.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTdAc3AAoJEGwLaZPeOHZ6L2QP/ihJag44CyWKKpeu/5FUkjP6
 62wX4cYKCFR9pTkOZDViWs7c+xrmW6OtORfQKuXu1g68L3v2cwb0HmcvybQ75pIQ
 CbaN+d5OnGPjHGYCSVqQBKlJ0qbcgQfoNUuCVOZx9kZgnCYQhJlh4HYRwHdUv9WY
 1FA3wor/JTTAiKvPBv+/t4NzTpTafpSIhYLahjxZbtuU1WjEfmj8QgWQpzTEJSeZ
 AyNE/nDlcYcdq4lDxMz2pcQfmJ2MpE56wvXJ7IdXadLaLp4yzc+WTAvFzNJ1XnAN
 2IcyNBpgF/vMXCbErA9QQegYwKd9jpF0w3oQmNLkgr27Kv27iL2sLIEWVn3FAXCu
 p+I0ypMlkD/gSdofCUaWTiGGOQiKMqAWJMfjky8RjA7Qz5TdLCldpjjuZEMKl8hM
 SLjkmgZHMG2/rJ8MosOL+ARAXl88v25gfM6rNIPTtMzH72qevrHgjFPj6pWHejhE
 0E43yDS+zt215HrFCXYBhVbFY1NM7JeBS8NFd9Y/8LKTWc8QSi2h8Q1ZaobKJi4O
 0zlKxRRR4QmmtF7S5wL/qOQ0U95HBvYSx+Ssp3C0eh/PEkZYWm0jiXtaKBCYtnDx
 33wRutv+R9sSkKaiiURBh9/VPWFLQ1ak5z+ejqrv32+oBzt/zmxb7LgwsxdAbAms
 9r/8XaY3V+JBPw7UxfQN
 =aveq
 -----END PGP SIGNATURE-----

Merge tag 'metag-for-v3.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag

Pull Metag architecture and related fixes from James Hogan:
 "Mostly fixes for metag and parisc relating to upgrowing stacks.

   - Fix missing compiler barriers in metag memory barriers.
   - Fix BUG_ON on metag when RLIMIT_STACK hard limit is increased
     beyond safe value.
   - Make maximum stack size configurable.  This reduces the default
     user stack size back to 80MB (especially on parisc after their
     removal of _STK_LIM_MAX override).  This only affects metag and
     parisc.
   - Remove metag _STK_LIM_MAX override to match other arches and follow
     parisc, now that it is safe to do so (due to the BUG_ON fix
     mentioned above).
   - Finally now that both metag and parisc _STK_LIM_MAX overrides have
     been removed, it makes sense to remove _STK_LIM_MAX altogether"

* tag 'metag-for-v3.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag:
  asm-generic: remove _STK_LIM_MAX
  metag: Remove _STK_LIM_MAX override
  parisc,metag: Do not hardcode maximum userspace stack size
  metag: Reduce maximum stack size to 256MB
  metag: fix memory barriers
2014-05-20 14:30:34 +09:00
Linus Torvalds
a7b0806392 Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
Pull drm/intel fixes from Dave Airlie:
 "Just some intel fixes.

  I have some radeon ones but I need to get some patches dropped from
  the pull req"

* 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
  drm/i915: Increase WM memory latency values on SNB
  drm/i915: restore backlight precision when converting from ACPI
  drm/i915: Use the first mode if there is no preferred mode in the EDID
  drm/i915/dp: force eDP lane count to max available lanes on BDW
  drm/i915/vlv: reset VLV media force wake request register
  drm/i915/SDVO: For sysfs link put directory and target in correct order
  drm/i915: use lane count and link rate from VBT as minimums for eDP
  drm/i915: clean up VBT eDP link param decoding
  drm/i915: consider the source max DP lane count too
2014-05-20 14:28:33 +09:00
Olof Johansson
4831ddfd2b Keystone DTS updates for 3.16
- Few of address cell warning fixes.
 - Add Lamarr and Edision EVM NOR flash and NAND devices.
 - Update dts to make use of dma-ranges and dma-coherent properties.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJTcPVyAAoJEHJsHOdBp5c/L0MQAIrujjFvvOLLQCOOPGFLoaoD
 ytwI71c3c76N9C5WBM2AbbTZr7GAMJOTdkMPiNBMxXYrYW8SylRFvAmSJ8T2qMPG
 V6umKc/G/un3o+0kB4A4ft3szO5BACLIls2CfwrMKRaDTVR8XX4l9F09rCjGICEM
 mUwZl3c0PolXFIGm+wKNwOdo6gN5jxAsGaN+5NYFz/h5SseZrXFHNtQnx9RM/nEv
 5mVWKXB3w7x6UrRaJxYy4TacKQZZmYZepVFvn6YFyoZPXz/rff3xQZE4pI5eso3Z
 ammJRnHvQMiBq0M0CY3s+rBSfbVPjOGWp1pRCj0/6ht8UFoQA9Bl1VmRsk9dz2bH
 B1ztqIKGHCwUj6ar7KZfKw8vlr7pac0Bru+/PRsfnsel98Fu+mT8LP5gvcZe34+l
 8C7Vx0s5sbVbbsC7rXb9lFEnTnbkWrRcCC7FpzTSyyU6jpsXRGrXVDhZHcGczyIF
 uqbyQOOF8swsJ2HcQIs0q3IfNbzTq427jehe1Pq9DFd+FSALhEd9uqFI7Q/PaR+B
 Faa4wiNyrKnCDeL29K8lzroo/Ue5lMN63tJ3kgBNQ+5t7pXcPdE7wipPq/XOGfQv
 +ofqJSn3g9pPMGDyGhK09laDXky9F7mfhI3upy/5WclzAMMWK+srR+gZkxsQTz8M
 gfBJSXcjrXk4i2XhdeiD
 =xBoi
 -----END PGP SIGNATURE-----

Merge tag 'keystone-dts' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/dt

Merge "ARM: Keystone DTS updates for 3.16" from Santosh Shilimkar:

Keystone DTS updates for 3.16

- Few of address cell warning fixes.
- Add Lamarr and Edision EVM NOR flash and NAND devices.
- Update dts to make use of dma-ranges and dma-coherent properties.

* tag 'keystone-dts' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: dts: keystone-evm: add spi nor flash support
  ARM: dts: k2l-evm: add AEMIF/NAND device entry
  ARM: dts: k2e-evm: add AEMIF/NAND device entry
  ARM: dts: keystone: Update USB node for dma properties
  ARM: dts: keystone: Use dma-ranges property
  ARM: dts: keystone: add cell's information to spi nodes
  ARM: dts: keystone: move i2c0 device node from SoC to board files
  ARM: dts: keystone: add cell's information to i2c nodes
  ARM: dts: keystone: drop address and size cells from GIC node

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 22:23:48 -07:00
Linus Torvalds
172de656b9 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 fixes from Peter Anvin.

* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86-64, modify_ldt: Make support for 16-bit segments a runtime option
  x86, mm, hugetlb: Add missing TLB page invalidation for hugetlb_cow()
  x86, rdrand: When nordrand is specified, disable RDSEED as well
2014-05-20 14:21:11 +09:00
Linus Torvalds
95d08585e0 Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull timer fix from Thomas Gleixner:
 "A single bug fix for a long standing issue:

   - Updating the expiry value of a relative timer _after_ letting the
     idle logic select a target cpu for the timer based on its stale
     expiry value is outright stupid.  Thanks to Viresh for spotting the
     brainfart"

* 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  hrtimer: Set expiry time before switch_hrtimer_base()
2014-05-20 14:19:10 +09:00
Linus Torvalds
3f017a4ca2 Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull irq fixes from Thomas Gleixner:
 "Two small updates from the irq departement:

   - Provide missing inline stub for a SMP only function

   - Add sub-maintainer for the drivers/irqchip/ part of the irq
     subsystem.  YAY!"

* 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  MAINTAINERS: Add co-maintainer for drivers/irqchip
  genirq: Provide irq_force_affinity fallback for non-SMP
2014-05-20 14:18:04 +09:00
Olof Johansson
9e05f9f300 ARM: sirf: machine update for 3.16
most of them fix some minor checkpatch issues according to key customers'
 requirement. And this patchset also cleanups the clk of clocksource: move
 to get clk by dts properity.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJTeJ/+AAoJEDIv4aC191RhrpEQAILbaesRA3kihK2HftalXhQ3
 A7JqigZqeYW4QTO7pKKT8JAVDbA/9CY1LtaKX15ud0XhHwNHTIlInhAcfL4UEGKo
 +3YjCuw6a/s8Wyy07hcb4deGqeQg0uEbA6flADGIffGfn8Q+8F7Qth4lqQH8O5ag
 Lptne7WdoYLAiJ1e7uX4aUr6YC7Z/xZwDX6Rph4FTXnQWmx95uuDkI2rx327WMs6
 NYALecj2WqLAtQIGOFdezPt7+4iP7eKBmf1QWKidB+JNkrPwQVd3lsPTEHbNpGrQ
 3xhloC+gVznUxH2zoHg/PqMI9jh7da6stFO9LAaLQZAA7AZKbOUaez+BlXWLmNsd
 6nFVI570xsPBepXZmQynUVdlrDD7y5CdDx0FmmTKYQfHQiux6b9rIUpaV/CKs8iC
 FqzLdpvO6EXeEv+Kc7J56aRrkhRRFnAqE4MiHSP4Frmk+Yao/2/5F7BLMVo5OUk7
 Wiv2RHsdgh67lOZbrNJaTjMroJ5EVXBtwEctrh/XkHSPbBILQi/a/O7iTEh++El6
 0TrUXjjrD56Xl6dyByX/0+hINLEFNOUKL9Lx6hHhoGsIV7MYG9/uv3e7P3kBO26L
 GCBS4libfcAm8q+lIwaCS5uT8ullZAk2YJzWCP/lZsmwN208OKAoOQk38es4xQQd
 xOWsU/DEChyxkAXO+inV
 =ythm
 -----END PGP SIGNATURE-----

Merge tag 'sirf-soc-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/baohua/linux into next/cleanup

Merge "ARM: sirf: machine update for 3.16" from Barry Song:

Most of them fix some minor checkpatch issues according to key customers'
requirement. And this patchset also cleanups the clk of clocksource: move
to get clk by dts properity.

* tag 'sirf-soc-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/baohua/linux:
  clocksource:sirf: remove the hardcode for the clk of timers
  irqchip: sirf: fix one minor checkpatch issue
  clocksource: prima2: fix some minor checkpatch issues
  ARM: prima2: rstc: fix some minor checkpatch issues
  + Linux 3.15-rc3

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 22:06:36 -07:00
Olof Johansson
80c2e8876c Addition of missing board compatible names and their vendor-prefixes
as well as the dts portions of the pinctrl rework.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABCAAGBQJTbhKOAAoJEPOmecmc0R2BjM4H/2Ib1MZbZ4cUGyUG508aAnNx
 3mYI/a9Iir6yJvRHENQfWSS0uxggn4Q0W0upVgagDf07PwDxoAH9ISmjTHjII6tN
 2OAHbXQGBa16dN5y6fiVZDAf9SYexaSlWODKb/hqKxt28safl/HAvJYoI42SOKRG
 /D3FMi5DPeFNYTvUeROU0mdOvM3q9S6TMYrcPpdNPqzxFkPKUJsFA9tCu6Gpsk/x
 F90YAMlWdgWD8OjRYdzp4iIRQS97XFTSIZcDScDasCMXnGOX6RMd6x1AqFr93y3K
 zkqjzdCu4OoZhOiFbY0RUoS+CZUj9tROnX851nJ9TIVfA+71bSFjE0cXRWDLYH0=
 =fTm7
 -----END PGP SIGNATURE-----

Merge tag 'v3.16-rockchip-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt

Merge "ARM: rockchip: devicetree changes for v3.16" from Heiko Stübner:

Addition of missing board compatible names and their vendor-prefixes
as well as the dts portions of the pinctrl rework.

* tag 'v3.16-rockchip-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: convert pinctrl nodes to new bindings
  ARM: dts: rockchip: add root compatible properties
  of: add mundoreader and radxa vendor prefixes

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 22:02:16 -07:00
Olof Johansson
5df22a6148 mvebu SoC changes for v3.16
- Armada 375/38x coherency support
  - Armada 375/38x SMP support
  - mvebu PMSU and CPU reset support
  - Armada 370/XP cpuidle support
  - kirkwood remove platform init of audio device
  - small fixes and cleanup for new SoC (375/38x)
 
 Note:
  - due to complex deps, cpuidle changes Acked by appropriate maintainer for
    going though arm-soc tree.
 
 Depends:
  - tags/irqchip-mvebu-3.16 in the mvebu/irqchip branch (tglx already pulled) for:
 
     d7df84b3ce irqchip: irq-armada-370-xp: Use cpu notifier to initialize secondary CPUs
     ef37d337e1 irqchip: irq-armada-370-xp: Do the set_smp_cross_call() in the driver
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTbOGvAAoJEP45WPkGe8Zn53UP/jn5IEn7T/wMKt+m+K4HTPH4
 tLbimH60wKtBDK+R978GqaKibgzqjBy/CeGcV9ip7NCOAVZTXBi3bZW/bHHw9azu
 pCUAUBdX6uAt6Ua+SxtyrI3nqI5g8QrQhg7Loa08r34buL07qRIbR7TwR13cr5pV
 w5svXJeb4bdnvPmMlpzMYFAfvYhUxf5S0aALh1hLzeMsfEq4pfBH581UZQliPAus
 8MVE/eeiam+6wI2mpNyxedaevLJ875SDZo8n7r4yytGvoexIfegvd9GIwKRLe06z
 Owqn05PkU0Zo+X4FSQBWZ81DcRNKP+D3gWJkN7pTVRWNjNVGJtZTkQX4Cyo6JZiX
 0Qz9APp8ZzrnzG4uhYdq0vwlgiMgd5KoxzMF8Wbid3JW+NEMST6QnNqDmF1R86s6
 K4f/DDJtQU9fonicNM8yPlGYvBCBO7Jbb5hoc5QaxTTHSv0hFJVwWtoejwtnhmJA
 wcvTu+oGKmF4nM63zV2P2YbWF0FahGS4ssm2VWk9OsZuXzG4AAV3QGP85qw+3QuV
 ry/GjqT81ExC04KnXsanFz7nw2a74DU1UVZgpkyKEJbS0zcNvr+6u9AIA1zmoF5P
 Nmjwjn4nsC9Y2YuabSGMkM11gCUjFjIG+fA6E5/m5rBwH8UtgPHyLKIt/2nXm6DG
 LVNzCvQpYeh1NTA6Mro6
 =wNp0
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-soc-3.16' of git://git.infradead.org/linux-mvebu into next/soc

Merge "ARM: mvebu: SoC changes for v3.16" from Jason Cooper:

mvebu SoC changes for v3.16

 - Armada 375/38x coherency support
 - Armada 375/38x SMP support
 - mvebu PMSU and CPU reset support
 - Armada 370/XP cpuidle support
 - kirkwood remove platform init of audio device
 - small fixes and cleanup for new SoC (375/38x)

Note:
 - due to complex deps, cpuidle changes Acked by appropriate maintainer for
   going though arm-soc tree.

* tag 'mvebu-soc-3.16' of git://git.infradead.org/linux-mvebu: (46 commits)
  ARM: mvebu: Fix pmsu compilation when ARMv6 is selected
  ARM: mvebu: conditionalize Armada 375 coherency workaround
  ARM: mvebu: conditionalize Armada 375 SMP workaround
  ARM: mvebu: add Armada 375 A0 revision definition
  ARM: mvebu: initialize mvebu-soc-id earlier
  ARM: mvebu: fix thermal quirk SoC revision check
  ARM: Kirkwood: t5325: Remove platform device to instantiate audio
  ARM: Kirkwood: Remove platform driver for codec
  ARM: mvebu: Add thermal quirk for the Armada 375 DB board
  ARM: mvebu: Select HAVE_ARM_TWD only if SMP is enabled
  ARM: mvebu: fix the name of the parameter used in mvebu_get_soc_id
  ARM: mvebu: remove unnecessary ifdef around l2x0_of_init
  ARM: mvebu: register the cpuidle driver for the Armada XP SoCs
  cpuidle: mvebu: Add initial CPU idle support for Armada 370/XP SoC
  ARM: mvebu: Register notifier callback for the cpuidle transition
  ARM: mvebu: refine which files are build in mach-mvebu
  ARM: mvebu: Add the PMSU related part of the cpu idle functions
  ARM: mvebu: Allow to power down L2 cache controller in idle mode
  ARM: mvebu: Low level function to disable HW coherency support
  ARM: mvebu: Split low level functions to manipulate HW coherency
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 21:59:55 -07:00
Olof Johansson
c15c1199b0 mvebu SoC orion5x DT conversion for v3.16
- orion5x
     - convert to DT
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTa8SnAAoJEP45WPkGe8Zn1kQP/0D24YIqXNxrwmH1J0gNbEaM
 EfmqrATHrrtCa4hZWcqobI3+ih8TH8cU0m1CT6R3gWovGHsIRdc9vutvoHnWxXSH
 x5mXcZwb/pop3U0t13OgUzc3wVCcywYAPmB0Kkb/VInL3hmjKl8rhadduMCMRcTr
 Cmlda9seTm960e3sV5m/wRwldcfWw7pj/6kroarxcfnGz2aUNRxv/tiG74Q+Qhw1
 jjjfD9J4LuxN5JfE2EQr6fATO/sTL6wX8RPciEirBpbWer3mieD0PRrtRT2TiX6/
 //5x8pAdoBVw02IqDiMRTQw5MjTKF9MBPECNY05B1x4p8+v0SZVhQizs9K/IgTDK
 LyfZMvWQbC0QUl9YnYxEl0IAR1IhvR74dzfAePT0J+iNZlsTUIpGk6zaFvQiQ6Pw
 UvQn8mlj21CQb/y0uxzaWGRlOeBZPBxJFfXFZz1Wyw9pXmmWU5N/SKulITRsumHV
 wSTkbITHDJa5UA3n9A+0T3lgATJTu/k3Y/VY4GGOF0rUSTnWoHiAq/hNyWbf7uan
 yukCiJXLCfcGNefXfu6RHIGQgVu7yfXCE7ESAoKPx4RJTNP/Wc+raLCFFHg2FUDf
 A/yFVOo75yjKfgJl7C6ZhW6a3Gel4eHaXDMTQw4aNbnZFdwWEbzlGAjqhHTUpq4F
 QoZWVyLappuitMFWbCC6
 =s+Xo
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-soc-orion5x-3.16' of git://git.infradead.org/linux-mvebu into next/soc

Merge "ARM: mvebu: SoC orion5x DT conversion for v3.16" from Jason Cooper:

mvebu SoC orion5x DT conversion for v3.16

 - orion5x
    - convert to DT

* tag 'mvebu-soc-orion5x-3.16' of git://git.infradead.org/linux-mvebu: (29 commits)
  ARM: orion: remove no longer needed gpio DT code
  ARM: orion: remove no longer needed DT IRQ code
  ARM: orion5x: convert Maxtor Shared Storage II to the Device Tree
  ARM: orion5x: convert d2net to Device Tree
  ARM: orion5x: convert RD-88F5182 to Device Tree
  ARM: orion5x: remove unneeded code for edmini_v2
  ARM: orion5x: keep TODO list in edmini_v2 DT
  ARM: orion5x: use DT to describe NOR on edmini_v2
  ARM: orion5x: use DT to describe EHCI on edmini_v2
  ARM: orion5x: use DT to describe I2C devices on edmini_v2
  ARM: orion5x: convert edmini_v2 to DT pinctrl
  ARM: orion5x: add standard pinctrl configs for sata0 and sata1
  ARM: orion5x: add Device Bus description at SoC level
  ARM: orion5x: update I2C description at SoC level
  ARM: orion5x: enable pinctrl driver at SoC level
  ARM: orion5x: switch to DT interrupts and timer
  ARM: orion: switch to a per-platform handle_irq() function
  ARM: orion5x: convert to use 'clocks' property for UART controllers
  ARM: orion5x: switch to use the clock driver for DT platforms
  ARM: orion5x: add interrupt for Ethernet in Device Tree
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 21:56:38 -07:00
Olof Johansson
61e810d364 mvebu DT changes for v3.16
- kirkwood
     - rework nsa3x0 board to add nsa320
     - large cleanup to facilitate use in barebox
     - guruplug phy updates
     - audio updates for t5325
 
  - mvebu
     - use clocks vice clock-frequency for uart nodes
 
     - armada 375/380/385
        - add watchdog node
        - add coherency fabric
        - add smp support
        - add sdhci
        - add ahci
        - add thermal sensor
 
     - armada 370/XP
        - and pmsu
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTa6c8AAoJEP45WPkGe8ZnwB8P/0jFC/tWujz/ndmri/lx8+pi
 rRzyuHg2MCG81lAsJD2dvCh1IWqSg4YM3JWGjiqTNDVn526iVnp9FuJ8SmLiursL
 KG0P1CX+uFqXY181DZBi1OFy3bIz2T/brrA48r6tAVoO3IiZ9v5UnaNz/QokCM+Z
 Yrx1d8sSi5i5/1IqycPOS6TpZ9WcKXAgJFPv7FnvPtKnOxWir7lMW609zCdc54yg
 vx/UQiBIMqgsgNYnwHIe4CjRcjgrg6f4i1Y10XHFK++w3vo9B4lZM67FKfv/Lslq
 z7zWC74v5/lA+SBW5Wb9fWqRxdMEcg8AtA1gQ4qc5phMrVSUZwFRp701goCLhf8j
 t9Hmf5fcVoVLGDTpbcoCuXYCD512VwP5/rv3OtrJ8hGiCajt7JegiRd66TgM6YhQ
 awf2Ss3xEWsmDjSijKN4/zJfn9zzCFwRjdsjBrpXDmi8XH73Obt2Hug/koa1rr86
 wFynL2KWkAmetPXFutOkU17zeOPZ4fs/oloCxpRO2jC8gaWLImO0jiCyMFZYEI4K
 bhIQjhD/rGPPnc4QyQ6Zln9f055tSlH/k5jycp2sGvqmbefTGawvLozi11wu1TXa
 aUeT3dRzXiK4qFn54YkgHwRM6Kp/pZMRXeeW9N27at+/CE9TIE1ZfR4jrTiXf7XS
 70CTD4ElIKbA7fI5gXnS
 =qPr0
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-3.16' of git://git.infradead.org/linux-mvebu into next/dt

Merge "ARM: mvebu: DT changes for v3.16" from Jason Cooper:

mvebu DT changes for v3.16

 - kirkwood
    - rework nsa3x0 board to add nsa320
    - large cleanup to facilitate use in barebox
    - guruplug phy updates
    - audio updates for t5325

 - mvebu
    - use clocks vice clock-frequency for uart nodes

    - armada 375/380/385
       - add watchdog node
       - add coherency fabric
       - add smp support
       - add sdhci
       - add ahci
       - add thermal sensor

    - armada 370/XP
       - and pmsu

* tag 'mvebu-dt-3.16' of git://git.infradead.org/linux-mvebu: (35 commits)
  ARM: Kirkwood: t5325: Use simple card to instantiate audio
  ARM: Kirkwood: DT: Add missing #sound-dai-cells property
  ARM: Kirkwood: Add node for audio codec
  ARM: dts: kirkwood: set Guruplug phy-connection-type to rgmii-id
  ARM: dts: kirkwood: set Guruplug ethernet PHY compatible
  ARM: dts: kirkwood: set default pinctrl for I2C1 on 6282
  ARM: dts: kirkwood: set default pinctrl for I2C0
  ARM: dts: kirkwood: set default pinctrl for NAND
  ARM: dts: kirkwood: set default pinctrl for SPI0
  ARM: dts: kirkwood: set default pinctrl for UART0/1
  ARM: dts: kirkwood: set default pinctrl for GBE1
  ARM: dts: kirkwood: consolidate common pinctrl settings
  ARM: dts: kirkwood: add pinctrl node to common SoC include
  ARM: dts: kirkwood: rename pin-controller nodes
  ARM: dts: kirkwood: remove clock-frequency properties from UART nodes
  ARM: dts: kirkwood: add stdout-path property to all boards
  ARM: dts: kirkwood: add node labels
  ARM: mvebu: Enable the thermal sensor in Armada 380/385 SoC
  ARM: mvebu: Enable the thermal sensor in Armada 375 SoC
  ARM: mvebu: don't use clocks property in UART node for Netgear RN2120
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 21:55:03 -07:00
Olof Johansson
77d563d211 mvebu defconfig changes for v3.16
- enable the following:
     - nfsroot
     - fhandle
     - sdhci_pxav3
     - ahci_mvebu
     - spi_nor
     - sound for t5325
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTa6MhAAoJEP45WPkGe8Zn9m4P/R4QUpHPJCDu8Nd+yOm3M13K
 1vesXDAUxzPegFgY6h1FIRJtGne0iXzZquTzEAEiyni1GWG7/PHyw2wMTtO/ukSE
 Z1QRZxmIHVZRSnP1WtL1Yyh0pMaMNsZBNxDPU9YvMusrKgeQjGTtM+zxEr1NSDL7
 yF+cDQmgkyyUISG5VNe43lmJi9Zwqg2GUEK3wQ1iznsioyvlsEu/A8A2CDAA0Xtn
 fhfGXxqWUQNS3yioaPPsJLYAgM2ju63ep1vWfBY00P4LEo241eXz39OiM37NBoI8
 RGk0EnLZlYRgHh4h1EoWJ6FVAOwvjatEE7TlFbMC8X3TkZ4fTjqzK/snDSHEcwic
 bA/mKe2dWoxz4kO4K6rUmOyScPpGOkBZOW5K0zBhRnJN+BRGD7CE4imMUbfB3fLe
 RNxvMe19xsnEZBbCYJzr/ffUfqc8CVdT58EfmwnmEOFNoabhO/cZIkg//RGTffHq
 43DABKYX3T1n2tj6p8/du4E8aM7DEyFqfa06Eef2r1hoprmVpMwryKa92DlIuscJ
 NHd2ZEpwR+o0/33sdOLqwqGkXer8SGCzyMfrciCgeZcOAwB6DfhT50he/L3vd62X
 uUurOzUZ4C6Bg2yIBQBeMy/zg9L6/B1WE1CoThLBlniSNCZoJKUmkO+rPzHRJzr8
 hg6kPeSp+iQC4Nv/YFHT
 =s2Oh
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-defconfig-3.16' of git://git.infradead.org/linux-mvebu into next/boards

Merge "ARM: mvebu: defconfig changes for v3.16" from Jason Cooper:

mvebu defconfig changes for v3.16

 - enable the following:
    - nfsroot
    - fhandle
    - sdhci_pxav3
    - ahci_mvebu
    - spi_nor
    - sound for t5325

* tag 'mvebu-defconfig-3.16' of git://git.infradead.org/linux-mvebu:
  ARM: multi_v5_defconfig: Enable sound modules needed for t5325
  ARM: mvebu_v5_defconfig: Enable sound modules needed for t5325
  ARM: mvebu: defconfig: add MTD_SPI_NOR (new dependency for M25P80)
  ARM: configs: add ahci_mvebu to mvebu_v7_defconfig
  ARM: configs: add CONFIG_MMC_SDHCI_PXAV3 to the mvebu_v7_defconfig
  ARM: mvebu: enable fhandle in the defconfigs
  ARM: mvebu: Enable nfsroot in the defconfig

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 21:53:42 -07:00
Olof Johansson
02be9746e3 mvebu driver changes for v3.16
- mvebu-devbus
     - changes need to add support for the orion5x platform
 
 Depends:
 
   - tags/mvebu-fixes-3.15 in the mvebu/fixes branch for:
 
      ce965c3d2e memory: mvebu-devbus: fix the conversion of the bus width
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTa5xDAAoJEP45WPkGe8ZnEZYP/iPCwDbvoxexpRcaBP+oINc4
 rw9VC0E+eujVRJKj5UN3/sji/nV431IDNB3wM+QREPCG7CVkK6pGwKT9gVnBkhZF
 03QHKzzTYpVqv+zYv4hGL2CTpQ8I21HSsBFHYeZNNvYDUeqCCGcpdn7I6cf66mxg
 Bx5SNVyuz/TrpfKSzF3zSFSwpI+7rKE//Zg4YZG9v8/bsc6qUFb+9/Lu6Hynq/+P
 pgHr9YgQP1qhK6YxiFzA1ZAXHY+GdfnK9UuL+oHwcqjcNvV9y3XW3syA5gMK9lBI
 8nqQKUw+HjoUTuWURGT7ZLO7DRAODXDSLwHp558VCpjkm0BSMreIGY8d4F87wyzr
 J2b8LmL7CwnxOREK8eToh4uz7G6DQwdO4bqppCWUQSn4+ytp8ZG/UG8Yekn83oXq
 boHMXldgTfQX4a0JlNLbzfOse3WhNIyAcLeCUwDF0rBwRxdMdoE7Ze34cmumj/wb
 Sd1MhhfwMwmUTAb+Bdb6CcKHIkzg6TRwU+C8oWzcex+uMqRFt3gSqKfykso9z2R2
 2LyT58XhcKKR9RjZW2UPnMCTxZQVrjBp+VhE72U9HjWX5+Ggqs2GDKxNILuv9fAt
 htAq9Ut7czjL3SwBQAdV9A9SJhyXnBVHUJLDkFOubqG37MUPIwLIgoVLu3HqRGia
 YMXzkRElm3sSGzkWL4tI
 =8W+2
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-drivers-3.16' of git://git.infradead.org/linux-mvebu into next/drivers

Merge "ARM: mvebu: driver changes for v3.16" from Jason Cooper:

mvebu driver changes for v3.16

 - mvebu-devbus
    - changes need to add support for the orion5x platform

* tag 'mvebu-drivers-3.16' of git://git.infradead.org/linux-mvebu:
  memory: mvebu-devbus: add a devbus, keep-config property
  memory: mvebu-devbus: add Orion5x support
  memory: mvebu-devbus: split functions
  memory: mvebu-devbus: use _SHIFT suffixes instead of _BIT
  memory: mvebu-devbus: use ARMADA_ prefix in defines
  ARM: orion5x: fix target ID for crypto SRAM window
  memory: mvebu-devbus: fix the conversion of the bus width

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-05-19 21:52:18 -07:00
Ulf Hansson
5080a08d0f mmc: mmci: Enforce max frequency configuration through DT
Remove the option to provide a maximum frequency as platform data,
enforce it through DT.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2014-05-20 06:06:56 +02:00
Jens Axboe
719c555f44 block: move mm/bounce.c to block/
Continue moving some of the block files that are scattered around.
bounce.c contains only code for bouncing the contents of a bio.
It's block proper code, not mm code.

Suggested-by: Ming Lei <tom.leiming@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2014-05-19 20:01:52 -06:00
Alan Cox
8d9e9857c5 goldfish: fix >> 32 warning
We should be checking for a 64bit platform not 64bit DMA address types in
the case of Goldfish. The Goldfish virtual platform is either 32/32 or
64/64.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-05-20 10:30:40 +09:00
Tejun Heo
f5c16f29bf sysfs: make sure read buffer is zeroed
13c589d5b0 ("sysfs: use seq_file when reading regular files")
switched sysfs from custom read implementation to seq_file to enable
later transition to kernfs.  After the change, the buffer passed to
->show() is acquired through seq_get_buf(); unfortunately, this
introduces a subtle behavior change.  Before the commit, the buffer
passed to ->show() was always zero as it was allocated using
get_zeroed_page().  Because seq_file doesn't clear buffers on
allocation and neither does seq_get_buf(), after the commit, depending
on the behavior of ->show(), we may end up exposing uninitialized data
to userland thus possibly altering userland visible behavior and
leaking information.

Fix it by explicitly clearing the buffer.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: Ron <ron@debian.org>
Fixes: 13c589d5b0 ("sysfs: use seq_file when reading regular files")
Cc: stable <stable@vger.kernel.org> # 3.13+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-05-20 10:15:53 +09:00
Mathias Nyman
c311e391a7 xhci: rework command timeout and cancellation,
Use one timer to control command timeout.

start/kick the timer every time a command is completed and a
new command is waiting, or a new command is added to a empty list.

If the timer runs out, then tag the current command as "aborted", and
start the xhci command abortion process.

Previously each function that submitted a command had its own timer.
If that command timed out, a new command structure for the
command was created and it was put on a cancel_cmd_list list,
then a pci write to abort the command ring was issued.

when the ring was aborted, it checked if the current command
was the one to be canceled, later when the ring was stopped the
driver got ownership of the TRBs in the command ring,
compared then to the TRBs in the cancel_cmd_list,
and turned them into No-ops.

Now, instead, at timeout we tag the status of the command in the
command queue to be aborted, and start the ring abortion.
Ring abortion stops the command ring and gives control of the
commands to us.
All the aborted commands are now turned into No-ops.

If the ring is already stopped when the command times outs its not possible
to start the ring abortion, in this case the command is turnd to No-op
right away.

All these changes allows us to remove the entire cancel_cmd_list code.

The functions waiting for a command to finish no longer have their own timeouts.
They will wait either until the command completes normally,
or until the whole command abortion is done.

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-05-20 10:03:25 +09:00
Mathias Nyman
9ea1833e4c xhci: Use completion and status in global command queue
Remove the per-device command list and handle_cmd_in_cmd_wait_list()
and use the completion and status variables found in the
command structure in the global command list.

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-05-20 10:03:25 +09:00
Mathias Nyman
c9aa1a2de4 xhci: Add a global command queue
Create a list to store command structures, add a structure to it every time
a command is submitted, and remove it from the list once we get a
command completion event matching the command.

Callers that wait for completion will free their command structures themselves.
The other command structures are freed in the command completion event handler.

Also add a check that prevents queuing commands if host is dying

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-05-20 10:03:25 +09:00
Mathias Nyman
ddba5cd0ae xhci: Use command structures when queuing commands on the command ring
To create a global command queue we require that each command put on the
command ring is submitted with a command structure.

Functions that queue commands and wait for completion need to allocate a command
before submitting it, and free it once completed. The following command queuing
functions need to be modified.

xhci_configure_endpoint()
xhci_address_device()
xhci_queue_slot_control()
xhci_queue_stop_endpoint()
xhci_queue_new_dequeue_state()
xhci_queue_reset_ep()
xhci_configure_endpoint()

xhci_configure_endpoint() could already be called with a command structure,
and only xhci_check_maxpacket and xhci_check_bandwidth did not do so. These
are changed and a command structure is now required. This change also simplifies
the configure endpoint command completion handling and the "goto bandwidth_change"
handling code can be removed.

In some cases the command queuing function is called in interrupt context.
These commands needs to be allocated atomically, and they can't wait for
completion. These commands will in this patch be freed directly after queuing,
but freeing will be moved to the command completion event handler in a later
patch once we get the global command queue up.(Just so that we won't leak
memory in the middle of the patch set)

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-05-20 10:03:25 +09:00