Commit Graph

39071 Commits

Author SHA1 Message Date
Linus Torvalds
872912352c ACPI and power management updates for v3.20-rc1
- Rework of the core ACPI resources parsing code to fix issues
    in it and make using resource offsets more convenient and
    consolidation of some resource-handing code in a couple of places
    that have grown analagous data structures and code to cover the
    the same gap in the core (Jiang Liu, Thomas Gleixner, Lv Zheng).
 
  - ACPI-based IOAPIC hotplug support on top of the resources handling
    rework (Jiang Liu, Yinghai Lu).
 
  - ACPICA update to upstream release 20150204 including an interrupt
    handling rework that allows drivers to install raw handlers for
    ACPI GPEs which then become entirely responsible for the given GPE
    and the ACPICA core code won't touch it (Lv Zheng, David E Box,
    Octavian Purdila).
 
  - ACPI EC driver rework to fix several concurrency issues and other
    problems related to events handling on top of the ACPICA's new
    support for raw GPE handlers (Lv Zheng).
 
  - New ACPI driver for AMD SoCs analogous to the LPSS (Low-Power
    Subsystem) driver for Intel chips (Ken Xue).
 
  - Two minor fixes of the ACPI LPSS driver (Heikki Krogerus,
    Jarkko Nikula).
 
  - Two new blacklist entries for machines (Samsung 730U3E/740U3E and
    510R) where the native backlight interface doesn't work correctly
    while the ACPI one does (Hans de Goede).
 
  - Rework of the ACPI processor driver's handling of idle states
    to make the code more straightforward and less bloated overall
    (Rafael J Wysocki).
 
  - Assorted minor fixes related to ACPI and SFI (Andreas Ruprecht,
    Andy Shevchenko, Hanjun Guo, Jan Beulich, Rafael J Wysocki,
    Yaowei Bai).
 
  - PCI core power management modification to avoid resuming (some)
    runtime-suspended devices during system suspend if they are in
    the right states already (Rafael J Wysocki).
 
  - New SFI-based cpufreq driver for Intel platforms using SFI
    (Srinidhi Kasagar).
 
  - cpufreq core fixes, cleanups and simplifications (Viresh Kumar,
    Doug Anderson, Wolfram Sang).
 
  - SkyLake CPU support and other updates for the intel_pstate driver
    (Kristen Carlson Accardi, Srinivas Pandruvada).
 
  - cpufreq-dt driver cleanup (Markus Elfring).
 
  - Init fix for the ARM big.LITTLE cpuidle driver (Sudeep Holla).
 
  - Generic power domains core code fixes and cleanups (Ulf Hansson).
 
  - Operating Performance Points (OPP) core code cleanups and kernel
    documentation update (Nishanth Menon).
 
  - New dabugfs interface to make the list of PM QoS constraints
    available to user space (Nishanth Menon).
 
  - New devfreq driver for Tegra Activity Monitor (Tomeu Vizoso).
 
  - New devfreq class (devfreq_event) to provide raw utilization data
    to devfreq governors (Chanwoo Choi).
 
  - Assorted minor fixes and cleanups related to power management
    (Andreas Ruprecht, Krzysztof Kozlowski, Rickard Strandqvist,
    Pavel Machek, Todd E Brandt, Wonhong Kwon).
 
  - turbostat updates (Len Brown) and cpupower Makefile improvement
    (Sriram Raghunathan).
 
 /
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABCAAGBQJU2neOAAoJEILEb/54YlRx51QP/jrv1Wb5eMaemzMksPIWI5Zn
 I8IbxzToxu7wDDsrTBRv+LuyllMPrnppFOHHvB35gUYu7Y6I066s3ErwuqeFlbmy
 +VicmyGMahv3yN74qg49MXzWtaJZa8hrFXn8ItujiUIcs08yELi0vBQFlZImIbTB
 PdQngO88VfiOVjDvmKkYUU//9Sc9LCU0ZcdUQXSnA1oNOxuUHjiARz98R03hhSqu
 BWR+7M0uaFbu6XeK+BExMXJTpKicIBZ1GAF6hWrS8V4aYg+hH1cwjf2neDAzZkcU
 UkXieJlLJrCq+ZBNcy7WEhkWQkqJNWei5WYiy6eoQeQpNoliY2V+2OtSMJaKqDye
 PIiMwXstyDc5rgyULN0d1UUzY6mbcUt2rOL0VN2bsFVIJ1HWCq8mr8qq689pQUYv
 tcH18VQ2/6r2zW28sTO/ByWLYomklD/Y6bw2onMhGx3Knl0D8xYJKapVnTGhr5eY
 d4k41ybHSWNKfXsZxdJc+RxndhPwj9rFLfvY/CZEhLcW+2pAiMarRDOPXDoUI7/l
 aJpmPzy/6mPXGBnTfr6jKDSY3gXNazRIvfPbAdiGayKcHcdRM4glbSbNH0/h1Iq6
 HKa8v9Fx87k1X5r4ZbhiPdABWlxuKDiM7725rfGpvjlWC3GNFOq7YTVMOuuBA225
 Mu9PRZbOsZsnyNkixBpX
 =zZER
 -----END PGP SIGNATURE-----

Merge tag 'pm+acpi-3.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI and power management updates from Rafael Wysocki:
 "We have a few new features this time, including a new SFI-based
  cpufreq driver, a new devfreq driver for Tegra Activity Monitor, a new
  devfreq class for providing its governors with raw utilization data
  and a new ACPI driver for AMD SoCs.

  Still, the majority of changes here are reworks of existing code to
  make it more straightforward or to prepare it for implementing new
  features on top of it.  The primary example is the rework of ACPI
  resources handling from Jiang Liu, Thomas Gleixner and Lv Zheng with
  support for IOAPIC hotplug implemented on top of it, but there is
  quite a number of changes of this kind in the cpufreq core, ACPICA,
  ACPI EC driver, ACPI processor driver and the generic power domains
  core code too.

  The most active developer is Viresh Kumar with his cpufreq changes.

  Specifics:

   - Rework of the core ACPI resources parsing code to fix issues in it
     and make using resource offsets more convenient and consolidation
     of some resource-handing code in a couple of places that have grown
     analagous data structures and code to cover the the same gap in the
     core (Jiang Liu, Thomas Gleixner, Lv Zheng).

   - ACPI-based IOAPIC hotplug support on top of the resources handling
     rework (Jiang Liu, Yinghai Lu).

   - ACPICA update to upstream release 20150204 including an interrupt
     handling rework that allows drivers to install raw handlers for
     ACPI GPEs which then become entirely responsible for the given GPE
     and the ACPICA core code won't touch it (Lv Zheng, David E Box,
     Octavian Purdila).

   - ACPI EC driver rework to fix several concurrency issues and other
     problems related to events handling on top of the ACPICA's new
     support for raw GPE handlers (Lv Zheng).

   - New ACPI driver for AMD SoCs analogous to the LPSS (Low-Power
     Subsystem) driver for Intel chips (Ken Xue).

   - Two minor fixes of the ACPI LPSS driver (Heikki Krogerus, Jarkko
     Nikula).

   - Two new blacklist entries for machines (Samsung 730U3E/740U3E and
     510R) where the native backlight interface doesn't work correctly
     while the ACPI one does (Hans de Goede).

   - Rework of the ACPI processor driver's handling of idle states to
     make the code more straightforward and less bloated overall (Rafael
     J Wysocki).

   - Assorted minor fixes related to ACPI and SFI (Andreas Ruprecht,
     Andy Shevchenko, Hanjun Guo, Jan Beulich, Rafael J Wysocki, Yaowei
     Bai).

   - PCI core power management modification to avoid resuming (some)
     runtime-suspended devices during system suspend if they are in the
     right states already (Rafael J Wysocki).

   - New SFI-based cpufreq driver for Intel platforms using SFI
     (Srinidhi Kasagar).

   - cpufreq core fixes, cleanups and simplifications (Viresh Kumar,
     Doug Anderson, Wolfram Sang).

   - SkyLake CPU support and other updates for the intel_pstate driver
     (Kristen Carlson Accardi, Srinivas Pandruvada).

   - cpufreq-dt driver cleanup (Markus Elfring).

   - Init fix for the ARM big.LITTLE cpuidle driver (Sudeep Holla).

   - Generic power domains core code fixes and cleanups (Ulf Hansson).

   - Operating Performance Points (OPP) core code cleanups and kernel
     documentation update (Nishanth Menon).

   - New dabugfs interface to make the list of PM QoS constraints
     available to user space (Nishanth Menon).

   - New devfreq driver for Tegra Activity Monitor (Tomeu Vizoso).

   - New devfreq class (devfreq_event) to provide raw utilization data
     to devfreq governors (Chanwoo Choi).

   - Assorted minor fixes and cleanups related to power management
     (Andreas Ruprecht, Krzysztof Kozlowski, Rickard Strandqvist, Pavel
     Machek, Todd E Brandt, Wonhong Kwon).

   - turbostat updates (Len Brown) and cpupower Makefile improvement
     (Sriram Raghunathan)"

* tag 'pm+acpi-3.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (151 commits)
  tools/power turbostat: relax dependency on APERF_MSR
  tools/power turbostat: relax dependency on invariant TSC
  Merge branch 'pci/host-generic' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci into acpi-resources
  tools/power turbostat: decode MSR_*_PERF_LIMIT_REASONS
  tools/power turbostat: relax dependency on root permission
  ACPI / video: Add disable_native_backlight quirk for Samsung 510R
  ACPI / PM: Remove unneeded nested #ifdef
  USB / PM: Remove unneeded #ifdef and associated dead code
  intel_pstate: provide option to only use intel_pstate with HWP
  ACPI / EC: Add GPE reference counting debugging messages
  ACPI / EC: Add query flushing support
  ACPI / EC: Refine command storm prevention support
  ACPI / EC: Add command flushing support.
  ACPI / EC: Introduce STARTED/STOPPED flags to replace BLOCKED flag
  ACPI: add AMD ACPI2Platform device support for x86 system
  ACPI / table: remove duplicate NULL check for the handler of acpi_table_parse()
  ACPI / EC: Update revision due to raw handler mode.
  ACPI / EC: Reduce ec_poll() by referencing the last register access timestamp.
  ACPI / EC: Fix several GPE handling issues by deploying ACPI_GPE_DISPATCH_RAW_HANDLER mode.
  ACPICA: Events: Enable APIs to allow interrupt/polling adaptive request based GPE handling model
  ...
2015-02-10 15:09:41 -08:00
Linus Torvalds
c08f846793 PCI changes for the v3.20 merge window:
Enumeration
     - Move domain assignment from arm64 to generic code (Lorenzo Pieralisi)
     - ARM: Remove artificial dependency on pci_sys_data domain (Lorenzo Pieralisi)
     - ARM: Move to generic PCI domains (Lorenzo Pieralisi)
     - Generate uppercase hex for modalias var in uevent (Ricardo Ribalda Delgado)
     - Add and use generic config accessors on ARM, PowerPC (Rob Herring)
 
   Resource management
     - Free resources on failure in of_pci_get_host_bridge_resources() (Lorenzo Pieralisi)
     - Fix infinite loop with ROM image of size 0 (Michel Dänzer)
 
   PCI device hotplug
     - Handle surprise add even if surprise removal isn't supported (Bjorn Helgaas)
 
   Virtualization
     - Mark AMD/ATI VGA devices that don't reset on D3hot->D0 transition (Alex Williamson)
     - Add DMA alias quirk for Adaptec 3405 (Alex Williamson)
     - Add Wellsburg (X99) to Intel PCH root port ACS quirk (Alex Williamson)
     - Add ACS quirk for Emulex NICs (Vasundhara Volam)
 
   MSI
     - Fail MSI-X mappings if there's no space assigned to MSI-X BAR (Yijing Wang)
 
   Freescale Layerscape host bridge driver
     - Fix platform_no_drv_owner.cocci warnings (Julia Lawall)
 
   NVIDIA Tegra host bridge driver
     - Remove unnecessary tegra_pcie_fixup_bridge() (Lucas Stach)
 
   Renesas R-Car host bridge driver
     - Fix error handling of irq_of_parse_and_map() (Dmitry Torokhov)
 
   TI Keystone host bridge driver
     - Fix error handling of irq_of_parse_and_map() (Dmitry Torokhov)
     - Fix misspelling of current function in debug output (Julia Lawall)
 
   Xilinx AXI host bridge driver
     - Fix harmless format string warning (Arnd Bergmann)
 
   Miscellaneous
     - Use standard parsing functions for ASPM sysfs setters (Chris J Arges)
     - Add pci_device_to_OF_node() stub for !CONFIG_OF (Kevin Hao)
     - Delete unnecessary NULL pointer checks (Markus Elfring)
     - Add and use defines for PCIe Max_Read_Request_Size (Rafał Miłecki)
     - Include clk.h instead of clk-private.h (Stephen Boyd)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJU1idjAAoJEFmIoMA60/r8C+gP/3p1Ya/cW+liX7e0Pz6wsrkB
 pAk9Af9Iz7RHYb0ODAs1XnlvuJJtJ6nXb9iXTFefhWKfVK0dF1i0w2VqsLUa+iLS
 V65XzkdtrEa+uJj5plvzehrHQhOPh5U2WtZvsAgeC6yu9F/LhnJywOIZjaYdCYwE
 /lXBgLPJiqXfDyEpKT6TqObwPpY7Ly+7+yNZ4LcO84AuBwb6lBq88Eyl7Ft+K57m
 dIJVh8ZTQMzVy5EcGbLoIYF4Mg8zdQbxju73bfeBNerxwd7QD7l0mfiQ3yIexRrQ
 FvzgIerDYdabKgYcbC3cQzMR4V0TEcWs0E7VqiokU4onor4VnK4A0PtbMEWcK8YN
 OZnQ8d4imHhJN4HdJeMhiKIIk+Cr52A1fC/AKmL0Ddw8yKusgjPz2Ux0pHpXMR1a
 NodymVV4XWcDBKWPX0DLESe8wJC4fN+v8bwMVWg20BC709BaK61yA7lGqJ70HmJ+
 u5mWokjgiycTQmJBiJmkEM9b5YVHLjrQ0PwDiYEtkxhMmd/ti+o12fhyNU8Epkr7
 fgDEI/OTURbhbrX0qiQ8RZiSSt5WXuy+ZWbw76rfo3SUH3Lt1WrcdbZrUd9em2hy
 dqOA1vV97JUtQMD/Dsg9apTObR9XJk2B/lyZs1YyCcb77KGSEsSw2x+xz3RRVHM4
 uQDwVupB/QsRVAu4tubr
 =N6mH
 -----END PGP SIGNATURE-----

Merge tag 'pci-v3.20-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci

Pull PCI changes from Bjorn Helgaas:
 "Enumeration
    - Move domain assignment from arm64 to generic code (Lorenzo Pieralisi)
    - ARM: Remove artificial dependency on pci_sys_data domain (Lorenzo Pieralisi)
    - ARM: Move to generic PCI domains (Lorenzo Pieralisi)
    - Generate uppercase hex for modalias var in uevent (Ricardo Ribalda Delgado)
    - Add and use generic config accessors on ARM, PowerPC (Rob Herring)

  Resource management
    - Free resources on failure in of_pci_get_host_bridge_resources() (Lorenzo Pieralisi)
    - Fix infinite loop with ROM image of size 0 (Michel Dänzer)

  PCI device hotplug
    - Handle surprise add even if surprise removal isn't supported (Bjorn Helgaas)

  Virtualization
    - Mark AMD/ATI VGA devices that don't reset on D3hot->D0 transition (Alex Williamson)
    - Add DMA alias quirk for Adaptec 3405 (Alex Williamson)
    - Add Wellsburg (X99) to Intel PCH root port ACS quirk (Alex Williamson)
    - Add ACS quirk for Emulex NICs (Vasundhara Volam)

  MSI
    - Fail MSI-X mappings if there's no space assigned to MSI-X BAR (Yijing Wang)

  Freescale Layerscape host bridge driver
    - Fix platform_no_drv_owner.cocci warnings (Julia Lawall)

  NVIDIA Tegra host bridge driver
    - Remove unnecessary tegra_pcie_fixup_bridge() (Lucas Stach)

  Renesas R-Car host bridge driver
    - Fix error handling of irq_of_parse_and_map() (Dmitry Torokhov)

  TI Keystone host bridge driver
    - Fix error handling of irq_of_parse_and_map() (Dmitry Torokhov)
    - Fix misspelling of current function in debug output (Julia Lawall)

  Xilinx AXI host bridge driver
    - Fix harmless format string warning (Arnd Bergmann)

  Miscellaneous
    - Use standard parsing functions for ASPM sysfs setters (Chris J Arges)
    - Add pci_device_to_OF_node() stub for !CONFIG_OF (Kevin Hao)
    - Delete unnecessary NULL pointer checks (Markus Elfring)
    - Add and use defines for PCIe Max_Read_Request_Size (Rafał Miłecki)
    - Include clk.h instead of clk-private.h (Stephen Boyd)"

* tag 'pci-v3.20-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (48 commits)
  PCI: Add pci_device_to_OF_node() stub for !CONFIG_OF
  PCI: xilinx: Convert to use generic config accessors
  PCI: xgene: Convert to use generic config accessors
  PCI: tegra: Convert to use generic config accessors
  PCI: rcar: Convert to use generic config accessors
  PCI: generic: Convert to use generic config accessors
  powerpc/powermac: Convert PCI to use generic config accessors
  powerpc/fsl_pci: Convert PCI to use generic config accessors
  ARM: ks8695: Convert PCI to use generic config accessors
  ARM: sa1100: Convert PCI to use generic config accessors
  ARM: integrator: Convert PCI to use generic config accessors
  PCI: versatile: Add DT-based ARM Versatile PB PCIe host driver
  ARM: dts: versatile: add PCI controller binding
  of/pci: Free resources on failure in of_pci_get_host_bridge_resources()
  PCI: versatile: Add DT docs for ARM Versatile PB PCIe driver
  PCI: Fail MSI-X mappings if there's no space assigned to MSI-X BAR
  r8169: use PCI define for Max_Read_Request_Size
  [SCSI] esas2r: use PCI define for Max_Read_Request_Size
  tile: use PCI define for Max_Read_Request_Size
  rapidio/tsi721: use PCI define for Max_Read_Request_Size
  ...
2015-02-10 14:31:28 -08:00
Kirill A. Shutemov
b007ea798f arm: drop L_PTE_FILE and pte_file()-related helpers
We've replaced remap_file_pages(2) implementation with emulation.  Nobody
creates non-linear mapping anymore.

This patch also adjust __SWP_TYPE_SHIFT, effectively increase size of
possible swap file to 128G.

Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Cc: Russell King <linux@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-02-10 14:30:31 -08:00
Linus Torvalds
bdccc4edeb xen: features and fixes for 3.20-rc0
- Reworked handling for foreign (grant mapped) pages to simplify the
   code, enable a number of additional use cases and fix a number of
   long-standing bugs.
 - Prefer the TSC over the Xen PV clock when dom0 (and the TSC is
   stable).
 - Assorted other cleanup and minor bug fixes.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQEcBAABAgAGBQJU2JC+AAoJEFxbo/MsZsTRIvAH/1lgQ0EQlxaZtEFWY8cJBzxY
 dXaTMfyGQOddGYDCW0r42hhXJHeX7DWXSERSD3aW9DZOn/eYdneHq9gWRD4uPrGn
 hEFQ26J4jZWR5riGXaja0LqI2gJKLZ6BhHIQciLEbY+jw4ynkNBLNRPFehuwrCsZ
 WdBwJkyvXC3RErekncRl/aNhxdi4p1P6qeiaW/mo3UcSO/CFSKybOLwT65iePazg
 XuY9UiTn2+qcRkm/tjx8K9heHK8SBEGNWuoTcWYF1to8mwwUfKIAc4NO2UBDXJI+
 rp7Z2lVFdII15JsQ08ATh3t7xDrMWLzCX/y4jCzmF3DBXLbSWdHCQMgI7TWt5pE=
 =PyJK
 -----END PGP SIGNATURE-----

Merge tag 'stable/for-linus-3.20-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip

Pull xen features and fixes from David Vrabel:

 - Reworked handling for foreign (grant mapped) pages to simplify the
   code, enable a number of additional use cases and fix a number of
   long-standing bugs.

 - Prefer the TSC over the Xen PV clock when dom0 (and the TSC is
   stable).

 - Assorted other cleanup and minor bug fixes.

* tag 'stable/for-linus-3.20-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (25 commits)
  xen/manage: Fix USB interaction issues when resuming
  xenbus: Add proper handling of XS_ERROR from Xenbus for transactions.
  xen/gntdev: provide find_special_page VMA operation
  xen/gntdev: mark userspace PTEs as special on x86 PV guests
  xen-blkback: safely unmap grants in case they are still in use
  xen/gntdev: safely unmap grants in case they are still in use
  xen/gntdev: convert priv->lock to a mutex
  xen/grant-table: add a mechanism to safely unmap pages that are in use
  xen-netback: use foreign page information from the pages themselves
  xen: mark grant mapped pages as foreign
  xen/grant-table: add helpers for allocating pages
  x86/xen: require ballooned pages for grant maps
  xen: remove scratch frames for ballooned pages and m2p override
  xen/grant-table: pre-populate kernel unmap ops for xen_gnttab_unmap_refs()
  mm: add 'foreign' alias for the 'pinned' page flag
  mm: provide a find_special_page vma operation
  x86/xen: cleanup arch/x86/xen/mmu.c
  x86/xen: add some __init annotations in arch/x86/xen/mmu.c
  x86/xen: add some __init and static annotations in arch/x86/xen/setup.c
  x86/xen: use correct types for addresses in arch/x86/xen/setup.c
  ...
2015-02-10 13:56:56 -08:00
Rafael J. Wysocki
8fbcf5ecb3 Merge branch 'acpi-resources'
* acpi-resources: (23 commits)
  Merge branch 'pci/host-generic' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci into acpi-resources
  x86/irq, ACPI: Implement ACPI driver to support IOAPIC hotplug
  ACPI: Add interfaces to parse IOAPIC ID for IOAPIC hotplug
  x86/PCI: Refine the way to release PCI IRQ resources
  x86/PCI/ACPI: Use common ACPI resource interfaces to simplify implementation
  x86/PCI: Fix the range check for IO resources
  PCI: Use common resource list management code instead of private implementation
  resources: Move struct resource_list_entry from ACPI into resource core
  ACPI: Introduce helper function acpi_dev_filter_resource_type()
  ACPI: Add field offset to struct resource_list_entry
  ACPI: Translate resource into master side address for bridge window resources
  ACPI: Return translation offset when parsing ACPI address space resources
  ACPI: Enforce stricter checks for address space descriptors
  ACPI: Set flag IORESOURCE_UNSET for unassigned resources
  ACPI: Normalize return value of resource parser functions
  ACPI: Fix a bug in parsing ACPI Memory24 resource
  ACPI: Add prefetch decoding to the address space parser
  ACPI: Move the window flag logic to the combined parser
  ACPI: Unify the parsing of address_space and ext_address_space
  ACPI: Let the parser return false for disabled resources
  ...
2015-02-10 16:05:16 +01:00
Russell King
df9ab9771c Merge branch 'devel-stable' into for-next 2015-02-10 10:26:38 +00:00
Russell King
ed8f8ce38d Merge branches 'debug', 'fixes', 'l2c' (early part), 'misc' and 'sa1100' into for-next 2015-02-10 10:26:27 +00:00
Stephen Boyd
8684014d71 ARM: 8301/1: qcom: Use secondary_startup_arm()
On qcom platforms we always enter the kernel in ARM mode,
regardless of the kernel being compiled for THUMB mode. Use
secondary_startup_arm() to properly switch the mode to what the
kernel expects if required.

Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-02-10 10:23:14 +00:00
Stephen Boyd
bafe586583 ARM: 8302/1: Add a secondary_startup that assumes ARM mode
Some platforms always enter the kernel in ARM mode even if the
kernel is compiled for THUMB2. Add a small wrapper on top of
secondary_startup() that switches into THUMB2 mode.

Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-02-10 10:23:13 +00:00
Ard Biesheuvel
ada63d4074 ARM: 8300/1: teach __asmeq that r11 == fp and r12 == ip
The __asmeq macro is used inside inline asm statements to ensure that
register asm variables that explicitly specify a register are mapped
correctly onto those registers when used in inline asm input and output
constraints. However, the string based matching fails to take into
account that 'fp' is often referred to as 'r11' and 'ip' is often
referred to as 'r12', (e.g., by clang), causing false negatives.

Fix this by making __asmeq consider the ("fp","r11"), ("r11","fp"),
("ip","r12") and ("r12","ip") cases specifically.

Reviewed-by: Alex Elder <elder@linaro.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-02-10 10:23:11 +00:00
Jon Medhurst
4e1c0664de ARM: kprobes: Fix compilation error caused by superfluous '*'
There is a superfluous '*' in the definition of kprobe_decode_insn_t
which on older versions of GCC (4.2.4) causes the compilation error:

In file included from arch/arm/probes/kprobes/core.c:37:
arch/arm/probes/kprobes/core.h:43: error: '[*]' not allowed in other than a declaration

Fix this by removing the unneeded character.

Reported-by: Janusz Użycki <j.uzycki@elproma.com.pl>
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2015-02-10 15:05:30 +08:00
Linus Torvalds
23e8fe2e16 Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull RCU updates from Ingo Molnar:
 "The main RCU changes in this cycle are:

   - Documentation updates.

   - Miscellaneous fixes.

   - Preemptible-RCU fixes, including fixing an old bug in the
     interaction of RCU priority boosting and CPU hotplug.

   - SRCU updates.

   - RCU CPU stall-warning updates.

   - RCU torture-test updates"

* 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (54 commits)
  rcu: Initialize tiny RCU stall-warning timeouts at boot
  rcu: Fix RCU CPU stall detection in tiny implementation
  rcu: Add GP-kthread-starvation checks to CPU stall warnings
  rcu: Make cond_resched_rcu_qs() apply to normal RCU flavors
  rcu: Optionally run grace-period kthreads at real-time priority
  ksoftirqd: Use new cond_resched_rcu_qs() function
  ksoftirqd: Enable IRQs and call cond_resched() before poking RCU
  rcutorture: Add more diagnostics in rcu_barrier() test failure case
  torture: Flag console.log file to prevent holdovers from earlier runs
  torture: Add "-enable-kvm -soundhw pcspk" to qemu command line
  rcutorture: Handle different mpstat versions
  rcutorture: Check from beginning to end of grace period
  rcu: Remove redundant rcu_batches_completed() declaration
  rcutorture: Drop rcu_torture_completed() and friends
  rcu: Provide rcu_batches_completed_sched() for TINY_RCU
  rcutorture: Use unsigned for Reader Batch computations
  rcutorture: Make build-output parsing correctly flag RCU's warnings
  rcu: Make _batches_completed() functions return unsigned long
  rcutorture: Issue warnings on close calls due to Reader Batch blows
  documentation: Fix smp typo in memory-barriers.txt
  ...
2015-02-09 14:28:42 -08:00
Mark Brown
ddaaeee0e5 Merge remote-tracking branches 'asoc/topic/rt5670', 'asoc/topic/rt5677', 'asoc/topic/rx51', 'asoc/topic/samsung' and 'asoc/topic/sh' into asoc-next 2015-02-09 15:10:26 +08:00
Mark Brown
0cee4db21e Merge remote-tracking branches 'asoc/fix/ac97', 'asoc/fix/atmel', 'asoc/fix/intel', 'asoc/fix/rt286', 'asoc/fix/rt5640', 'asoc/fix/samsung', 'asoc/fix/sgtl5000', 'asoc/fix/sta32x', 'asoc/fix/tlv320aic3x' and 'asoc/fix/wm8731' into asoc-linus 2015-02-09 15:09:49 +08:00
Sylwester Nawrocki
16696337ca ARM: dts: Switch Odroid X2/U2 to simple-audio-card
Now when the CDCLK I2S output clock can be handled through the clock
API the Odroid X2/U3 can be switched to the simple-audio-card DT binding.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2015-02-09 14:18:20 +08:00
Sylwester Nawrocki
3635acef7c ARM: dts: Exynos4 and Odroid X2/U3 sound device nodes update
Clock related properties are added to the Exynos4 I2S device nodes
so they can be referred to as clock providers. Missing i2s_opclk1
clock is added to the I2S0 node and clock properties are added
to the MAX98090 codec node to allow it to control/read frequency
of the MCLK clock directly.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2015-02-09 14:18:20 +08:00
Linus Torvalds
2af613d373 sound fixes for 3.19
Hopefully the final pull request for 3.19: this ended up with a
 slightly higher volume than wished, but I put them all as they are
 either stable or 3.19 regression fixes.
 
 Most of commits are from ASoC, and have been stewed for a while in
 linux-next.  The only change in the common code is the regression
 fixes for ASoC AC97 stuff wrt device registrations.  The rest are
 device-specific, mostly small fixes in various ASoC drivers and
 ak411x on ice1724 boards.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJU1IACAAoJEGwxgFQ9KSmk3doP/AvQw++5VviePzYisnwWqiVF
 zZ4hLTHXKyVTz00Lvhuf31Xnv7MUBQ1m8ww+b6jaUWKd1ZZRshITzIhYtP8HHE5k
 LEDPuY1UeHiu0syidEVTCLZ1kXlNxKZ0F8da0rSl6/yN35l1lmiscPV0bpxXOsZH
 wxo8HItzkB8Jl6KrvjX5Ftlu30no6qw475Ud0DmIXLzE9l2J5pcV/TYLiyLrKV1M
 VnPvBFx5eCyIe2c9+V+29auQ2pdMmdqod66pnFDPSFPtGUF1cX/UuULRParEQWys
 iMG/zMBBIa5H+7HP9DT4hjipZSuFyWM9nNx+l1Hlwr5GoaK/Q0wyunULjLtuE4x5
 ScWA89D6okYpwJsiV6VNuzhk8qe7UUzUU/8CT8rtr8vbyJrFmGm9g7a3wmfPz2LV
 GNFApYkz5q4eHViqiXE15k8obJRgQH/bXjlhGtZMFSDx1RFgbacZTxsIjlSO6krG
 Wwt2mRMLQ/du2T1lIXcRYB6EwxxHFDdy3Yp8VzY3Yrf4Wg7Exyb3V2YrxtCDuONI
 4DADJNk4xWII6ApniF94PTjiOkyX1juLvuQKAhVz/scteCOmAZbGaV7fNs4unwhn
 nD2unzH+0EcOe77Ej/QS5I7X85R6k3aAQzhZdlQVQ46TdrlFBCvmMMhGJL8EtdXF
 IeOnw/QI7KVo3mSE7XyS
 =JNb4
 -----END PGP SIGNATURE-----

Merge tag 'sound-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
 "Hopefully the final pull request for 3.19: this ended up with a
  slightly higher volume than wished, but I put them all as they are
  either stable or 3.19 regression fixes.

  Most of commits are from ASoC, and have been stewed for a while in
  linux-next.  The only change in the common code is the regression
  fixes for ASoC AC97 stuff wrt device registrations.  The rest are
  device-specific, mostly small fixes in various ASoC drivers and ak411x
  on ice1724 boards"

* tag 'sound-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ASoC: Intel: fix sst firmware path for cht-bsw-rt5672
  ARM: dts: Fix I2S1, I2S2 compatible for exynos4 SoCs
  ASoC: sgtl5000: add delay before first I2C access
  MAINTAINERS: ASoC: add maintainer for Intel BDW/HSW ASoC driver
  ASoC: atmel_ssc_dai: fix the setting for DSP mode
  ASoC: sgtl5000: Use shift mask when setting codec mode
  ASoC: tlv320aic3x: Fix data delay configuration
  ALSA: ak411x: Fix stall in work callback
  ASoC: Intel: Used lock version to update shim registers
  ASoC: wm8731: init mutex in i2c init path
  ASoC: atmel_ssc_dai: fix start event for I2S mode
  ASoC: rt5640: Add RT5642 ACPI ID for Intel Baytrail
  ASoC: wm97xx: Reset AC'97 device before registering it
  ASoC: Add support for allocating AC'97 device before registering it
2015-02-06 12:50:37 -08:00
Arnd Bergmann
1d88967900 ARM: 8297/1: cache-l2x0: optimize aurora range operations
The aurora_inv_range(), aurora_clean_range() and aurora_flush_range()
functions are highly redundant, both in source and in object code, and
they are harder to understand than necessary.

By moving the range loop into the aurora_pa_range() function, they
become trivial wrappers, and the object code start looking like what
one would expect for an optimal implementation.

Further optimization may be possible by using the per-CPU "virtual"
registers to avoid the spinlocks in most cases.

 (on Armada 370 RD and Armada XP GP, boot tested, plus a little bit of
 DMA traffic by reading data from a SD card)

Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-02-06 20:16:40 +00:00
Arnd Bergmann
20e783e39e ARM: 8296/1: cache-l2x0: clean up aurora cache handling
The aurora cache controller is the only remaining user of a couple
of functions in this file and are completely unused when that is
disabled, leading to build warnings:

arch/arm/mm/cache-l2x0.c:167:13: warning: 'l2x0_cache_sync' defined but not used [-Wunused-function]
arch/arm/mm/cache-l2x0.c:184:13: warning: 'l2x0_flush_all' defined but not used [-Wunused-function]
arch/arm/mm/cache-l2x0.c:194:13: warning: 'l2x0_disable' defined but not used [-Wunused-function]

With the knowledge that the code is now aurora-specific, we can
simplify it noticeably:

- The pl310 errata workarounds are not needed on aurora and can be removed
- As confirmed by Thomas Petazzoni from the data sheet, the cache_wait()
  macro is never needed.
- No need to hold the lock across atomic cache sync
- We can load the l2x0_base into a local variable across operations

There should be no functional change in this patch, but readability
and the generated object code improves, along with avoiding the
warnings.

 (on Armada 370 RD and Armada XP GP, boot tested, plus a little bit of
 DMA traffic by reading data from a SD card)

Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-02-06 20:16:39 +00:00
Paolo Bonzini
f781951299 kvm: add halt_poll_ns module parameter
This patch introduces a new module parameter for the KVM module; when it
is present, KVM attempts a bit of polling on every HLT before scheduling
itself out via kvm_vcpu_block.

This parameter helps a lot for latency-bound workloads---in particular
I tested it with O_DSYNC writes with a battery-backed disk in the host.
In this case, writes are fast (because the data doesn't have to go all
the way to the platters) but they cannot be merged by either the host or
the guest.  KVM's performance here is usually around 30% of bare metal,
or 50% if you use cache=directsync or cache=writethrough (these
parameters avoid that the guest sends pointless flush requests, and
at the same time they are not slow because of the battery-backed cache).
The bad performance happens because on every halt the host CPU decides
to halt itself too.  When the interrupt comes, the vCPU thread is then
migrated to a new physical CPU, and in general the latency is horrible
because the vCPU thread has to be scheduled back in.

With this patch performance reaches 60-65% of bare metal and, more
important, 99% of what you get if you use idle=poll in the guest.  This
means that the tunable gets rid of this particular bottleneck, and more
work can be done to improve performance in the kernel or QEMU.

Of course there is some price to pay; every time an otherwise idle vCPUs
is interrupted by an interrupt, it will poll unnecessarily and thus
impose a little load on the host.  The above results were obtained with
a mostly random value of the parameter (500000), and the load was around
1.5-2.5% CPU usage on one of the host's core for each idle guest vCPU.

The patch also adds a new stat, /sys/kernel/debug/kvm/halt_successful_poll,
that can be used to tune the parameter.  It counts how many HLT
instructions received an interrupt during the polling period; each
successful poll avoids that Linux schedules the VCPU thread out and back
in, and may also avoid a likely trip to C1 and back for the physical CPU.

While the VM is idle, a Linux 4 VCPU VM halts around 10 times per second.
Of these halts, almost all are failed polls.  During the benchmark,
instead, basically all halts end within the polling period, except a more
or less constant stream of 50 per second coming from vCPUs that are not
running the benchmark.  The wasted time is thus very low.  Things may
be slightly different for Windows VMs, which have a ~10 ms timer tick.

The effect is also visible on Marcelo's recently-introduced latency
test for the TSC deadline timer.  Though of course a non-RT kernel has
awful latency bounds, the latency of the timer is around 8000-10000 clock
cycles compared to 20000-120000 without setting halt_poll_ns.  For the TSC
deadline timer, thus, the effect is both a smaller average latency and
a smaller variance.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-02-06 13:08:37 +01:00
Olof Johansson
6f4554bdff Samsung CPUIdle updates for v3.20
- adds coupled cpuidle support for exynos4210
   : fix for Exynos platform PM code preparing it for the coupled
   cpuidle support and adds coupled cpuidle AFTR mode on exynos4210
 
 Note this is mostrly based on earlier cpuidle-exynos4210 driver
 from Daniel Lezcano and Bart updated.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJU0ikrAAoJEA0Cl+kVi2xqLoUQAI2JZi6XyeyJ+0YNGn+TpGEp
 OBMks8hVyUXDIk+juuijRLh1MTzOkguMNKjS8y84IHpM8SvVUiPzh/b4pPBr7i14
 c6zaocm17HePZwF9tR5VwLAAiyV+0f9rRgUUBSaVTyc5/tMFJES6iuNVzPwa7fqf
 5u7YjAuV1N349NC8148wvvrg/ICktpdCydYmfOfOTsjgVNwiyd4kF3ofC7Xt9MrN
 fNgdl+OQZxOIWFKkBw3p3+exWybgjd9GE5K9kuASmGWrIOXjRO4KxO/UqRBNJIhH
 bVjnkEq88kczf4Z999YHO33fMaMC3y/h++luRgkzxOZge0KVbqusikq+dCc5je3D
 k/TPn0tnc8A2nbbcvziuXOe/EhudqXWD+QZXhRcmUAeRFDA1DNsEfSHzujD1fbyn
 TA9+RjLodCv2LT5wQq/EHs5yiAYChiUz/TGOBwhHzMUNvXKs3cSBtATabXgWrCtd
 pYtI+o1FYekccafF1bUWMIR6BDHxAOb41FDQVZYzi7+ez5yHHYEwZGqPXLmY3x/f
 8Nvyy2PgOouB5cHSxn9r0wtMM0nATWB1WNUIf3cPRCHZKpxpHOhrH4CEDsQG02FS
 qhs8QARvDA2pCV+m9hFFKDt/VNMpzHnw6uC0XWlICrDk9sHPzwXVuB1MHcjr/n6w
 wJhgNOVyfTEnIDQi2mGt
 =nadx
 -----END PGP SIGNATURE-----

Merge tag 'samsung-cpuidle' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/drivers

Merge "Samsung CPUIdle updates for v3.20" from Kukjin Kim:

- adds coupled cpuidle support for exynos4210
  : fix for Exynos platform PM code preparing it for the coupled
  cpuidle support and adds coupled cpuidle AFTR mode on exynos4210

Note this is mostrly based on earlier cpuidle-exynos4210 driver
from Daniel Lezcano and Bart updated.

* tag 'samsung-cpuidle' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  cpuidle: exynos: add coupled cpuidle support for exynos4210
  ARM: EXYNOS: apply S5P_CENTRAL_SEQ_OPTION fix only when necessary

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 01:07:33 -08:00
Olof Johansson
880c0d140d Samsung 4th DT updates for v3.20
- For exynos4 SoCs
   : add PPMU node
   : add syscon phandle for video-phy node
 
 - For exynos4415 SoC
   : add mipi dsi and fimd device nodes
 
 - For exynos3250-monk and exynos3250-rinato boards
   : add PPMU node
 
 - For exynos4412-trats2 board
   : add maxim77693 fuel gauge and battery charger nodes
   : fix regarding CLK_MOUT_CAMn parent and CLK_UART_ISP_SCLK clocks
   : switch max77686 regulators to GPIO control
   : add suspend configuration for max77686 regulators
   : add PPMU node and sound nodes
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJU0iWQAAoJEA0Cl+kVi2xq4mEQAIB9QNNzxuc+oPIHibYzjlaD
 AZ+iJLtjbLBMxH05XgdnTtlSJPVbTlhRfypozSi7Nqb1jYyI4CMob4wCLshx4P8X
 Ymyqpdui5i4E2dTnM2hgIBq8NJRTvPcsahNXpyBjKCJ1QM7qNkvWn02UsAeQ+7f6
 n76ZUk4Do942aTy0yC9yvG6/GMW2Lfk27Ho4RvckHOIhy5aXiqB7qy+KFTZMpsiu
 Jwi8teKOZCHiXMyxYLTmdBxSJ5kdHvRwr+pSBAteihQsVFlum19aPln4tXWuQKCW
 /y864mFieUQlxzu2+juoa+ddbjqaQh3LVGRGlQk+VuDA2rPSbsjN8KSTAOpaApc6
 NLQkPx0h5Op6/8RrkLZl6qbMbkvBLhimx1uPstT5jPPPTdWVc+w92yWXiVGAyVNh
 vUzJ1FJMIvIpWUveBcl3wCu/3nBoXgwV20Pz67ddqkLBrRaqBEiZyeF0g2LXa50/
 jAmG/uzve01zI+ynFNLHN6rxfH0SW5vRFF1kqKF/eTmNSH9FPfQ6EK2f6cnE/Y5e
 OpcS0rac2T/YjSnsjF3F/YG4T99k6TaQnpqnymsLlpNS7L2wsCXllht+a16wc5dk
 tJ/o79sGiz5X1hCV3UbVlaJiFICwx6o4CVnnvyKKImnvmZE+SgV+QqDi+0BP05nA
 3AD3X2m6x5QKeCO8TQl3
 =Avge
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt

Merge "Samsung 4th DT updates for v3.20" from Kukjin Kim:

- For exynos4 SoCs
  : add PPMU node
  : add syscon phandle for video-phy node

- For exynos4415 SoC
  : add mipi dsi and fimd device nodes

- For exynos3250-monk and exynos3250-rinato boards
  : add PPMU node

- For exynos4412-trats2 board
  : add maxim77693 fuel gauge and battery charger nodes
  : fix regarding CLK_MOUT_CAMn parent and CLK_UART_ISP_SCLK clocks
  : switch max77686 regulators to GPIO control
  : add suspend configuration for max77686 regulators
  : add PPMU node and sound nodes

* tag 'samsung-dt-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: dts: Add PPMU node for exynos4412-trats2
  ARM: dts: Add PPMU node for exynos3250-monk and exynos3250-rinato
  ARM: dts: Add PPMU dt node for exynos4 and exynos4210
  ARM: dts: Add PPMU dt node for exynos3250
  ARM: dts: add mipi dsi device node for exynos4415
  ARM: dts: add fimd device node for exynos4415
  ARM: dts: Add syscon phandle to the video-phy node for Exynos4
  ARM: dts: Add sound nodes for exynos4412-trats2
  ARM: dts: Fix CLK_MOUT_CAMn parent clocks assignment for exynos4412-trats2
  ARM: dts: Fix CLK_UART_ISP_SCLK clock assignment in exynos4x12.dtsi
  ARM: dts: Add max77693 charger node for exynos4412-trats2
  ARM: dts: Switch max77686 regulators to GPIO control for exynos4412-trats2
  ARM: dts: Add suspend configuration for max77686 regulators for exynos4412-trats2
  ARM: dts: Add Maxim 77693 fuel gauge node for exynos4412-trats2

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 01:05:12 -08:00
Olof Johansson
0f01f9588d Samsung exynos_defconfig updates for v3.20
- Enable CONFIG_LOCKUP_DETECTOR
   : to detect hard lockup and soft lockup
 - Enable PMIC and MUIC
   : for battery charger, fuel-gauge, regulators
 - Enable CONFIG_FHANDLE
   : this is required by systemd
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJU0iaiAAoJEA0Cl+kVi2xqq/cP/AjNF5DHQTeTYrx7NH2BULcr
 PguG+fu/E2rJrguWZTNTSncnRwKk2LOa1xiqsOE3berMO6Ndya/K1yIkaZQ/owpk
 38chPOQ53Yu8+liTwyqNt+mj7xOcoEiDNysox7o2cPAHw+p8l5rAgJIuOetPx1QC
 +CxYjGUYWdtZNpz77YOW6CldubSN6GnUKHX0+3oygU5DDOF0T08++8SyHvBu+4+d
 yHHTW73Mf6I3zXxsTUZNYJAwSqZBnfCL0WxAKXK2272L9Co5yriF1ZDgAVgNHtm2
 DFAp34iuX5G43I6C9lWntuIl1zAtFAaYvCmVQHp2LftL37rHsEcOzjGBWp81Gnie
 oi4oBFMU97qW3xA9yWNDFu7TqeRSfpwTXPI02kF0IVCs6+nLl3cgFcSD+YblnAbk
 cjNFQeugrcfOKooVElOSEZWaHmqOM6raUjajdnmc7B37SM8DllDQJjyVOtixycxd
 7hFMqgY9b4YLpV9jHCbiHmY+IT5w9OxFdWYI+KCfE9JOU7EtHsLcksc8rrYdx4rB
 YKxn1Uy291iFIxI5Fkv12kewUblQyvmmIlPdi+qMx/fZBYHzDqYUjqon66BHdDUb
 B5fF1fMjZ+lheTlavP5QU8cnVRjeZ0/K9xFePYrLxUIJIhMnW0XdDavRHmOxFhBa
 LwKH52AQ/CS/hY5q2WXE
 =U36t
 -----END PGP SIGNATURE-----

Merge tag 'samsung-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/defconfig

Merge "Samsung exynos_defconfig updates for v3.20" from Kukjin Kim:

- Enable CONFIG_LOCKUP_DETECTOR
  : to detect hard lockup and soft lockup
- Enable PMIC and MUIC
  : for battery charger, fuel-gauge, regulators
- Enable CONFIG_FHANDLE
  : this is required by systemd

* tag 'samsung-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: exynos_defconfig: Enable CONFIG_FHANDLE
  ARM: exynos_defconfig: Enable PMIC and MUIC drivers for Gears and Trats2
  ARM: exynos_defconfig: Enable CONFIG_LOCKUP_DETECTOR
  ARM: exynos_defconfig: Enable LM90 driver

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:48:41 -08:00
Olof Johansson
f5ebaf2687 Relicense all Armada dts{i} files under dual license of GPLv2+ and
X11. This should make it easier to reuse these files with other
 operating systems and boot loaders.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABCAAGBQJUxuxOAAoJEOa/DcumaUyEShgP/3kdxUxjKFDxLuerOCbvUQ5p
 raAXsnysEij0x0yrQcIGRKLRN/OyQ/mZYcGJIAo6f15OuUKs+q7zoFW47kKMCoHY
 mDNp2bHC8j2LDp2QE7Ylib6xE1ttQFxRtABzLdem6yxuQHniHa+tkM7i6Kbil9Lk
 v764iOu3BAlLBKK7IEtoGeywWmhJ3mQ9IX8Tp5i91G0JW5GG7gpfrxg2RyzbBRg6
 75c3inm7nDpqQw6vBraJRLpPOD6TYTskWVPuEFiCoXJbOEBShgsE2q1RXEaJml71
 lajF7abfWpsmqhv5MsCPXBYJvC4MnHM7mDdE3OMr7/sjAYUHqnssFafS/o7B9eHW
 MpU/b8RBVzFlzs9PQ8WPcnOOomvgsKmuVTVTfzmdgnZDD75SMzNaZNDxYY9pISoZ
 UYelj7iKITr8fWuUkslf/ywuhCQjzs27sqM947Izpj3n71X2+UsxnwL1JvAv4vmh
 754I50Wo++RbbhKzm0HpkyzlGETeL97GdlCSBhWlU5nMFuUqzkSNPrSg7G9FbbpQ
 FrzTiQReBw8xe3YOrkQqSvGBZmv/KkNxIUYlqjkaDU0ni1ghjL2jzzv9J1wFvzpa
 yX+RFbYTj2t+foCROnsS/e4UBIwVjTpB5m96y2I+GiDRQO81ZAGote37TGCn3/6d
 kuDhIBUHqNE1PyZ5IziG
 =gJhY
 -----END PGP SIGNATURE-----

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

Merge "ARM: mvebu: DT changes for v3.20 (round 2)" from Gregory CLEMENT:

Relicense all Armada dts{i} files under dual license of GPLv2+ and
X11. This should make it easier to reuse these files with other
operating systems and boot loaders.

* tag 'mvebu-dt-3.20-3' of git://git.infradead.org/linux-mvebu: (27 commits)
  ARM: mvebu: armada-xp-synology-ds414: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-openblocks-ax3-4: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-netgear-rn2120: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-mv78460: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-mv78260: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-mv78230: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-matrix: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-lenovo-ix4-300d: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-gp: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-db: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-xp-axpwifiap: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-38x: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-388-rd: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-385: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-388-db: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-380: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-375: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-375-db: Relicense the device tree under GPLv2+/X11
  ARM: mvebu: armada-370-xp: Relicense the device tree under GPLv2+/X11
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:32:49 -08:00
Barry Song
41e229a912 ARM: sirf: drop redundant function and marco declaration
with the patchset to add CSR atlas7 support, the below stuff
has no user now:
SIRFSOC_VA
sirfsoc_map_lluart
sirfsoc_map_scu

the related patches missed to drop them.

Signed-off-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:31:58 -08:00
Olof Johansson
43018fc5ac Keystone DEVTMPFS config update for 3.20
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUz9bRAAoJEHJsHOdBp5c/JPYP/1Emgs78roHhzQOSbLOCFvhB
 RdualNAEhu8VdrXOqIx23SVDCxOQL+7kyRuhydf6jCSJwAurZW2jYO+94AXKhjY1
 L+MANqCyYQAtEp22HfwvthUOVeWsfZ+WpSj+tYvqKDHLhNTjwLqKUiyOrvPt9Wwj
 X9AeyEMGXdB2doiHTmyp3ywTICJxFWEiZn6dmogKIy1tyV5sheGPHYuy7j7gEEOH
 EIWoaDHbHT1AIrtMzX2Nzr8nOAGWzB86DqZ98XKy+Hd/tOX2+RKT9zVsSoeKtwI/
 sZeMALTY7uz/8nOEaJI3B/Uvg0DLrIXrwXYBQf1arSm3KI+tLTiVSyTk65jERwdm
 M2JaVuuLfMOP5e/4rPouXtGXJ9sPVS+qm/Rgdc2AnzJvv5/ycl6tiwLPmGNrzl6Y
 DGcXTU+13yZIh6jVJxUSmD49Cv1K1omCJm2a8AIm/aWrTQ54zeFnKVrKI7icgaK7
 t0g9elWbI87GMvvrIN6CgcPIR/IQa5u1t0maFDmGduTMXpWNLiV4GQoXrMcJanYh
 hzMD2HUsxvN7C/0zeo3FitBZlporchCBs9RJ9e2aHart36U16LqeTk1pbctVIydC
 khJ/He1xqGxt102Nj1RviNzQHn4xc5wqJHwKMVHAJdynMcKcqQcjF38Vigsk4yqZ
 a16cDnEXw0NSz8XCd2l7
 =YwxH
 -----END PGP SIGNATURE-----

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

Merge "ARM: Keystone soc config updates for 3.20" from Santosh Shilimkar:

Keystone DEVTMPFS config update for 3.20

* tag 'keystone-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: config: add DEVTMPFS option by default to keystone config

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:27:34 -08:00
Mark Rutland
279806bfca arm: omap: specify PMUs are for ARMv7 CPUs
Now that we can specify which PMU variant we're likely to deal with, do
so in the omap board code. This will allow us to split the ARMv6, ARMv7,
and XScale PMU drivers.

The unnecessary include of asm/pmu.h is also removed.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Olof Johansson <olof@lixom.net>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:13:06 -08:00
Mark Rutland
744503b35a arm: shmobile: specify PMUs are for ARMv7 CPUs
Now that we can specify which PMU variant we're likely to deal with, do
so in the shmobile board code. This will allow us to split the ARMv6,
ARMv7, and XScale PMU drivers

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Tested-by: Simon Horman <horms+renesas@verge.net.au>
Acked-by: Simon Horman <horms+renesas@verge.net.au>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Magnus Damm <magnus.damm@gmail.com>
Cc: Olof Johansson <olof@lixom.net>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:13:01 -08:00
Mark Rutland
b22a75cf9d arm: iop: specify PMUs are for XScale CPUs
Now that we can specify which PMU variant we're likely to deal with, do
so in the iop board code. This will allow us to split the ARMv6, ARMv7,
and XScale PMU drivers.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Olof Johansson <olof@lixom.net>
Cc: Russell King <linux@arm.linux.org.uk>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:12:59 -08:00
Mark Rutland
f9eff21976 arm: pxa: specify PMUs are for XScale CPUs
Now that we can specify which PMU variant we're likely to deal with, do
so in the pxa board code. This will allow us to split the ARMv6, ARMv7,
and XScale PMU drivers.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Daniel Mack <daniel@zonque.org>
Cc: Haojian Zhuang <haojian.zhuang@gmail.com>
Cc: Olof Johansson <olof@lixom.net>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:12:57 -08:00
Mark Rutland
cbed8388bf arm: realview: specify PMU types
Now that we can specify which PMU variant we're likely to deal with, do
so in the realview board code. This will allow us to split the ARMv6,
ARMv7, and XScale PMU drivers.

The Realview EB may be used with ARMv6 or ARMv7 CPUs, but luckily
there's only a single ARMv7 CPU, so we can match that explicitly to
determine whether or not we have an ARMv7 PMU.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Olof Johansson <olof@lixom.net>
Cc: Russell King <linux@arm.linux.org.uk>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:12:55 -08:00
Olof Johansson
f9e297660b Device tree related chages for omaps to fix dm816x syscon,
fix various devices for gta04, and add USB nodes for am57xx
 and dra7.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUzBh/AAoJEBvUPslcq6Vz/M0QAK6mnBJJsm2BzBN1fXNRdnaP
 DDpa4kr9YIUCUjIaQrpj2olAt9DG6UO2oKSGM5v9hCB3F5kQDXD0X+Zn2huniGIy
 t/3JuZwU6aSGog/vxA7JIqzkfaKcGsTRUaV/81RE61cswguuvbDmCydV12p/VM2f
 P10AwOFXi9AUSHch/sB0k4c7r3J6subgX25GmzGKniEb7K0gVn/m1YDMETe3Wwsp
 bG3q/pqjKY35EuM/tvwXXYUll2vTSlv01rxWvzEWYPCSG1Fh/aPnNrHUjZW8o/yS
 fq4+LOezpLANAZDWYVYSDCfY6AVc0xpDGaGRxkx7f4LUBHcv34qYgpks424wZjSt
 sOFwyrNv0Z06nA1JSZVHKV5g06v1fAV63/WBTa+Dvn+MWwKQyAjme/ZX8wxnK/l0
 NPe72/O1WUqz7IWeSu0PicpnNTMvJGE6KypHrPUTAYmJoObEDwAogt6zP4K32eo3
 VlyuBgZrihjBkqQ4QPHBJrh4nY5wfhYTPb6P8t76i+Cm0V9NlGgjnEfPy2KXV2W4
 s4B8Zk9iBiuJGLfapUAuv6AMTIxcQuVpLO148a5T3TzPDPc6OZ3/OgQrkPyHGanO
 /WAvPkqKnnM0TXpHBc7OzNiAKhEaaVhcZ/OIxyZyIaZfaKhjOpYPi4UjimUkjjO1
 7ppHnPqot4adrTRxfl26
 =sRWN
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.20/dt-pt3-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

Merge "omap device tree changes for v3.20, part 3" from Tony Lindgren:

Device tree related chages for omaps to fix dm816x syscon,
fix various devices for gta04, and add USB nodes for am57xx
and dra7.

* tag 'omap-for-v3.20/dt-pt3-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: am57xx-beagle-x15: Fix USB2 mode
  ARM: dts: am57xx-beagle-x15: Add extcon nodes for USB
  ARM: dts: dra72-evm: Add extcon nodes for USB
  ARM: dts: dra7-evm: Add extcon nodes for USB
  ARM: dts: Fix dm816x pinctrl and syscon so they are children of SCM
  ARM: dts: omap3-gta04: Disable keypad
  ARM: dts: omap3-gta04: only power DSS when necessary.
  ARM: dts: omap3-gta04: add gyroscope
  ARM: dts: omap3-gta04: enable power-off for wifi card.
  ARM: dts: omap3-gta04: add comments about gpios
  ARM: dts: omap3-gta04: Add ramp value for twl4030 audio
  ARM: dts: omap3-gta04: Enable power-off using twl4030
  ARM: dts: omap3-gta04: Fix a GPIO line for bma180 node
  ARM: dts: omap3-gta04: Enable twl audio vibra support
  ARM: dts: omap3-gta04: Enable mcbps2 necessary for audio
  ARM: dts: omap3-gta04: Fix audio node malformatting
  ARM: dts: omap3-gta04: Fix backup-battery charging in devicetree file.

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:09:16 -08:00
Olof Johansson
6f8c8f6baf Change are regulator nodes for the cpu and gpu regulators on the act8846
variant of the rk3288-evb and the setting of a clock for the watchdog.
 Also the lcd and hdmi controllers on both the firefly and the evb get
 enabled and let us now boot into fbcon console sucessfully.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABCAAGBQJUy+f+AAoJEPOmecmc0R2BdFcH/i+9hgt9ElJxKbpPPVPVv81O
 QzmIi3g+B4WqAoKBfzkug5l82mSZ4FAvmQK5ad8BYHsBaGl+GRjwwaqRqZkPUOzl
 umXk0GneZ5sPK+S1UdA/S/v7hTwgEpXOLnGUCGUXbLt7Gqda99ume08jgCe2JbH5
 Tfjoia5uRlOgdZIf3KBr4TkPR+LHog1i/DI9N3XrAsjLtj/igHpoRmFydBmv7noo
 OuRuPY0afg1jKs/MextjM0W1JzQbGyv4Jp4NjVFv60+KZrMgS64vTDZamxYEK4Sv
 wn0pQUZgevQhd3ewdLtqrcbo4wIGiLWBXQK0vzonmo5tCk8r+59QFKxeMiq2C7Q=
 =ZVrD
 -----END PGP SIGNATURE-----

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

Merge "ARM: rockchip: third (and last) batch of dts updates for 3.20" from
Heiko Stübner:

Change are regulator nodes for the cpu and gpu regulators on the act8846
variant of the rk3288-evb and the setting of a clock for the watchdog.
Also the lcd and hdmi controllers on both the firefly and the evb get
enabled and let us now boot into fbcon console sucessfully.

* tag 'v3.20-rockchip-dts3' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: move the hdmi ddc-i2c-bus property to the actual boards
  ARM: dts: rockchip: enable vops and hdmi output on rk3288-firefly and -evb
  ARM: dts: rockchip: housekeeping off i2c0 on rk3288-evb boards
  ARM: dts: rockchip: add cpu and gpu regulators to rk3288-evb-act8846
  ARM: dts: rockchip: add rk3288 watchdog clock
  clk: rockchip: add id for watchdog pclk on rk3288
  clk: rockchip: add clock IDs for the PVTM clocks
  clk: rockchip: add clock ID for usbphy480m_src

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-06 00:03:28 -08:00
Olof Johansson
df1a668125 Fourth cleanup/soc batch for 3.20:
- merge all the at91sam9 code and remove the empty SoC-specific files
 - remove the at91_boot_soc that is now useless in a DT context
 - move the sram code in PM code as it's now only used there
 - some file + function name changes after this big cleanup
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUz8xZAAoJEAf03oE53VmQMXsH/20+t69ZaB7HHVkyJpqtHs4e
 ilGPL+hSxofFjzfdvr1baHyUI6Jdu4pUHxBOBw8IY0PF87cbVhdn8JcD9eb5nnBD
 Z/ekKwZFnKXOyfQaRC1CHad7T+u6wa2uY+4LOC92JZipglltBVBPrm9wjfPIkii7
 R13AeXNi4a3DiOXhsAevbeLNeKF/X7L52RfVPttJwfih9B1YpSmetkMjE+mpk9D9
 P1JGhgTJyojhU2AacaRA3ECut8gWqBBN/FcswAZd5POxcBbNkDlZwCgXTGf3JXEt
 deVd8Sud/bCbzbxhHMGDvGmMluLpBCoxmy0ArDRewauDv6K4AbnO1p29Ad9Vs/U=
 =ESBq
 -----END PGP SIGNATURE-----

Merge tag 'at91-soc4' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91 into next/soc

Merge "at91: cleanup/soc for 3.20 #4" from Nicolas Ferre:

Fourth cleanup/soc batch for 3.20:
- merge all the at91sam9 code and remove the empty SoC-specific files
- remove the at91_boot_soc that is now useless in a DT context
- move the sram code in PM code as it's now only used there
- some file + function name changes after this big cleanup

* tag 'at91-soc4' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91:
  ARM: at91/trivial: unify functions and machine names
  ARM: at91: remove at91_dt_initialize and machine init_early()
  ARM: at91: change board files into SoC files
  ARM: at91: remove at91_boot_soc
  ARM: at91: move alternative initial mapping to board-dt-sama5.c
  ARM: at91: merge all SOC_AT91SAM9xxx
  ARM: at91: at91rm9200: set idle and restart from rm9200_dt_device_init()
  ARM: at91: board-dt-sama5: add phy_fixup to override NAND_Tree
  ARM: at91/dt: sam9263: Add missing clocks to lcdc node
  ARM: at91: sama5d3: dt: correct the sound route
  ARM: at91/dt: sama5d4: fix the timer reg length

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-05 23:58:29 -08:00
David S. Miller
6e03f896b5 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
	drivers/net/vxlan.c
	drivers/vhost/net.c
	include/linux/if_vlan.h
	net/core/dev.c

The net/core/dev.c conflict was the overlap of one commit marking an
existing function static whilst another was adding a new function.

In the include/linux/if_vlan.h case, the type used for a local
variable was changed in 'net', whereas the function got rewritten
to fix a stacked vlan bug in 'net-next'.

In drivers/vhost/net.c, Al Viro's iov_iter conversions in 'net-next'
overlapped with an endainness fix for VHOST 1.0 in 'net'.

In drivers/net/vxlan.c, vxlan_find_vni() added a 'flags' parameter
in 'net-next' whereas in 'net' there was a bug fix to pass in the
correct network namespace pointer in calls to this function.

Signed-off-by: David S. Miller <davem@davemloft.net>
2015-02-05 14:33:28 -08:00
Mark Brown
c503ca52a5 Merge remote-tracking branch 'asoc/fix/samsung' into asoc-linus 2015-02-05 19:36:29 +00:00
Sylwester Nawrocki
fddcd30073 ARM: dts: Fix I2S1, I2S2 compatible for exynos4 SoCs
I2S1, I2S2 on Exynos4 SoC series have limited functionality compared
to I2S0, "samsung,s3c6410-i2s" compatible should be used for them.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
2015-02-05 19:36:00 +00:00
Jiang Liu
14d76b68f2 PCI: Use common resource list management code instead of private implementation
Use common resource list management data structure and interfaces
instead of private implementation.

Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2015-02-05 15:09:25 +01:00
Andy Shevchenko
d8ded50f8b dmaengine: dw: define DW_DMA_MAX_NR_MASTERS
Instead of using magic number in the code the patch provides
DW_DMA_MAX_NR_MASTERS constant.

While here, restrict the reading of data width array by amount of the actual
number of AHB masters.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
2015-02-04 22:39:44 -08:00
Linus Torvalds
5659c0e470 Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm
Pull ARM fixes from Russell King:
 "A number of ARM fixes, the biggest is fixing a regression caused by
  appended DT blobs exceeding 64K, causing the decompressor fixup code
  to fail to patch the DT blob.  Another important fix is for the ASID
  allocator from Will Deacon which prevents some rare crashes seen on
  some systems.  Lastly, there's a build fix for v7M systems when printk
  support is disabled.

  The last two remaining fixes are more cosmetic - the IOMMU one
  prevents an annoying harmless warning message, and we disable the
  kernel strict memory permissions on non-MMU which can't support it
  anyway"

* 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
  ARM: 8299/1: mm: ensure local active ASID is marked as allocated on rollover
  ARM: 8298/1: ARM_KERNMEM_PERMS only works with MMU enabled
  ARM: 8295/1: fix v7M build for !CONFIG_PRINTK
  ARM: 8294/1: ATAG_DTB_COMPAT: remove the DT workspace's hardcoded 64KB size
  ARM: 8288/1: dma-mapping: don't detach devices without an IOMMU during teardown
2015-02-04 09:42:55 -08:00
Chanwoo Choi
7808cae3e9 ARM: dts: Add PPMU node for exynos4412-trats2
This patch add dt node for PPMU_{DMC0|DMC1|LEFTBUS|RIGHTBUS} for
exynos4412-trats2 board. Each PPMU dt node includes one event of
'PPMU Count3'.

Cc: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 08:11:52 +09:00
Chanwoo Choi
8d6b9b4694 ARM: dts: Add PPMU node for exynos3250-monk and exynos3250-rinato
This patch adds PPMU dt node for Exynos3250 based Rinato and Monk
boards.  The PPMU node is used to get the utilization of DMC0/DMC1/
LEFTBUS/RIGHTBUS Block.

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 08:10:58 +09:00
Chanwoo Choi
30e0e476ae ARM: dts: Add PPMU dt node for exynos4 and exynos4210
This patch add PPMUs (Platform Performance Monitoring Unit) dt node
for Exynos4 (Exynos4210/4212/4412) SoCs. PPMU dt node is used for
monitor the utilization of each IP.

The Exynos4210/Exynos4212/Exynos4412 SoC includes following PPMUs:
- PPMU_DMC0      0x106A_0000
- PPMU_DMC1      0x106B_0000
- PPMU_CPU       0x106C_0000
- PPMU_ACP       0x10AE_0000
- PPMU_RIGHT_BUS 0x112A_0000
- PPMU_LEFT_BUS  0x116A_0000
- PPMU_FSYS      0x1263_0000
- PPMU_LCD0      0x11E4_0000
- PPMU_CAMIF     0x11AC_0000
- PPMU_IMAGE     0x12AA_0000
- PPMU_TV        0x12E4_0000
- PPMU_3D        0x1322_0000
- PPMU_MFC_LEFT  0x1366_0000
- PPMU_MFC_RIGHT 0x1367_0000

Additionally, the Exynos4210 SoC includes following PPMUs:
- PPMU_LCD1      0x1224_0000

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 08:10:58 +09:00
Chanwoo Choi
e4502367a0 ARM: dts: Add PPMU dt node for exynos3250
This patch adds PPMU (Platform Performance Monitoring Unit) dt node
to estimate the utilization of each IP in Exynos SoC through DEVFREQ
Event subsystem.

This patch adds following PPMU dt nodes:
- PPMU_DMC0     0x106a0000
- PPMU_DMC1     0x106b0000
- PPMU_RIGHTBUS 0x112A0000
- PPMU_LEFTBUS  0x116A0000
- PPMU_CAMIF    0x11AC0000
- PPMU_LCD0     0x11E40000
- PPMU_FSYS     0x12630000
- PPMU_3D       0x13220000
- PPMU_MFC      0x13660000
- PPMU_CPU      0x106c0000

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 08:10:58 +09:00
YoungJun Cho
59f504dc25 ARM: dts: add mipi dsi device node for exynos4415
This patch adds mipi dsi device node to exynos4415.dtsi.

Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 08:05:20 +09:00
YoungJun Cho
6c7c87a382 ARM: dts: add fimd device node for exynos4415
This patch adds fimd device node to exynos4415.dtsi.

Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 08:05:20 +09:00
Sylwester Nawrocki
c8ef0bee5f ARM: dts: Add syscon phandle to the video-phy node for Exynos4
This is required to fix regression after introducing the PMU device
nodes required for the PMU driver modified in commit 14fc8b93d4
("ARM: EXYNOS: Add platform driver support for Exynos PMU").
This change is needed to make MIPI DSI displays and MIPI CSI-2
camera sensors working again on Exynos4 boards.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 07:58:24 +09:00
Inha Song
440e5aefa7 ARM: dts: Add sound nodes for exynos4412-trats2
This patch add WM1811 audio codec, I2S interface and the sound
machine nodes to enable audio on exynos4412-trats2 board.

Signed-off-by: Inha Song <ideal.song@samsung.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 07:51:38 +09:00
Sylwester Nawrocki
cfe3b8933c ARM: dts: Fix CLK_MOUT_CAMn parent clocks assignment for exynos4412-trats2
In order to get exact 24MHz clock frequency value for the camera
sensor and avoid rounding errors the parent clock must be CLK_XUSBXTI,
not CLK_MOUT_MPLL_USER_T.  Currently the sensor's master clock
frequency is too high and the sensor doesn't work properly.

This fixes commit 0357a4438d
("ARM: dts: Specify default clocks for Exynos4 camera devices").

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 07:49:49 +09:00
Sylwester Nawrocki
79f3c37c88 ARM: dts: Fix CLK_UART_ISP_SCLK clock assignment in exynos4x12.dtsi
Assign proper FIMC-IS UART gate clock in the device DT node and not
use the SRC_MASK gate. This fixes regression introduced in commit
a37c82a3b3 ("clk: samsung: exynos4: Remove
SRC_MASK_ISP gates").

Without this change exynos4 fimc-is driver fails to probe with an
error log:

[    1.842447] ERROR: could not get clock /camera/fimc-is@12000000:uart(13)
[    1.848529] exynos4-fimc-is 12000000.fimc-is: failed to get clock: uart
[    1.855275] exynos4-fimc-is: probe of 12000000.fimc-is failed with error -2

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 07:49:08 +09:00
Krzysztof Kozlowski
043ef1485f ARM: dts: Add max77693 charger node for exynos4412-trats2
Add to Trats2 DTS new node for configuring the max77693 charger driver.
Only the maxim,constant-microvolt differs from default value but set all
of the optional properties anyway.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 07:47:39 +09:00
Krzysztof Kozlowski
faf9a3eaa1 ARM: dts: Switch max77686 regulators to GPIO control for exynos4412-trats2
Remove fixed regulators (duplicating what max77686 provides) and
add GPIO enable control to max77686 regulators.

This gives the system full control over those regulators. Previously
the state of such regulators was a mixture of what max77686 driver set
over I2C and what regulator-fixed set through GPIO.

Removal of 'regulator-always-on' from CAM_ISP_CORE_1.2V (buck9) allows
disabling it when it is not used. Previously this regulator was always
enabled because its enable state is a OR of:
 - ENB9 GPIO (turned always on by regulator-fixed),
 - BUCK9EN field in BUCK9CTRL register (off by max77686 through I2C).

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 07:43:54 +09:00
Krzysztof Kozlowski
4a235f6aa9 ARM: dts: Add suspend configuration for max77686 regulators for exynos4412-trats2
Add suspend to RAM configuration for max77686 regulators. Some LDOs
and bucks are disabled. This reduces energy consumption during S2R,
approximately from 17 mA to 9 mA.

Additionally remove old and not supported bindings:
 - regulator-mem-off
 - regulator-mem-idle
 - regulator-mem-on
The max77686 driver does not parse them and they are not documented
anywere.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 07:43:49 +09:00
Krzysztof Kozlowski
e8614292cd ARM: dts: Add Maxim 77693 fuel gauge node for exynos4412-trats2
Add node for fuel gauge present in Maxim 77693 PMIC. This allows control
over battery charging state on Trats2 board.

The fuel gauge is compatible with max17042 battery driver (Maxim
17042/17047/17050).  Although datasheet rev 2.2 for MAX77693 describes
fuel gauge as Maxim 17042-like, the chip on Trats2 board identifies
itself as Maxim 17047-like.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-02-04 07:43:44 +09:00
Vignesh R
e6e4a0d198 ARM: dts: AM335x: Make charge delay a DT parameter for TSC
The charge delay value is by default 0x400. But it can be set to lower
values on some boards, as long as false pen-ups are avoided. Lowering the
value increases the sampling rate (though current sampling rate is
sufficient for TSC operation). In some boards, the value has to be
increased to avoid false pen-up events. Hence, charge delay has been
made a DT parameter.

Signed-off-by: Vignesh R <vigneshr@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2015-02-03 11:50:39 -08:00
Will Deacon
8e64806672 ARM: 8299/1: mm: ensure local active ASID is marked as allocated on rollover
Commit e1a5848e33 ("ARM: 7924/1: mm: don't bother with reserved ttbr0
when running with LPAE") removed the use of the reserved TTBR0 value
for LPAE systems, since the ASID is held in the TTBR and can be updated
atomicly with the pgd of the next mm.

Unfortunately, this patch forgot to update flush_context, which
deliberately avoids marking the local active ASID as allocated, since we
used to switch via ASID zero and didn't need to allocate the ASID of
the previous mm. The side-effect of this is that we can allocate the
same ASID to the next mm and, between flushing the local TLB and updating
TTBR0, we can perform speculative TLB fills for userspace nG mappings
using the page table of the previous mm.

The consequence of this is that the next mm can erroneously hit some
mappings of the previous mm. Note that this was made significantly
harder to hit by a391263cd8 ("ARM: 8203/1: mm: try to re-use old ASID
assignments following a rollover") but is still theoretically possible.

This patch fixes the problem by removing the code from flush_context
that forces the allocated ASID to zero for the local CPU. Many thanks
to the Broadcom guys for tracking this one down.

Fixes: e1a5848e33 ("ARM: 7924/1: mm: don't bother with reserved ttbr0 when running with LPAE")

Cc: <stable@vger.kernel.org> # v3.14+
Reported-by: Raymond Ngun <rngun@broadcom.com>
Tested-by: Raymond Ngun <rngun@broadcom.com>
Reviewed-by: Gregory Fong <gregory.0xf0@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-02-03 12:57:33 +00:00
Michael Turquette
f85c6edfae Tegra clock fixes for 3.20
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUz5H9AAoJEFFb18rurjwTwssP/1luchJTB3qo+tqAIYYADgA4
 9QLQqfgIqZuJzzCNYgauELwN5M8S02ZABRzY9OOHnUY6BvoHPMpcOEey7i33ZYTJ
 9l4TFBOQyZE6W8tcyVL47pc9cjZydz9KKMO+/T5M16YyYoNZ1rXeGUli5j5sl2j7
 KoNurjC6C9Hw0M8+6CBTk4tYcMtxXeIacSGhV4VM03qKWj3e7485z0tYTG9yKfVD
 ol3KKGwjg1eZ9FSavMVYYnWajXZ7zlbB1PFqWO6V9h7DKmJMINbXGf/qr+/8eYSq
 zefWEYs1uGKunFtDv3C8wGRnl8ronBHehS2/xPpVEni0Eu2kJo1v8wDmftZ5ZyFW
 86ZdS4JTWD1/A2buEbJ3Ct30reNasGFUGNxIrYROglY4dK6DEPCMEFx5ZNiOhxlJ
 +BMjcsDzTt1gUWHbpxHrIZFErtHKcxtHeVckcZJgh87bnHVQKTAJ3cL9OJSWatqO
 lBDIsFxSOLap4gMKcMNddOEI8JNL1VZh+I/GdTh6VE2rhcurMNHvxmWL1TJ94/w8
 tRHRU5kRdYmxPzL98nDSR0h8WXShdWmnYNr+m2fk8iiPsI4umh/RS014kPVUYKq9
 a16cHkq88x3mKlEcyARG9tJK9oOCC5MuNuMPsPKf1dETOgHbAixlJVK5FHzHLjNr
 fERakm8nBM3rMSlgBbUL
 =k023
 -----END PGP SIGNATURE-----

Merge tag 'tegra-clk-3.20' of git://nv-tegra.nvidia.com/user/pdeschrijver/linux into clk-next

Tegra clock fixes for 3.20
2015-02-02 15:01:10 -08:00
Michael Turquette
54eea32f7e Merge branch 'clk-next' into v3.19-rc7 2015-02-02 14:59:38 -08:00
Tomeu Vizoso
1c8e600440 clk: Add rate constraints to clocks
Adds a way for clock consumers to set maximum and minimum rates. This
can be used for thermal drivers to set minimum rates, or by misc.
drivers to set maximum rates to assure a minimum performance level.

Changes the signature of the determine_rate callback by adding the
parameters min_rate and max_rate.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
[sboyd@codeaurora.org: set req_rate in __clk_init]
Signed-off-by: Michael Turquette <mturquette@linaro.org>
[mturquette@linaro.org: min/max rate for sun6i_ahb1_clk_determine_rate
                        migrated clk-private.h changes to clk.c]
2015-02-02 14:23:42 -08:00
Michael Turquette
42ed83f516 arm: omap2+ remove dead clock code
Remove omap_clocks_register and dummy_ck. The former is not used anymore
now that the statically defined clk stuctures are replaced with proper
descriptors and registered with the framework.

The dummy clock in arch/arm/mach-omap2 is made redundant by the OMAP3+
clock data that migrated to drivers/clk.

An additional benefit to this clean-up is removing the references to
clk-private.h which will be removed.

Cc: Paul Walmsley <paul@pwsan.com>
Cc: Tero Kristo <t-kristo@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Michael Turquette <mturquette@linaro.org>
2015-02-02 14:23:39 -08:00
Michael Turquette
fe76756052 Merge branch 'clk-omap-legacy' into clk-next
Conflicts:
	arch/arm/mach-omap2/cclock3xxx_data.c
2015-02-02 14:23:33 -08:00
Tomeu Vizoso
035a61c314 clk: Make clk API return per-user struct clk instances
Moves clock state to struct clk_core, but takes care to change as little API as
possible.

struct clk_hw still has a pointer to a struct clk, which is the
implementation's per-user clk instance, for backwards compatibility.

The struct clk that clk_get_parent() returns isn't owned by the caller, but by
the clock implementation, so the former shouldn't call clk_put() on it.

Because some boards in mach-omap2 still register clocks statically, their clock
registration had to be updated to take into account that the clock information
is stored in struct clk_core now.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Reviewed-by: Stephen Boyd <sboyd@codeaurora.org>
Tested-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Michael Turquette <mturquette@linaro.org>
[mturquette@linaro.org: adapted clk_has_parent to struct clk_core
                        applied OMAP3+ DPLL fix from Tero & Tony]
2015-02-02 14:22:19 -08:00
Bjorn Helgaas
ae03e7c465 Merge branches 'pci/host-generic' and 'pci/host-versatile' into next
* pci/host-generic:
  of/pci: Free resources on failure in of_pci_get_host_bridge_resources()

* pci/host-versatile:
  PCI: versatile: Add DT-based ARM Versatile PB PCIe host driver
  ARM: dts: versatile: add PCI controller binding
  PCI: versatile: Add DT docs for ARM Versatile PB PCIe driver
2015-02-02 14:49:49 -06:00
Bjorn Helgaas
2cd59deaef Merge branch 'pci/config' into next
* pci/config:
  PCI: xilinx: Convert to use generic config accessors
  PCI: xgene: Convert to use generic config accessors
  PCI: tegra: Convert to use generic config accessors
  PCI: rcar: Convert to use generic config accessors
  PCI: generic: Convert to use generic config accessors
  powerpc/powermac: Convert PCI to use generic config accessors
  powerpc/fsl_pci: Convert PCI to use generic config accessors
  ARM: ks8695: Convert PCI to use generic config accessors
  ARM: sa1100: Convert PCI to use generic config accessors
  ARM: integrator: Convert PCI to use generic config accessors
  ARM: cns3xxx: Convert PCI to use generic config accessors
  PCI: Add generic config accessors
  powerpc/PCI: Add struct pci_ops member names to initialization
  mn10300/PCI: Add struct pci_ops member names to initialization
  MIPS: PCI: Add struct pci_ops member names to initialization
  frv/PCI: Add struct pci_ops member names to initialization
2015-02-02 14:49:29 -06:00
Tomasz Figa
62d38099bf ARM: dts: exynos4: Add stdout-path properties
This patch adds stdout-path property to chosen nodes of Exynos4 boards
to enable use of earlycon feature without the need to hardcode port
number in kernel itself.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-02-02 10:11:26 -08:00
Peter De Schrijver
d0a57bd5b5 clk: tegra: make tegra_clocks_apply_init_table() arch_initcall
tegra_clocks_apply_init_table() needs to be called after the udelay
loop has been calibrated (see commit
441f199a37 ("clk: tegra: defer
application of init table") for why that is).  On existing Tegra SoCs
this was done by calling tegra_clocks_apply_init_table() from
tegra_dt_init(). To make this also work on ARM64, we need to change
this into an initcall. tegra_dt_init() is called from
customize_machine which is an arch_initcall. Therefore this should
also work on existing 32bit Tegra SoCs.

Tested on Tegra20 (ventana), Tegra30 (beaverboard), Tegra124 (jetson TK1) and
Tegra132.

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
[paul@pwsan.com: tweaked the commit message]
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Paul Walmsley <pwalmsley@nvidia.com>
Cc: Thierry Reding <treding@nvidia.com>
Cc: Prashant Gaikwad <pgaikwad@nvidia.com>
Cc: Mike Turquette <mturquette@linaro.org>
Cc: Stephen Boyd <sboyd@codeaurora.org>
Cc: Stephen Warren <swarren@wwwdotorg.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Alexandre Courbot <gnurou@gmail.com>
2015-02-02 15:47:28 +02:00
Nicolas Ferre
ad3fc3e316 ARM: at91/trivial: unify functions and machine names
Remove the string "(Device Tree)" after the machine name because all AT91
machines use the DT nowadays.
Also change some function names to unify following the convention:
- at91sam9xxx aren't named sam9, 9xxx but with the full name
- sama5 are the ones that don't have the at91 prefix anymore.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-02-02 11:01:29 +01:00
Alexandre Belloni
827de1f123 ARM: at91: remove at91_dt_initialize and machine init_early()
Move the ramc initialization to pm.c as it is the only user left.
This allows us to get rid of at91_dt_initialize() that was the only one called
by the init_early() function pointer of struct machine_desc.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
[nicolas.ferre@atmel.com: adapt patch to newer series]
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-02-02 11:01:29 +01:00
Nicolas Ferre
cac0172389 ARM: at91: change board files into SoC files
As board files are now DT only and can address all aspects of the SoC family,
we can rename them so that the mach-at91 directory looks cleaner.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-02-02 11:01:28 +01:00
Alexandre Belloni
edd942247f ARM: at91: remove at91_boot_soc
at91_boot_soc and at91_init_soc structures are not used by any SoC, remove
their use. Also remove all the now empty SoC files.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
[nicolas.ferre@atmel.com: different organization of the patches]
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-02-02 11:01:28 +01:00
Nicolas Ferre
6bd3e3f491 ARM: at91: move alternative initial mapping to board-dt-sama5.c
For sama5d4, remove an indirection and the remaining need for at91_boot_soc
structure.
This will allow further cleanup.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-02-02 11:01:27 +01:00
Alexandre Belloni
2b019a43cc ARM: at91: merge all SOC_AT91SAM9xxx
Only use SOC_AT91SAM9 for all the at91sam9 SoCs. It removes all the empty
at91sam9xxx.c SoC files. It also removes the useless at91_init_soc affectation
procedure and its "init" function pointer.
Only the SoC detection and display are kept for the at91sam9:
at91_soc_is_enabled() and at91_boot_soc.map_io() function calls are also
removed.

It enables HAVE_AT91_SMD and HAVE_AT91_UTMI for all the sam9 SoCs but this only
represents 96 bytes of uncompressed kernel code.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
[nicolas.ferre@atmel.com: different organization of the patches]
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-02-02 11:01:26 +01:00
Alexandre Belloni
7d7ffd7bae ARM: at91: at91rm9200: set idle and restart from rm9200_dt_device_init()
Setup arm_pm_idle and arm_pm_restart function pointers from
rm9200_dt_device_init() function to simplify the at91rm9200 initialization
process.
This same move is already done for the sam9s.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
[nicolas.ferre@atmel.com: adapt patch to newer series]
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-02-02 11:01:26 +01:00
Nicolas Ferre
980657d8cd Third batch of cleanup/soc for 3.20:
- several fixes and adjustments following the last cleanup batch
 - removal of some unused Kconfig options
 - slight PM and pm_idle rework to ease future rework
 - removal of unneeded mach/system_rev.h
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUxjj9AAoJEAf03oE53VmQGEAH/3nLneCOQeyuq60adx+Lxcdn
 Q9sMMzrw4B6bQnJee7+PQD3/QU7fmF8qNKlMKYAlILFHGNQplASi4uAfRTykUA0j
 RQHpS9n20ODVfX+yePJ/o8h2r1BkT2wUIDXxaZCj2RoPmEz1aiFDNa2pPsUfprRd
 gpbh+ZU43LRowYwH9UHPV55PQ0ZwMq3ry2DOYY5Al1+bKQ8TFvAdDMUu3rGZU7A4
 dMYiQCQ6Fv0EI1NY0IHSf/u/jujlPE2H0TSR38w8lYfIPzBx2tHkLSupuxKh7R1N
 QYibgZXWR0PqHOXMpOHYBqJFj5c3f/aOZ/dO4RJha+S7YHNQnIFzLsm122njgKQ=
 =KgUm
 -----END PGP SIGNATURE-----

Merge tag 'at91-cleanup3' into at91-3.20-soc
2015-02-02 10:59:34 +01:00
Nicolas Ferre
c5517b1ea7 Merge branch 'at91-3.19-fixes' into at91-3.20-soc 2015-02-02 10:58:59 +01:00
Linus Torvalds
fba7e99458 ARM: SoC fixes
One more week's worth of fixes. Worth pointing out here are:
 
 - A patch fixing detaching of iommu registrations when a device is removed --
   earlier the ops pointer wasn't managed properly
 - Another set of Renesas boards get the same GIC setup fixup as others have in
   previous -rcs
 - Serial port aliases fixups for sunxi. We did the same to tegra but we
   caught that in time before the merge window due to more machines being
   affected. Here it took longer for anyone to notice.
 - A couple more DT tweaks on sunxi
 - A follow-up patch for the mvebu coherency disabling in last -rc batch
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUzl/yAAoJEIwa5zzehBx3/v0P/iU4sCz/HYBwL46lSZZLnFyX
 RDFiq+I6nQFM3CG6oRn0gEi+/GbdyQ/Q6kMbver216pSfymZ+agRFaA6oj1o4HRD
 FQ2Dtz2ytvdkO8uSUzIV+nLJ//3MMwxmXTnB7SrDuzy6VeJ6GHlxxp39jrPCWtgi
 z7eo1bAuEKRQpVqJLBbqaNTsc4+9990zcgz5ChvfCqOvY3rE/AElEF5CMk71TFHW
 NTZQGM/HWteehA3/vTODICrd5SqV3peNAe3n6OMnZEEniUCesnug6IamUMwqKWVb
 y8rgobVV6ow5F0Cr3Zxc9Ufj8R1yayRQoGOdzDfuQ+zPivi2NbseinQgMUVujXYh
 TE/Ea4j+V1bYSY6EA89pAjw2C6e7fIWPOUJbO9hj5Ywc+uzR+ns+GFR2AaBggpFu
 4h0ig0ceOkzTgDWW0fNhH6BysvvczErT1CD0l6B+QgUZQadbSCFcGe8k2pNuJvYG
 f2lq6zUBIaNY5ZO6gu9inrd8UxjutKZM1p80fZc+tCFrm5YfHLFLwJPqfG7+8iEW
 R5OoQ1Jjb5SdO7u1yH2znQtlM9Z1u7bGQ7BkWPfZ0XbkHqiVgCpBUigzlRSgFO0+
 1rITIcwKgfdv8Sw4yngO6C3zFzn9Jz/cvGtW+gEjmSDV0BlhWCfWkTWys3ocdO79
 JSToPOtd87iekn7nHLBY
 =nw2v
 -----END PGP SIGNATURE-----

Merge tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Pull ARM SoC fixes from Olof Johansson:
 "One more week's worth of fixes.  Worth pointing out here are:

   - A patch fixing detaching of iommu registrations when a device is
     removed -- earlier the ops pointer wasn't managed properly
   - Another set of Renesas boards get the same GIC setup fixup as
     others have in previous -rcs
   - Serial port aliases fixups for sunxi.  We did the same to tegra but
     we caught that in time before the merge window due to more machines
     being affected.  Here it took longer for anyone to notice.
   - A couple more DT tweaks on sunxi
   - A follow-up patch for the mvebu coherency disabling in last -rc
     batch"

* tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  arm: dma-mapping: Set DMA IOMMU ops in arm_iommu_attach_device()
  ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds
  ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds
  ARM: mvebu: don't set the PL310 in I/O coherency mode when I/O coherency is disabled
  ARM: sunxi: dt: Fix aliases
  ARM: dts: sun4i: Add simplefb node with de_fe0-de_be0-lcd0-hdmi pipeline
  ARM: dts: sun6i: ippo-q8h-v5: Fix serial0 alias
  ARM: dts: sunxi: Fix usb-phy support for sun4i/sun5i
2015-02-01 13:20:47 -08:00
Olof Johansson
28111dda37 Third Round of Renesas ARM Based SoC Fixes for v3.19
* Instantiate GIC from C board code in legacy builds on r8a7790 and r8a73a4
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUytABAAoJENfPZGlqN0++qrkP/R2n+rHBNvZTW4p88IZcZ37O
 7zRXCkcXLHHVfKp8XHEMrhH/Pc7uIonWgq3SIKHDlK9UwAvfOdLPj2CMGm7bN+Ea
 +fgT6Qe1UP9kgbsH1whovsR3CzjLDqxmlhfjTkrmu5UjFNGQuv/iFVkkzViSCDYd
 YkSIYxybAlH3Nd7xxNFG54LzjCPauY2V76JM76/3j24m+zxZverY8sN46PtKryGg
 /toQzuVeimpz4BtObXZAi7Y7eWvvYUtELGshTTGKBmtRhLWGZDrS+60KpMDVoKtK
 f135X2taKm2jIiKPXCPMQTOWsXBls1TuxIGssiIysPU6t5OCSuNd/M1RiKDhZhE3
 J4L4vCMq/Gn2XbYe2+O0PNkLxuWepSZ4VRzALZCPhP48CYGrazP63JWTnjROcC61
 5bxuUtWMUVHF52hEWf6bXEiAEBNZP7u8kBc02drsscQHM/N3SiFcIxK/nGlIVMjy
 Qt01fYR+zZZ2v5OhQHeEe7lBfUMnKA9+QLHR4dJ32oJvyAFiDImLsrEBiVlTDk47
 gYJXmqGp2GWgB1H2mDiopHg+ERsavK9P7FL9juYG3OdvFPFuQwktJDSpN+Y0GZMV
 wRADV2/ylZBw48DidX86TD3gwtV7gP995nHvQJ2nv+/Kjq58uR4AHwn0wVHPldCE
 cDf5IYwdvD0a42id6zb5
 =/Oq9
 -----END PGP SIGNATURE-----

Merge tag 'renesas-soc-fixes3-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes

Merge "Third Round of Renesas ARM Based SoC Fixes for v3.19" from Simon Horman:

* Instantiate GIC from C board code in legacy builds on r8a7790 and r8a73a4

* tag 'renesas-soc-fixes3-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds
  ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-02-01 08:51:12 -08:00
Tony Lindgren
f276c0ce5d net: davinci_emac: Get device MAC on 3517
Looks like on 3517 davinci_emac MAC address registers have a
different layout compared to dm816x and am33xx.

Let's add a function to get the 3517 MAC address.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-01-30 17:42:01 -08:00
Roger Quadros
726806ad9b ARM: dts: am57xx-beagle-x15: Fix USB2 mode
On this board USB2 is meant to be used as peripheral only.
The ID pin for USB2 is hardwired HIGH.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-30 15:48:39 -08:00
Roger Quadros
f60db98eaa ARM: dts: am57xx-beagle-x15: Add extcon nodes for USB
On this EVM, the USB cable state has to be determined via the
ID pin tied to a GPIO line. We use the gpio-usb-extcon driver
to read the ID pin and the extcon framework to forward
the USB cable state information to the USB driver so the
controller can be configured in the right mode (host/peripheral).

NOTE: the ports on this board cannot switch roles. They are
configured either host or peripheral by hardwiring the
respective ID pins.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-30 15:48:39 -08:00
Roger Quadros
f56de327b4 ARM: dts: dra72-evm: Add extcon nodes for USB
On this EVM, the USB cable state has to be determined via the
ID pin tied to a GPIO line. We use the gpio-usb-extcon driver
to read the ID pin and the extcon framework to forward
the USB cable state information to the USB driver so the
controller can be configured in the right mode (host/peripheral).

Gets USB peripheral mode to work on this EVM.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Reviewed-by: Felipe Balbi <balbi@ti.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-30 15:48:39 -08:00
Roger Quadros
87517d26d8 ARM: dts: dra7-evm: Add extcon nodes for USB
On this EVM, the USB cable state has to be determined via the
ID pin tied to a GPIO line. We use the gpio-usb-extcon driver
to read the ID pin and the extcon framework to forward
the USB cable state information to the USB driver so the
controller can be configured in the right mode (host/peripheral).

Gets USB peripheral mode to work on this EVM.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Reviewed-by: Felipe Balbi <balbi@ti.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-30 15:48:39 -08:00
Rob Herring
8d6bd97dc0 ARM: ks8695: Convert PCI to use generic config accessors
Convert the ks8695 PCI driver to use the generic config access functions.

This changes accesses from __raw_readX/__raw_writeX to readX/writeX
variants.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Greg Ungerer <gerg@uclinux.org>
CC: Russell King <linux@arm.linux.org.uk>
CC: linux-arm-kernel@lists.infradead.org
2015-01-30 16:14:43 -06:00
Rob Herring
7a11e9c487 ARM: sa1100: Convert PCI to use generic config accessors
Convert the sa1100 nanoengine PCI driver to use the generic config access
functions.

Change accesses from __raw_readX/__raw_writeX to readX/writeX variants.
This removes the spinlock because it is unnecessary.  The config read and
write functions are already protected with a spinlock.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Russell King <linux@arm.linux.org.uk>
CC: linux-arm-kernel@lists.infradead.org
2015-01-30 16:14:43 -06:00
Tero Kristo
d6540b1937 ARM: OMAP3: remove legacy clock data
This is no longer used for anything, thus it can be removed.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Michael Turquette <mturquette@linaro.org>
2015-01-30 10:55:32 -08:00
Tero Kristo
eded36fe29 ARM: OMAP3: use clock data from TI clock driver for legacy boot
As the clock data is now available for the legacy boot also from the
clock driver, use this rather than the data under the mach folder.
This allows us to get rid of the old clock data completely.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Michael Turquette <mturquette@linaro.org>
2015-01-30 10:55:28 -08:00
Tero Kristo
3dbb048b7c ARM: OMAP3: PRM: add support for legacy iomapping init
As the legacy clock data is being moved under clock driver, the
clock data will be using the same low level infrastructure for
register accesses. This requires the clk_memmaps to be initialized
properly. This patch adds a support hook to the PRM driver to
initialize the mappings.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Michael Turquette <mturquette@linaro.org>
2015-01-30 10:55:23 -08:00
Linus Torvalds
1f59fe7667 The ARM changes are largish, but not too scary. And a simple fix
for x86 (bug introduced in 3.19).
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQEcBAABAgAGBQJUy2ulAAoJEL/70l94x66D18kIAJhuh2k5Mt3TfP/zfhi2Y6ER
 IAZqyFODs8txZ3v432PB8yWWvr2XfJ3gwfjvurLygQJ3jCGZqDrmucbUUXzEaPUk
 mPnLpxV0ZEmNweS2HLGPX9HJ6zfsZ1dHRk55Tko9ynAO731q7yPjj6HC0th8wzvE
 BRv5y/18rY2zyar+5Azpj5wpOSllq0ynMgjWXGSlaTLbQoyvgZtzbqNY6nsAGrKw
 e8hSUPogfGUmZkBHHHVDYKpgHvWS1hARyuGFo8LeKXKPo7qhYxZHCDpch8TXnq2y
 21IvQfYddGpcMsaTroA5qyXFigxCX+1j3po6MS3ZH9GGXS5fC3sI8t0EDxKiO6Q=
 =O4X0
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull KVM fixes from Paolo Bonzini:
 "The ARM changes are largish, but not too scary.  And a simple fix for
  x86 (bug introduced in 3.19)"

(Paolo sayus these are the "Final" fixes. We'll see).

* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
  KVM: x86: check LAPIC presence when building apic_map
  arm/arm64: KVM: Use kernel mapping to perform invalidation on page fault
  arm/arm64: KVM: Invalidate data cache on unmap
  arm/arm64: KVM: Use set/way op trapping to track the state of the caches
2015-01-30 10:45:24 -08:00
Paolo Bonzini
02512b2bd6 Second round of fixes for KVM/ARM for 3.19.
Fixes memory corruption issues on APM platforms and swapping issues on
 DMA-coherent systems.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJUyrVCAAoJEEtpOizt6ddy/rgH/1gFfX3zGryDYwbFz2BbnMk8
 zJeQfeaOD4TF/6k8UZctrJatoqPgMCmVMAbT7uuZ+zwOYPYDGijGeJOYKS6IcIcj
 Lhl0QjbwBUaC58jZhhKGStZTKV2w9L7JK3RFStw+cE2HAAKcZQSVdfnM7ZoyyaRC
 qbFqPXLppSSZXD1R+/F17+mM8bogRmdS4we0o7J1KCT6hWbnK1CJkScxXLapbl5Y
 tKZSMM+k+L7wvgDnuzepTY+rFna3LSLQXNli0nPX9ByRFR4nMjeJKwm68kOaTU1r
 y1naOS3F6kl7S0OiCzyzekM4U330MAVmTyvlT9GHAHCVyjzavGQuuBFHdcdnvvc=
 =rJUG
 -----END PGP SIGNATURE-----

Merge tag 'kvm-arm-fixes-3.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master

Second round of fixes for KVM/ARM for 3.19.

Fixes memory corruption issues on APM platforms and swapping issues on
DMA-coherent systems.
2015-01-30 09:41:38 +01:00
Bartlomiej Zolnierkiewicz
712eddf702 cpuidle: exynos: add coupled cpuidle support for exynos4210
The following patch adds coupled cpuidle support for Exynos4210 to
an existing cpuidle-exynos driver.  As a result it enables AFTR mode
to be used by default on Exynos4210 without the need to hot unplug
CPU1 first.

The patch is heavily based on earlier cpuidle-exynos4210 driver from
Daniel Lezcano:

http://www.spinics.net/lists/linux-samsung-soc/msg28134.html

Changes from Daniel's code include:
- porting code to current kernels
- fixing it to work on my setup (by using S5P_INFORM register
  instead of S5P_VA_SYSRAM one on Revison 1.1 and retrying poking
  CPU1 out of the BOOT ROM if necessary)
- fixing rare lockup caused by waiting for CPU1 to get stuck in
  the BOOT ROM (CPU hotplug code in arch/arm/mach-exynos/platsmp.c
  doesn't require this and works fine)
- moving Exynos specific code to arch/arm/mach-exynos/pm.c
- using cpu_boot_reg_base() helper instead of BOOT_VECTOR macro
- using exynos_cpu_*() helpers instead of accessing registers
  directly
- using arch_send_wakeup_ipi_mask() instead of dsb_sev()
  (this matches CPU hotplug code in arch/arm/mach-exynos/platsmp.c)
- integrating separate exynos4210-cpuidle driver into existing
  exynos-cpuidle one

Cc: Colin Cross <ccross@google.com>
Cc: Kukjin Kim <kgene.kim@samsung.com>
Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Cc: Tomasz Figa <tomasz.figa@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-01-30 08:39:15 +09:00
Bartlomiej Zolnierkiewicz
865e8b76a0 ARM: EXYNOS: apply S5P_CENTRAL_SEQ_OPTION fix only when necessary
Commit c2dd114d24 ("ARM: EXYNOS: fix register setup for AFTR mode
code") added S5P_CENTRAL_SEQ_OPTION register setup fix for all
Exynos SoCs to AFTR mode code-path.  It turned out that for coupled
cpuidle AFTR mode on Exynos4210 (added by the next patch) applying
this fix causes lockup so enable it in the AFTR mode code-path only
on SoCs that require it (in the suspend code-path it can be always
applied like it was before commit c2dd114d24 ("ARM: EXYNOS: fix
register setup for AFTR mode code")

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Colin Cross <ccross@google.com>
Cc: Tomasz Figa <tomasz.figa@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-01-30 08:38:52 +09:00
Heiko Stuebner
c25d8cbcd8 ARM: dts: rockchip: move the hdmi ddc-i2c-bus property to the actual boards
Currently the hdmi driver is using one of the soc i2c busses for ddc probing
and while documentation always specifies i2c5 as hdmi-i2c it could very well
be any other bus as well.

Therefore this is a property of the board and should be specified there.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-01-30 00:10:59 +01:00
Heiko Stuebner
863b76b2b5 ARM: dts: rockchip: enable vops and hdmi output on rk3288-firefly and -evb
This enables the recently added display nodes on the firefly and evb,
letting the boards output graphic data over the hdmi port.

This includes enabling of i2c5 on the evb that is used for ddc probing and
setting the lcd-regulators to always on until the hdmi driver learns
about using them.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-01-30 00:10:55 +01:00
Marc Zyngier
0d3e4d4fad arm/arm64: KVM: Use kernel mapping to perform invalidation on page fault
When handling a fault in stage-2, we need to resync I$ and D$, just
to be sure we don't leave any old cache line behind.

That's very good, except that we do so using the *user* address.
Under heavy load (swapping like crazy), we may end up in a situation
where the page gets mapped in stage-2 while being unmapped from
userspace by another CPU.

At that point, the DC/IC instructions can generate a fault, which
we handle with kvm->mmu_lock held. The box quickly deadlocks, user
is unhappy.

Instead, perform this invalidation through the kernel mapping,
which is guaranteed to be present. The box is much happier, and so
am I.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-29 23:24:57 +01:00
Marc Zyngier
363ef89f8e arm/arm64: KVM: Invalidate data cache on unmap
Let's assume a guest has created an uncached mapping, and written
to that page. Let's also assume that the host uses a cache-coherent
IO subsystem. Let's finally assume that the host is under memory
pressure and starts to swap things out.

Before this "uncached" page is evicted, we need to make sure
we invalidate potential speculated, clean cache lines that are
sitting there, or the IO subsystem is going to swap out the
cached view, loosing the data that has been written directly
into memory.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-29 23:24:56 +01:00
Marc Zyngier
3c1e716508 arm/arm64: KVM: Use set/way op trapping to track the state of the caches
Trying to emulate the behaviour of set/way cache ops is fairly
pointless, as there are too many ways we can end-up missing stuff.
Also, there is some system caches out there that simply ignore
set/way operations.

So instead of trying to implement them, let's convert it to VA ops,
and use them as a way to re-enable the trapping of VM ops. That way,
we can detect the point when the MMU/caches are turned off, and do
a full VM flush (which is what the guest was trying to do anyway).

This allows a 32bit zImage to boot on the APM thingy, and will
probably help bootloaders in general.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-29 23:24:56 +01:00
Heiko Stuebner
9fffa7ad0d ARM: dts: rockchip: housekeeping off i2c0 on rk3288-evb boards
Use the same transfer speed on both the rk808 and act8846 variants and
remove the status=okay from the rk808 one which is already set in the
shared rk3288-evb.dtsi .

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-01-29 23:21:15 +01:00
Heiko Stuebner
5bbb50d5a2 ARM: dts: rockchip: add cpu and gpu regulators to rk3288-evb-act8846
The evaluation board using the act8846 as main pmic uses two additional
regulators to provide the cpu and gpu voltage. Add these and also add
the link to cpu supply from vdd_cpu.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Tested-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2015-01-29 23:20:47 +01:00
Olof Johansson
ee481c84fa Merge tag 'zynq-soc-for-3.20' of https://github.com/Xilinx/linux-xlnx into next/soc
Merge "Zynq SoC changes for 3.20" from Michal Simek:

arm: Xilinx Zynq SoC patches for v3.20

- Enable pincontrol
- Simplified SLCR initialization
- Setup default ARCH_NR_GPIO

* tag 'zynq-soc-for-3.20' of https://github.com/Xilinx/linux-xlnx:
  ARM: zynq: Simplify SLCR initialization
  ARM: zynq: PM: Fixed simple typo.
  ARM: zynq: Setup default gpio number for Xilinx Zynq
  ARM: zynq: Enable pinctrl

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 14:08:04 -08:00
Olof Johansson
7679f31f14 arm: Xilinx Zynq dt patches for v3.20
- Add USB chipidea driver to DT
 - Add pincontrol
 - Add aliases node
 - Fix WDT node
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iEYEABECAAYFAlTKRKUACgkQykllyylKDCFdaQCghATSNR0DjT8Nj1aPTxr868KZ
 rx8An3sIUG5K/kj/Ccfn2Eq5wjautNef
 =hnva
 -----END PGP SIGNATURE-----

Merge tag 'zynq-dt-for-3.20' of https://github.com/Xilinx/linux-xlnx into next/dt

Merge "Zync DT for v3.20" from Michal Simek:

arm: Xilinx Zynq dt patches for v3.20

- Add USB chipidea driver to DT
- Add pincontrol
- Add aliases node
- Fix WDT node

* tag 'zynq-dt-for-3.20' of https://github.com/Xilinx/linux-xlnx:
  ARM: zynq: DT: Add aliases node
  ARM: zynq: DT: Fix binding for cadence WDT
  ARM: zynq: DT: Add pinctrl information to USB nodes
  ARM: zynq: DT: Remove bogus value from 'bias-disable' property
  ARM: zynq: DT: Add pinctrl information
  ARM: zynq: DT: Add USB to device tree

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 14:03:28 -08:00
Olof Johansson
467f7ad9f4 Renesas ARM Based SoC Defconfig Fixes for v3.20
* Select CONFIG_REGULATOR in mach_shmobile defconfig once again
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUyYSiAAoJENfPZGlqN0++FOUP/js8f1R4MsI14U2PlvDojDcz
 laI0Uad2uaSh9PK1ibMxoCvHFewmkUxsixO1ei5FJRgRd+Fgahy7wVaaU1cwqHOG
 b4PvpQD65bYY7UX8Kac06wOc258LQcYYhzIPn4OlQg85FprpiYLjJFik5qUvyTxH
 /igU+eXISJTXGr2l5PvLRAIbetJTYKR+pTElz6DWL9DOQmoBqLyLcg4Yj/puahg9
 ZoNQrzXHSs3H6UFF6MIRh+jvZfNlcsY3RxeI7d/vUxgAAP9iI1MPTdA7VLMYE3DU
 eCJu1lGyE1mwLKb/slgVbvqo4fvBlr6IXRBrK2X41Sd/KI6Hs3lYtht5z3Uu4xz1
 bebghe+YaKYaSvt1K9TibmXYpjEf//PGdLzF4554VMjbX+sShEn54WP3ySxL8SoD
 RcnyI2PgLza/aDKp7DILtw5me+PyO1TrTOKA973eU+Uenoz8zQQREAVna7fOtd3L
 UwUcrzYI8PnZWjrhJ5JrgxHdp8zwNe4QME2Xz0RTBHN4XI91DC955MtN8ZZDabkR
 n6Y62nUdGBd0b4OFmmSJup87w5rP2+AMj+HKQaH1WN6sBh6+cX6fxKfZhDq4MYR2
 v1Ckiso3i+U+86xc5L/oX/x1Ecf6G3qCvFEDnj+OOZwfKnT8oKqJQcpnPacLeUuk
 N5xkCsoQg9+ST8XduDH/
 =joof
 -----END PGP SIGNATURE-----

Merge tag 'renesas-defconfig-fixes-for-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/defconfig

Merge "Renesas ARM Based SoC Defconfig Fixes for v3.20" from Simon Horman:

* Select CONFIG_REGULATOR in mach_shmobile defconfig once again

* tag 'renesas-defconfig-fixes-for-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: Select CONFIG_REGULATOR in defconfig once again

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 13:58:33 -08:00
Olof Johansson
1215c3e65a Samsung 3rd DT updates for v3.20
- add DISP1 power domain for support HDMI support on exynos5420/5422/5800
   and the power domain node including FIMD1, MIXER and HDMI modules
   (tested on exynos5420 Peach Pit and exynos5800 Peach Pi Chromebooks
   and exynos5422 Odroid XU3 by Javier Martinez Canillas)
 
 Note this is including a patch for adding clock IDs for the DISP1 power
 domain with Mike and Sylwester's acks so that could be handled together
 to avoid non-working.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJUyXrPAAoJEA0Cl+kVi2xqxRgP/3+NBTV3qWQ6+pYTl4kCebIz
 6lCmjgMeLZFfqRT420ouK1w7K0ra2eeeLX1GNZHOayzzBfFEJfR7GL6GMh40NqHy
 qs5CtAGTDlwb8ZSIECBcklABXICE6nujl9lqa3WD1vjwJy9Zug/3BUYfSlxwJap6
 Uzrw1tGt+k7WcHWWSyC8FCsK8gpvxb5cAIcBYTRPrxwHcGGeVfvn4IFBcz5eYMsz
 EttmkxXOVcpVJ90c+iSyrLSVuc+YH0m+ITrYj0/EjlzJzlQQ1NKjBg+eUnWU9Zef
 L7bZp3r4ZWU1FYNzQuuUXaEwSfSzGJ2icKLmX5nmcH5XPSBWPTYRDEIJe2fX7j+X
 1zhxi992LvZysIgJrfPJf8N6vsOeKc2mfz/65YLjcbSpFX7Qe5hISlMIRAWYT/69
 IqVsH0E05VvXtpFKfSlfapsztAmfVsaRZwsHhvmMEZdzUatJehQAn2t5gftZQ0iu
 9/z1HD3uszZWPghbRuFBalmgWB8WEhF8yhiIRBx1o/ML7DAcdLtrZ2HrSobjnBYz
 APnxZAU6s4QwAAk5bQCN7p3jPqSnZUakg1ETeXf3j1qvfWhTmKcYPggYDtfb2Nou
 tIwJdY3VAJWC+9n/4pKw5OKsCdE/34DUdT9rkuIBhO+AbRpeGkztSVJmBRU4bGQM
 1yVwptBrUybxDLqM4Lad
 =9Imn
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt

Merge "Samsung 3rd DT updates for v3.20" from Kukjin Kim:

- add DISP1 power domain for support HDMI support on exynos5420/5422/5800
  and the power domain node including FIMD1, MIXER and HDMI modules
  (tested on exynos5420 Peach Pit and exynos5800 Peach Pi Chromebooks
  and exynos5422 Odroid XU3 by Javier Martinez Canillas)

Note this is including a patch for adding clock IDs for the DISP1 power
domain with Mike and Sylwester's acks so that could be handled together
to avoid non-working.

* tag 'samsung-dt-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: dts: Add DISP1 power domain for exynos5420
  clk: exynos5420: Add IDs for clocks used in DISP1 power domain

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 13:57:19 -08:00
Olof Johansson
a35306d3ad Samsung 2nd DT updates for v3.20
- for all of Samsung SoCs
   : use generic power domain bindings
   : add 'dr_mode' property for hsotg/dwc2 devices
 
 - exynos3250-rinato and exynos3250-monk
   : add regulator-haptic
 
 - exynos5422-odroidxu3
   : reduce total RAM by 22 MiB because last 22 MiB
     for secure monitor cannot be accessed by kernel
   : add on-board INA231 sensors and LDO26 of PMIC
     for the sensors
 
 Note that this is based on tags/samsung-dt
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJUyXYCAAoJEA0Cl+kVi2xqZCMP/2B41IOspFq1wAbCLGNDT3sU
 sc1z7FR0OSXGVTsIkAQk1dIj9KpEKaygDezF1/3q/csc7lCFWoDDwdTR+zzatrzH
 cOyZnecMW/OOzzavc/qbUIfaJQjXwG1MNsdED44taJGJngG3NPvOmJJtA9HBPCPQ
 Fv9gmZF/PnstOl2I5exx3mznPIf7LRysHezj6rjbIO5R7znMcc56IegTQm59jY8+
 8i1njDINAhVDWGaLHAhDGy5gLEMHI5lST+NP0M9dnSf6pN53Ua20wPEsn5SJ7vRw
 Rn6frmZr/lIbKz0JlZtoU+QEcLUiJB7/ZYfKJGzKI5KmF9T3q+Rv+Su+JbGnQciL
 3EUy3lh/NDqW6Vvuy+G5UAg5lZ39Pt7BE/F6a0hT1GvRKYnsnY2XfTkIibmD8VDr
 0kLPJESKt1z8x5bowlBKlYe6sxU3/x2bYWBpAg0wMbt7oOz99w4kTgxNaJmiyL7y
 gda3IXWTkJ9z3sncW9UCbJBpgKM/+9+t6QFOszrXK0Upqz2qPi31levKV8XCwBzW
 h0SVULdmxRRm+u5z80++xXaeZ4dmKvQPFV9GJsCj2RGlFGWIi76SwGUZWANZFPAz
 g84ApMMvD8uvCJJoPw+gpocesEHckzFHhvbMHT6ctU2QW0JysbJ58vXHvXjc9zNO
 2VZnOAFYQq6fw6MiuUfE
 =DGVz
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt

Merge "Samsung 2nd DT updates for v3.20" from Kukjin Kim:

- for all of Samsung SoCs
  : use generic power domain bindings
  : add 'dr_mode' property for hsotg/dwc2 devices

- exynos3250-rinato and exynos3250-monk
  : add regulator-haptic

- exynos5422-odroidxu3
  : reduce total RAM by 22 MiB because last 22 MiB
    for secure monitor cannot be accessed by kernel
  : add on-board INA231 sensors and LDO26 of PMIC
    for the sensors

* tag 'samsung-dt-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: dts: reduce total RAM by 22 MiB for exynos5422-odroidxu3
  ARM: dts: add on-board INA231 sensors for exynos5422-odroidxu3
  ARM: dts: Add regulator-haptic node for exynos3250-monk
  ARM: dts: Add regulator-haptic node for exynos3250-rinato
  ARM: dts: add 'dr_mode' property to hsotg devices for exynos boards
  ARM: dts: convert to generic power domain bindings for exynos DT

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 13:54:26 -08:00
Olof Johansson
ff6a8168d2 Samsung mach updates for v3.20
- add exynos3250 Supsend to RAM support
 - recognize MFC v8 devices for exynos5422/5800
 - print CPU id/rev during kernel boot
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJUyXuOAAoJEA0Cl+kVi2xqOrwP/3MkfdxApwSVKGo7eg7xNA8i
 YJNDQM0Fdb1sTIxLD1ZJvz8rso1If/0wHkuWkmfje8zOoBEvL4C6jQq33KvWvtlS
 v5FqRjjvU8zz2wUBGu9cNkET3M6rKiiMANw8FiZJvVQa3RGL9WtFYtADZxJOy04Y
 ucbIGjJuha2oHrgWMNTW1OJUIvuJ3x8YGLUdDZVOffUMBqQxrz6UIun6juy/Xjio
 l8Gx9TJUhAmgMBzEhOV0BCfMWbdhLDZbq6ivfyUL19C5Y1lD6VbNlu2U26dVUQL5
 bL3ZJ3F6NZbxQRwsj1TgesJzA6d293N1nFOOvHX3n/lU6vp3E2G+s6MpkC2Jm6xi
 V9n6iowqkLkLPTCMroVggdWMN0FkVPm37peRFi1+xtLYKfJLYfNz9i2qGYJtJtpz
 Qc+yJOai/mRLhRBPA3UeoOMeWhQgs6asIUAamEDPg2fUiaOqlZUESnjNaJyXuYDS
 py/jMQexc0+TAkBiC2lRAYo0yunWaJhNaYyVkLBhyi6LBJieqCRpwrDAaCSBrCoK
 1FZaAmIo9cuhDxtIOy7vs4Y7z/PWvwTFrzL643IDwwlKr3cL0PE7+2zGLdtH8BTH
 HhtzlKGX1P9DdU6B7uBv5F8/33ZaolS8GRf8W+J2kpKzCOnd7AZ1kXvI2DgrHpUC
 oqUfn++rh1gafzTpB5Qm
 =MZnm
 -----END PGP SIGNATURE-----

Merge tag 'samsung-update' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/soc

Merge "Samsung mach updates for v3.20" from Kukjin Kim:

- add exynos3250 Supsend to RAM support
- recognize MFC v8 devices for exynos5422/5800
- print CPU id/rev during kernel boot

* tag 'samsung-update' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: EXYNOS: Add exynos3250 suspend-to-ram support
  ARM: EXYNOS: Recognize Samsung MFC v8 devices
  ARM: SAMSUNG: print CPU id on probe

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 13:53:47 -08:00
Olof Johansson
d073d7a146 Samsung cleanup for v3.20
- remove i2c sys configuration from mach-exynos/
   : all related codes moved into i2c driver
 - remove Samsung specific DMA
   : every Samsung stuff uses dmaengine APIs
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJUyXM3AAoJEA0Cl+kVi2xqn8MP/jDl9Jgx94dvLoj+jZxrN/QL
 qm4ZbhWnQ+DCv6B8GSgkwljWTpQazqUztft1FXpjKUW3p2VoQHugb0a62jySx6vG
 VKCxLsZh95Zj7ZL1q18v1HO7zrAm/TdWl7H+j55jATfQVQGmHeiFTkyHBYVmicHU
 /HMwT3C42oJEiz58BPs0uoM5Pfm+2cV8J4yj2VMIQXLx5y52+Ic0s228yJxqWYuO
 Nm7RGMW5oJwkgAli2ug0VqMUYGVg4otiNqoXIl9DP1B+yhdvEsXrkPcDNvTqgJBU
 nq+ho3X2qFM+ETMi80QA4YNq/MM5Ns3cqwMprVTeAvMe8xJqjL3FpSc3eDQRRhHq
 LHn0eUhwOj4xWa5d/dku6Onp1UOBSqvuURj30Vg2OXMwwBa/DD5g3sihmvBXUdVa
 Bd8QEWl9gcVTXqjRb3V2X9UdID3EZMongAohzAqi/ailb8kFmdGPOt7EZsPGa4ZA
 YkxR/KvcLMEjClwGVDH9x7vJq8rONSi+zWhE3MbBMjyj4quUv4tzMUb2Bl2dkrma
 lrpberjceQ2gLIRFC8fy5JoL4sNfIT3JcCpLCRMZXK9SbWx7UjdV3Ni8m04ldwJt
 +Jjoh2qiZ/wsFH++RyJ2K3yrntcGhzqe/wfm1ZB6dGe0W/XRIOb/dq9vBODbX/9W
 yl99BuYWxUZw9aHPfRp2
 =2/ZU
 -----END PGP SIGNATURE-----

Merge tag 'samsung-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/cleanup

Merge "Samsung cleanup for v3.20" from Kukjin Kim:

- remove i2c sys configuration from mach-exynos/
  : all related codes moved into i2c driver
- remove Samsung specific DMA
  : every Samsung stuff uses dmaengine APIs

* tag 'samsung-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: SAMSUNG: remove unused DMA infrastructure
  ARM: EXYNOS: Remove i2c sys configuration related code

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 13:52:52 -08:00
Baruch Siach
436d3b13fc ARM: digicolor: select syscon and timer
The digicolor interrupt controller driver now needs syscon.

Also, as per clocksource maintainer request, we now have a separate config
symbol, CONFIG_DIGICOLOR_TIMER, for the digicolor timer.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 13:52:06 -08:00
Baruch Siach
1e4cd7e52b ARM: digicolor: add minimal device tree description
cx92755.dtsi describes CX92755 on chip peripherals. cx92755_equinox.dts
describes the Equinox evaluation board for the CX92755 SoC.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 13:51:42 -08:00
Laurent Pinchart
eab8d6530c arm: dma-mapping: Set DMA IOMMU ops in arm_iommu_attach_device()
Commit 4bb25789ed ("arm: dma-mapping: plumb our iommu mapping ops
into arch_setup_dma_ops") moved the setting of the DMA operations from
arm_iommu_attach_device() to arch_setup_dma_ops() where the DMA
operations to be used are selected based on whether the device is
connected to an IOMMU. However, the IOMMU detection scheme requires the
IOMMU driver to be ported to the new IOMMU of_xlate API. As no driver
has been ported yet, this effectively breaks all IOMMU ARM users that
depend on the IOMMU being handled transparently by the DMA mapping API.

Fix this by restoring the setting of DMA IOMMU ops in
arm_iommu_attach_device() and splitting the rest of the function into a
new internal __arm_iommu_attach_device() function, called by
arch_setup_dma_ops().

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29 10:56:27 -08:00
Murali Karicheri
dbbfae701a ARM: config: add DEVTMPFS option by default to keystone config
When using network driver on keystone and nfs rootfs is used following
error displayed and device halts.

Missing devtmpfs, which is required for udev to run
Halting...

Add the DEVTMPFS option by default to fix this

Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Santosh Shilimkar <ssantosh@kernel.org>
2015-01-29 09:00:20 -08:00
Dmitry Eremin-Solenikov
e461894dc2 ARM: 8284/1: sa1100: clear RCSR_SMR on resume
StrongARM core uses RCSR SMR bit to tell to bootloader that it was reset
by entering the sleep mode. After we have resumed, there is little point
in having that bit enabled. Moreover, if this bit is set before reboot,
the bootloader can become confused. Thus clear the SMR bit on resume
just before clearing the scratchpad (resume address) register.

Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:24:53 +00:00
Dmitry Eremin-Solenikov
1ff990c018 ARM: 8283/1: sa1100: collie: clear PWER register on machine init
Let kernel drivers to control wakeup sources instead of hardcoding them
in the collie.c board file.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:24:52 +00:00
Dmitry Eremin-Solenikov
364e386917 ARM: 8282/1: sa1100: use handle_domain_irq
Use handle_domain_irq instead of handle_IRQ to automatically map
hardware irq number to virq.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:24:50 +00:00
Dmitry Eremin-Solenikov
a0ea298d32 ARM: 8281/1: sa1100: move GPIO-related IRQ code to gpio driver
As a part of driver consolidation, move GPIO-related IRQ code to
drivers/gpio/gpio-sa1100.c. The code does not use GPIOLIB_IRQCHIP (yet),
because sa1100 does not have a device for gpios, which is a requirement
for GPIOLIB_IRQCHIP. This will be the next step.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:24:49 +00:00
Dmitry Eremin-Solenikov
a82be3f0f1 ARM: 8280/1: sa1100: switch to irq_domain_add_simple()
As now both SC and GPIO irq domains start from 0 hwirq and do not
contain holes, switch to using irq_domain_add_simple() instead of
irq_domain_add_legacy().

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:24:48 +00:00
Dmitry Eremin-Solenikov
590f266106 ARM: 8279/1: sa1100: merge both GPIO irqdomains
Now there is no difference between low and high GPIO irqdomains. Merge
them into single irqdomain handling all GPIOs.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:24:47 +00:00
Dmitry Eremin-Solenikov
83508093f4 ARM: 8278/1: sa1100: split irq handling for low GPIOs
Low GPIO pins use an interrupt in SC interrupts space. However it's
possible to handle them as if all the GPIO interrupts are instead tied
to single GPIO handler, which later decodes GEDR register and
chain-calls next IRQ handler. So split first 11 interrupts into system
part (IRQ_GPIO0_SC - IRQ_GPIO10_SC) which work exactly like the rest of
system controller interrupts and real GPIO interrupts
(IRQ_GPIO0..IRQ_GPIO10). A single handler sa1100_gpio_handler then
decodes and calls next handler.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:24:46 +00:00
Arnd Bergmann
fba289054f ARM: 8298/1: ARM_KERNMEM_PERMS only works with MMU enabled
The recently added ARM_KERNMEM_PERMS feature works by manipulating
the kernel page tables, which obviously requires an MMU. Trying
to enable this feature when the MMU is disabled results in a lot
of compile errors in mm/init.c, so let's add a Kconfig dependency
to avoid that case.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:23:31 +00:00
Rob Herring
ed46092518 ARM: 8295/1: fix v7M build for !CONFIG_PRINTK
Minimal builds for v7M are broken when printk is disabled. The caller is
assembly so add the necessary ifdef around the call.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:23:12 +00:00
Nicolas Pitre
c2607f74aa ARM: 8294/1: ATAG_DTB_COMPAT: remove the DT workspace's hardcoded 64KB size
There is currently a hardcoded limit of 64KB for the DTB to live in and
be extended with ATAG info.  Some DTBs have outgrown that limit:

$ du -b arch/arm/boot/dts/omap3-n900.dtb
70212   arch/arm/boot/dts/omap3-n900.dtb

Furthermore, the actual size passed to atags_to_fdt() included the stack
size which is obviously wrong.

The initial DTB size is known, so use it to size the allocated workspace
with a 50% growth assumption and relocate the temporary stack above that.
This is also clamped to 32KB min / 1MB max for robustness against bad
DTB data.

Reported-by: Pali Rohár <pali.rohar@gmail.com>
Tested-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:23:01 +00:00
Will Deacon
c2273a1853 ARM: 8288/1: dma-mapping: don't detach devices without an IOMMU during teardown
When tearing down the DMA ops for a device via of_dma_deconfigure, we
unconditionally detach the device from its IOMMU domain. For devices
that aren't actually behind an IOMMU, this produces a "Not attached"
warning message on the console.

This patch changes the teardown code so that we don't detach from the
IOMMU domain when there isn't an IOMMU dma mapping to start with.

Reported-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29 15:22:44 +00:00
Michal Simek
3329659df0 ARM: zynq: Simplify SLCR initialization
Based on
"mfd: syscon: Decouple syscon interface from platform devices"
(sha1: bdb0066df9)
SLCR driver can use syscon/regmap drivers directly.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-29 15:38:17 +01:00
Moritz Fischer
bb9cac24d7 ARM: zynq: PM: Fixed simple typo.
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-29 15:38:09 +01:00
Michal Simek
6a4d8f36dd ARM: zynq: Setup default gpio number for Xilinx Zynq
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-29 15:37:38 +01:00
Rob Herring
61dc485b90 ARM: integrator: Convert PCI to use generic config accessors
Convert the integrator PCI driver to use the generic config access
functions.

This changes accesses from __raw_readX/__raw_writeX to readX/writeX
variants.  The spinlock is removed because it is unnecessary.  The config
read and write functions are already protected with a spinlock and no
access can occur during the .pre_init function.

[arnd: remove unused "flags"]
Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
CC: Russell King <linux@arm.linux.org.uk>
CC: linux-arm-kernel@lists.infradead.org
2015-01-29 08:34:42 -06:00
Rob Herring
daeea28793 ARM: dts: versatile: add PCI controller binding
Add the PCI controller node for the Versatile/PB board.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
CC: Russell King <linux@arm.linux.org.uk>
2015-01-29 08:33:03 -06:00
Kai Huang
3b0f1d01e5 KVM: Rename kvm_arch_mmu_write_protect_pt_masked to be more generic for log dirty
We don't have to write protect guest memory for dirty logging if architecture
supports hardware dirty logging, such as PML on VMX, so rename it to be more
generic.

Signed-off-by: Kai Huang <kai.huang@linux.intel.com>
Reviewed-by: Xiao Guangrong <guangrong.xiao@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-01-29 15:30:38 +01:00
Rob Herring
35a8578e8b dts: versatile: Add sysregs node
The Versatile boards have the same sysregs as other ARM Ltd boards. Add
the nodes in order to enable support for 24MHz counter as sched_clock.

This is a minimal node definition as the existing sub node definition
used on VExpress has some issues raised by Linus W.

Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: devicetree@vger.kernel.org
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2015-01-29 14:02:16 +01:00
Daniel Lezcano
468b8c4cf3 clockevents: rockchip: Add rockchip timer for rk3288
The rk3288 board uses the architected timers and these ones are shutdown when
the cpu is powered down. There is a need of a broadcast timer in this case to
ensure proper wakeup when the cpus are in sleep mode and a timer expires.

This driver provides the basic timer functionnality as a backup for the local
timers at sleep time.

The timer belongs to the alive subsystem. It includes two programmables 64 bits
timer channels but the driver only uses 32bits. It works with two operations
mode: free running and user defined count.

Programing sequence:

1. Timer initialization:
 * Disable the timer by writing '0' to the CONTROLREG register
 * Program the timer mode by writing the mode to the CONTROLREG register
 * Set the interrupt mask

2. Setting the count value:
 * Load the count value to the registers COUNT0 and COUNT1 (not used).

3. Enable the timer
 * Write '1' to the CONTROLREG register with the mode (free running or user)

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
2015-01-29 14:02:13 +01:00
Magnus Damm
77cf5166f2 ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds
As of commit 9a1091ef00 ("irqchip: gic: Support hierarchy irq
domain."), the Lager legacy board support is known to be broken.

The IRQ numbers of the GIC are now virtual, and no longer match the
hardcoded hardware IRQ numbers in the legacy platform board code.

To fix this issue specific to non-multiplatform r8a7790 and Lager:
 1) Instantiate the GIC from platform board code and also
 2) Skip over the DT arch timer as well as
 3) Force delay setup based on DT CPU frequency

With these 3 fixes in place interrupts on Lager are now unbroken.

Partially based on legacy GIC fix by Geert Uytterhoeven, thanks to
him for the initial work.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-01-29 17:52:38 +09:00
Magnus Damm
974b072f71 ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds
As of commit 9a1091ef00 ("irqchip: gic: Support hierarchy irq
domain."), the APE6EVM legacy board support is known to be broken.

The IRQ numbers of the GIC are now virtual, and no longer match the
hardcoded hardware IRQ numbers in the legacy platform board code.

To fix this issue specific to non-muliplatform r8a73a4 and APE6EVM:
 1) Instantiate the GIC from platform board code and also
 2) Skip over the DT arch timer as well as
 3) Force delay setup based on DT CPU frequency

With these 3 fixes in place interrupts on APE6EVM are now unbroken.

Partially based on legacy GIC fix by Geert Uytterhoeven, thanks to
him for the initial work.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-01-29 09:34:51 +09:00
Javier Martinez Canillas
ea08de16eb ARM: dts: Add DISP1 power domain for exynos5420
The DISP1 power domain on Exynos5420 SoC includes the FIMD1, MIXER
and HDMI modules. Add a device node for this power domain and mark
these modules as consumer of the DISP1 power domain.

When a power domain is powered on and off, the input clocks of the
devices attached to it are reparented. So a reference to the input
and parent clocks of the devices are needed to manage that.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-01-29 08:52:23 +09:00
Olof Johansson
764e2c70ef The previous fix for Armada XP, disabling I/O coherency, broke Armada
375/38x.  Only switch the PL310 to I/O coherent mode if I/O coherency
 is enabled.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABCAAGBQJUyRueAAoJEOa/DcumaUyEvqAP/AuTbrPtd7LeiZBvCfEBBs+C
 bDT+TjksyMBMZEjQ4OFNQTj4NSLsL4RqfUrfTFkg6RJ0pjviD80saNkfKy8bByPR
 WduY4AhSgks07YI79Nu8cKGUO/iEuxztnCZQWi5b5wNideY9z+Ta3k46Z26VfRwc
 NCQsT2PLKpVmTnIlhi6ilLHsqRAwsV0An+swEyAZXVBAbfKpoWOHxrfR7wVO9oSa
 3dFmnxFcF3/pavtIbL5wIHkGSsjlSi8sdCvieWdf186p8ubuV5TNyuRme0msbaAf
 JBJCNorSepP9vNCb2cCaEOcq+/A/f3NZAX256zGHcyvg6B9Ntq324MVj0sZd+dSo
 nAeJYQvgwD10HvZGj4kCAL11Fc45chnGoo1iPGuxvzF6nKI5liINMnAmU8VPhnZX
 swL3M2k69T14QutS+FbEN/6RGOQAWHZoXQ5YxFwFqei2I7j7g0QJvemwrfFkTwQj
 bPyOE2op6fPpgJyGedM5icU8KesCkORNuu0lRWT9v5rU51epwdna3lcProtuBOA2
 fq/WXb0mC/poyToIEJJZHOLJU7jZy2D+WMKBpu3imiKYBv29qShT9Mah22msySfY
 YY9luHCQMWuT5zVVNFA/SMa8sQbpfxbNngen3iW79WK3LHVP9B6I/dfrn3F/BXXq
 qtYwwNYQqf9kuI0nyy1H
 =qzYQ
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-fixes-3.19-6' of git://git.infradead.org/linux-mvebu into fixes

Merge "mvebu-fixes-6" from Andrew Lunn:

The previous fix for Armada XP, disabling I/O coherency, broke Armada
375/38x.  Only switch the PL310 to I/O coherent mode if I/O coherency
is enabled.

* tag 'mvebu-fixes-3.19-6' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: don't set the PL310 in I/O coherency mode when I/O coherency is disabled

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-28 14:59:33 -08:00
Javier Martinez Canillas
49d3f3ccf4 ARM: multi_v7_defconfig: Enable Exynos5420 Multi-Cluster PM support
The Exynos5420 cluster power management support allowing Exynos
5420/5422/5800 machines to power up and down the secondary CPUs.

Without this option enabled, the secondary CPUs are not brought
up on boot and the following error is shown:

CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x40938e90 - 0x40938f28
ARM CCI driver probed
CPU1: failed to boot: -38
CPU2: failed to boot: -38
CPU3: failed to boot: -38
CPU4: failed to boot: -38
CPU5: failed to boot: -38
CPU6: failed to boot: -38
CPU7: failed to boot: -38
Brought up 1 CPUs

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-28 14:58:25 -08:00
Thomas Petazzoni
dcad68876c ARM: mvebu: don't set the PL310 in I/O coherency mode when I/O coherency is disabled
Since commit f2c3c67f00 (merge commit that adds commit "ARM: mvebu:
completely disable hardware I/O coherency"), we disable I/O coherency
on Armada EBU platforms.

However, we continue to initialize the coherency fabric, because this
coherency fabric is needed on Armada XP for inter-CPU
coherency. Unfortunately, due to this, we also continued to execute
the coherency fabric initialization code for Armada 375/38x, which
switched the PL310 into I/O coherent mode. This has the effect of
disabling the outer cache sync operation: this is needed when I/O
coherency is enabled to work around a PCIe/L2 deadlock. But obviously,
when I/O coherency is disabled, having the outer cache sync operation
is crucial.

Therefore, this commit fixes the armada_375_380_coherency_init() so
that the PL310 is switched to I/O coherent mode only if I/O coherency
is enabled.

Without this fix, all devices using DMA are broken on Armada 375/38x.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Tested-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Cc: <stable@vger.kernel.org> # v3.8+
2015-01-28 11:23:56 -06:00
Tony Lindgren
72d032266b ARM: dts: Fix dm816x pinctrl and syscon so they are children of SCM
Looks like I only got half done with moving pinctrl and syscon to
be children of the SCM. I've set up the FAPLL clocks that way already,
but did not complete the job as I copied the syscon values from
am33xx.dtsi.

To make sure the syscon mapping works, I've verfified that we can
set up davinci_emac mac address the same way as cpsw already does
with the syscon mapping. So let's add that too.

Cc: Brian Hutchinson <b.hutchman@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-28 09:06:18 -08:00
Michal Simek
ab216ac5a2 ARM: zynq: DT: Add aliases node
Add aliases node to DTs.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-28 15:18:32 +01:00
Michal Simek
8f63a0baee ARM: zynq: DT: Fix binding for cadence WDT
Based on:
"devicetree: Add Cadence WDT devicetree bindings documentation"
(sha1: 191891c037)

- compatible string is cdns,wdt-r1p2
- remove device_type property
- remove int reset property (reset-on-timeout is bool)

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Series-to: arm-soc
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-28 15:18:32 +01:00
Soren Brinkmann
0c79b9fefd ARM: zynq: DT: Add pinctrl information to USB nodes
Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-28 15:18:31 +01:00
Soren Brinkmann
38c735f3bd ARM: zynq: DT: Remove bogus value from 'bias-disable' property
In one pinctrl node, a 'bias-disable' property is erroneously assigned a
value.

Fixes: ARM: zynq: DT: Add pinctrl information
Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-28 15:18:22 +01:00
David Vrabel
853d028934 xen/grant-table: pre-populate kernel unmap ops for xen_gnttab_unmap_refs()
When unmapping grants, instead of converting the kernel map ops to
unmap ops on the fly, pre-populate the set of unmap ops.

This allows the grant unmap for the kernel mappings to be trivially
batched in the future.

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2015-01-28 14:03:10 +00:00
Heiko Stuebner
39d05162a5 ARM: dts: rockchip: add rk3288 watchdog clock
Add the clock property for the watchdog on rk3288 socs.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
2015-01-28 11:02:07 +01:00
David S. Miller
95f873f2ff Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
	arch/arm/boot/dts/imx6sx-sdb.dts
	net/sched/cls_bpf.c

Two simple sets of overlapping changes.

Signed-off-by: David S. Miller <davem@davemloft.net>
2015-01-27 16:59:56 -08:00
Olof Johansson
f0ac4f3e06 Basic display nodes for crtcs and hdmi encoder, timer node
for the broadcast timer going through the clocksource tree
 and two new boards, the rk3288-based Firefly and the
 PX2-based Rayeager board (the PX2 is identical to the rk3066
 but made for industrial users).
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABCAAGBQJUyCaJAAoJEPOmecmc0R2By0oH/ioVbVZWYgTWJRlN0Cmjj+yr
 fNnzm93g9N+Uk5PGOjCw70h3QSS65OLdqPF9xJwkSS1p7ORbKmOU3fzAET7x/EYK
 a3Ct4NRPPiSkY12Qg+N4Q9wjz8sgUUHsLSFa5D/QJsyPu+lTVhLgWS4j4mzVCbyz
 PSMn4Tx52OHzLHWKGrnEq33AIMROvarBmOgnvGe7AbutwDYqoiFiPALIAowrp/SR
 WY689+3Gjtha5epUHn9vgUkNABnf0gXR1MBBJ1ZMxgForjZqeSCioHNYomneKOZC
 9zyg4yuv5kNL75PY4aHLwalRfIFrqNM5S5D3gH7CTQg1/TcfUcVCBY0CAKczLxw=
 =nDW6
 -----END PGP SIGNATURE-----

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

Merge "ARM: rockchip: second batch of dts updates for 3.20" from Heiko Stübner:

Basic display nodes for crtcs and hdmi encoder, timer node
for the broadcast timer going through the clocksource tree
and two new boards, the rk3288-based Firefly and the
PX2-based Rayeager board (the PX2 is identical to the rk3066
but made for industrial users).

* tag 'v3.20-rockchip-dts2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: add dts for ChipSPARK Rayeager PX2 board
  ARM: dts: rockchip: add dts for Firefly Firefly-RK3288 boards
  dt-bindings: add vendor prefix and root compatible property for Rockchip boards
  ARM: dts: rockchip: Add rockchip timer node for rk3288
  ARM: dts: rockchip: add rk3288 hdmi nodes
  ARM: dts: rockchip: Add rk3288 vop and display-subsystem

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-27 16:24:08 -08:00
Baruch Siach
e23814da82 ARM: digicolor: add low level debug support
Use the USART peripheral as UART for low level debug. Only the UA0 port is
currently supported.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-27 15:11:51 -08:00
Baruch Siach
df8d742e92 ARM: initial support for Conexant Digicolor CX92755 SoC
Add initial support for the Conexant CX92755 SoC. The CX92755 is one of the
Digicolor series of SoCs, all sharing many of the same peripherals. The code
was tested on the CX92755 evaluation kit, AKA Equinox.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-27 14:56:30 -08:00
Robert Jarzmik
33a5b8838e ARM: pxa: fix broken isa interrupts for zeus and viper
Commit "ARM: pxa: arbitrarily set first interrupt number" broke viper
and zeus boards which still refer to PXA_ISA_IRQ() macro. Redefine
the macro, which declares the legacy interrupts from 0 to 15.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-27 14:53:07 -08:00
Linus Torvalds
59343cd7c4 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull networking fixes from David Miller:

 1) Don't OOPS on socket AIO, from Christoph Hellwig.

 2) Scheduled scans should be aborted upon RFKILL, from Emmanuel
    Grumbach.

 3) Fix sleep in atomic context in kvaser_usb, from Ahmed S Darwish.

 4) Fix RCU locking across copy_to_user() in bpf code, from Alexei
    Starovoitov.

 5) Lots of crash, memory leak, short TX packet et al bug fixes in
    sh_eth from Ben Hutchings.

 6) Fix memory corruption in SCTP wrt.  INIT collitions, from Daniel
    Borkmann.

 7) Fix return value logic for poll handlers in netxen, enic, and bnx2x.
    From Eric Dumazet and Govindarajulu Varadarajan.

 8) Header length calculation fix in mac80211 from Fred Chou.

 9) mv643xx_eth doesn't handle highmem correctly in non-TSO code paths.
    From Ezequiel Garcia.

10) udp_diag has bogus logic in it's hash chain skipping, copy same fix
    tcp diag used.  From Herbert Xu.

11) amd-xgbe programs wrong rx flow control register, from Thomas
    Lendacky.

12) Fix race leading to use after free in ping receive path, from Subash
    Abhinov Kasiviswanathan.

13) Cache redirect routes otherwise we can get a heavy backlog of rcu
    jobs liberating DST_NOCACHE entries.  From Hannes Frederic Sowa.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (48 commits)
  net: don't OOPS on socket aio
  stmmac: prevent probe drivers to crash kernel
  bnx2x: fix napi poll return value for repoll
  ipv6: replacing a rt6_info needs to purge possible propagated rt6_infos too
  sh_eth: Fix DMA-API usage for RX buffers
  sh_eth: Check for DMA mapping errors on transmit
  sh_eth: Ensure DMA engines are stopped before freeing buffers
  sh_eth: Remove RX overflow log messages
  ping: Fix race in free in receive path
  udp_diag: Fix socket skipping within chain
  can: kvaser_usb: Fix state handling upon BUS_ERROR events
  can: kvaser_usb: Retry the first bulk transfer on -ETIMEDOUT
  can: kvaser_usb: Send correct context to URB completion
  can: kvaser_usb: Do not sleep in atomic context
  ipv4: try to cache dst_entries which would cause a redirect
  samples: bpf: relax test_maps check
  bpf: rcu lock must not be held when calling copy_to_user()
  net: sctp: fix slab corruption from use after free on INIT collisions
  net: mv643xx_eth: Fix highmem support in non-TSO egress path
  sh_eth: Fix serialisation of interrupt disable with interrupt & NAPI handlers
  ...
2015-01-27 13:55:36 -08:00
Olof Johansson
ed1bd46bee Patches to add necessary SoC related clockdomain and interconnect
data  to make dm816x boot with basic devices. This finally gets
 dm816x into a usable shape for further work to happen after a few
 years of stalled effort of making this SoC to work with the mainline
 kernel.
 
 As most of the devices are similar to the other omap variants, we
 get at least serial, MMC, Ethernet, I2C, EDMA, pinctrl, SPI and GPMC
 working for these SoCs with the related device tree changes.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUxn4KAAoJEBvUPslcq6VzV9sP/2MHuTxTTVKyApk6jSNjJIqE
 02I08N7eMc/b46Ct3X4zzIne+k0k1p/gBUx1o4oWyq/L3O21QpMHMEV4wDknF9PO
 oUsyFB5psv6SScH6zA20CjWHJ3DSmbUEHeccy5TFeUFIjpfnSnzOfipE/x+A2q8F
 nccZ+oEDh2BA7EXE1WYu5+rxJJo6YB8WNKy8XTDxoeBaOapblDMGqPL2AlBdwaoH
 2P6gd0V2HWHb99ajp5edyvXJeMQ1jF3ztygoePuYyCNm5EgeZukeAECuh5i3vqL+
 a2P4snRJwJAp2y45DWKJaUW89H25mQ9ZF9N4ZmgUOrkv6IoWmC+qtL9iQxlBgiZa
 3pA31jkQCUbwxTYSbthqnuoJynGw9joxiR0FSJyIzYrqQPQC6byrvNr6Moue4GFy
 8D5gjwYBrd9J7h6fetjnRlTcnxBdtXablut1RiglS7SorNfHh4Ty/BGNH/QLvQkS
 /Z1krJ5zVlSt4KRFF4Fx3nIEu4/t3N3fiLRY3IDoelKNc8ghYGmZHT7LnQ5OKyAW
 2leBIhjzgJUkukXYgQiQfgM8LlOnLDjcUa3u++C5dJvu2tw7dUeie+kjkwNg4k79
 +cxdQpP6y3n6O5hWryoC3Odj4EvbTSX9izNNnaGKtFTl3drOe91ZX1gksFUh0ueJ
 RBTfzA6MqAscqk7CQ9ch
 =tGOy
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.20/dm816x-data' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc

Merge "omap changes to make dm816x usable" from Tony Lindgren:

Patches to add necessary SoC related clockdomain and interconnect
data  to make dm816x boot with basic devices. This finally gets
dm816x into a usable shape for further work to happen after a few
years of stalled effort of making this SoC to work with the mainline
kernel.

As most of the devices are similar to the other omap variants, we
get at least serial, MMC, Ethernet, I2C, EDMA, pinctrl, SPI and GPMC
working for these SoCs with the related device tree changes.

* tag 'omap-for-v3.20/dm816x-data' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2+: Add dm816x hwmod support
  ARM: OMAP2+: Add clock domain support for dm816x
  ARM: OMAP2+: Add board-generic.c entry for ti81xx
  ARM: OMAP2+: Disable omap3 PM init for ti81xx
  ARM: OMAP2+: Fix reboot for 81xx
  ARM: OMAP2+: Fix dm814 and dm816 for clocks and timer init
  ARM: OMAP2+: Fix ti81xx class type
  ARM: OMAP2+: Fix ti81xx devtype
  ARM: OMAP2+: Fix error handling for omap2_clk_enable_init_clocks

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-26 20:29:58 -08:00
Olof Johansson
d846c1a63f Non-critical fixes for omap hwmod code via Paul Walmsley <paul@pwsan.com>:
First set of OMAP2+ hwmod patches for Linux v3.20.  These are mostly
 fixes for warnings, although there's one DRA7xx patch that fixes
 CONFIG_DEBUG_LL for AM572x/DRA7xx SoCs that use UART3 for console,
 such as the BeagleBoard-X15.
 
 These patches entered Linux-next starting with the next-20150121 tag.
 
 Basic build, boot, and PM test results can be found here:
 
 http://www.pwsan.com/omap/testlogs/omap-hwmod-a-for-v3.20/20150121142621/
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUxqwlAAoJEBvUPslcq6VzNyUP+gP/MbuwUsVAQjEWqITzuXQU
 KMBMU5M5fJcUs8IQiSCkhohCk2PiPlvUFr0ghN6ELKACFkdZwM3MEU2HU/joCM0t
 RdoQrlU35IyiAlsPt4EjMepHus+nN7u5vOBHrSmatF2GFVi0yrQfG+XxLmvqXQof
 DxrzbRm2T4R8MQ6rWOUmawe8lzTphEKv5EfEmUEqVamMIZysEq65tUFRoPZHZ7sf
 rQt8UlSNUVER7OtwEX5H0fhhYl1Gstc8aNX0qIIylP8V09TOZcr3DAn3nbx+31MD
 96XjADbLGS6b7Ke9UiQz6cLQIMSVuEg9BoUnDT+JEmrcuj4XwQT0+59Vtk7L2Wxl
 j0a3mkuwtIkShvNV3I1rMwKY5BriZrFMTrworvtnLEUUI57MamAX6gH+bme0I5CX
 DnEL5Ung/Klp83/r/ye8o/Hy+zcyKD3QboONSr6KDvNnmFuxcS8enOGwUfZdfNCT
 /8+TdPHt39BMp5VwpzBooPvgncFG29L6plwQjYQ2NB4MnggSPE6r4/gSXJmsZegA
 MStZwpvVLK34lNWjx9td5ouR8+A9gXuPeGx0xHvfOpDGdaDkycpT3i6YozBmET80
 mEC2z+8r0bG64jiYlZz8gQoSzTdK9dzdze+Zo4c4qWzXfRG+bRicyr1FEn9DGH75
 eyVzTYLJoIgz7btW+3mS
 =2Zfx
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.20/fixes-not-urgent-pt2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/fixes-non-critical

Merge "omap non-urgent fixes for v3.20, part 2" from Tony Lindgren:

Non-critical fixes for omap hwmod code via Paul Walmsley <paul@pwsan.com>:

First set of OMAP2+ hwmod patches for Linux v3.20.  These are mostly
fixes for warnings, although there's one DRA7xx patch that fixes
CONFIG_DEBUG_LL for AM572x/DRA7xx SoCs that use UART3 for console,
such as the BeagleBoard-X15.

These patches entered Linux-next starting with the next-20150121 tag.

Basic build, boot, and PM test results can be found here:

http://www.pwsan.com/omap/testlogs/omap-hwmod-a-for-v3.20/20150121142621/

* tag 'omap-for-v3.20/fixes-not-urgent-pt2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: DRA7: hwmod: Fix boot crash with DEBUG_LL enabled on UART3
  ARM: OMAP: DRA7: hwmod: Make gpmc software supervised as the smart idle is broken
  ARM: AM43xx: hwmod: set DSS submodule parent hwmods
  ARM: OMAP2+: hwmod: print error if wait_target_ready() failed
  MAINTAINERS: add maintainer for OMAP hwmod data

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-26 20:28:20 -08:00
Olof Johansson
9a5074ff59 Second DT batch for 3.20:
- correct some pin configuration for at91sam9x5ek
 - add pioD on sama5d4 following a modification of pinctrl driver
 - add more precise nand compatibility string for sama5d4
 - audio modifications for wm8904 or ac97
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUxmgWAAoJEAf03oE53VmQtCoIAJtnUtvW5DqRWWsAzKxv6tPF
 FLXihD9MRPyywgN5hDvNInKibqcBNxnLfk0xiFbCbfZXU4u6SK1E5iJN72mkTxhP
 6rC/rdMDqMqGK7W43h4xFFpQdPrrq00t36gGvnQ+IUaOYcGAByJPYB3YwKMv/n0x
 xHTPhydb2RPphEd9ZaXsbUKcaOJPG/6uChQSTp+8L0MAlh4cQADya1SapDhRefDa
 PFz49N8QIjxgjWyJiWorcD8KH8hkGzLtvuvDl3UWkNZz9i3h7Vl3QaraC3HCHqwm
 kJrOJ/EVw1uJKAKtYoo9xfoA8Z5HHno3vcQ4gKq4ylYDHIB3P4UhQLaGlcqkZfk=
 =yOLr
 -----END PGP SIGNATURE-----

Merge tag 'at91-dt2' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91 into next/dt

Merge "at91: dt for 3.20 #2" from Nicolas Ferre:

Second DT batch for 3.20:
- correct some pin configuration for at91sam9x5ek
- add pioD on sama5d4 following a modification of pinctrl driver
- add more precise nand compatibility string for sama5d4
- audio modifications for wm8904 or ac97

* tag 'at91-dt2' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91:
  ARM: at91/dt: sam9263: Add ac97 device node
  dt: atmel_ac97c: Add device tree documentation
  ARM: at91: at91sam9n12ek/dt: use dt ids for wm8904
  ARM: at91: sama5d3xek/dt: use dt ids for wm8904
  ARM: at91: sama5d4: dts: change the nand compatible string
  ARM: at91/dt: sama5d4: add pioD controller
  ARM: at91/dt: disable pull-up on vbus-gpio (PB16) to reduce power consumption

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-26 20:26:34 -08:00