Merge in Linus' tree with:
fa81511bb0 x86-64, modify_ldt: Make support for 16-bit segments a runtime option
... reverted, to avoid a conflict. This commit is no longer necessary
with the proper fix in place.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Merge "ARM: tegra: defconfig updates for 3.16" from Stephen Warren:
AT24C EEPROM:
This is used for the board ID EEPROM on Jetson TK1, as well as likely
a whole slew of other NVIDIA reference boards; we simply haven't added
enabled the EEPROM in the DT files until now.
MTD_SPI_NOR:
This defconfig contains the CONFIG_M25P80 symbol, which is now
dependent on the MTD_SPI_NOR symbol. Add CONFIG_MTD_SPI_NOR to satisfy
the new dependency.
FRAMEBUFFER_CONSOLE_ROTATION:
Needed for devices like Tegra Note 7 and NVIDIA SHIELD to get the boot
console in the expected orientation.
CAN*, RTC_DRV_DS1307:
Toradex Colibri Evaluation Board uses the DS1307 RTC and the MCP251x CAN
controller. The NVIDIA Tegra 3 based Colibri T30 module can be used on
this carrier board.
Furthermore the NVIDIA Tegra 3 based Apalis T30 module too contains two
MCP251x CAN controllers.
INPUT_JOYDEV:
NVIDIA SHIELD embeds a USB joystick device.
* tag 'tegra-for-3.16-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
ARM: tegra: tegra_defconfig updates
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "ARM: tegra: core code changes for 3.16" from Stephen Warren:
This branch contains just a single patch this time around. Thierry
enhanced Tegra's restart code to allow programming PMC scratch registers
to request specific behaviour after reboot. One of the most useful
options for mainline software is the ability to reboot directly into USB
recovery mode, which e.g. allows the bootloader to be reflashed.
* tag 'tegra-for-3.16-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
ARM: tegra: Support reboot modes
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "ARM: imx: device tree changes for 3.16" from Shawn Guo:
i.MX device tree changes for 3.16:
- New board support: imx35-pdk, imx51-digi-connectcore, imx6dl-phytec,
imx6dl-riotboard, and vf610-colibri.
- Improve device tree support for imx51-babbage and eukrea-cpuimx51 to
get the same level support as board files, so that we can kill the
board files.
- Quite some updates on imx27-phytec-phycore board support from
Alexander Shiyan
- Enable USB, sound and touchscreen on the eukrea imx25/35/51 boards,
from Denis Carikli
- Quite a lot of patches from Fabio Estevam, updating Freescale
imx25-pdk and imx27-pdk board support
- Correct USB device configuration for imx25/35
- Fixes i2c4 device node in imx6dl.dtsi regarding to compatible string
and clock data
- Enable HDMI, TVE, LVDS display support on a bunch of imx5/6 boards
- Update PCIe to the new binding and enable PCIe support on
imx6qdl-sabresd board
- A couple of imx6q-dmo-edmqmx6 updates from Lucas Stach, adding pfuze
irq gpio and SPI flash
- Enable CODA7541 VPU for i.MX53
- A series of updates on imx6qdl-phytec boards from Philipp Zabel
- Small cleanups and fixes on board imx28-duckbill - Michael Heimpold
- Add stdout-path property to i.MX boards
- Karo TX25 board updates from Sascha Hauer
- Enable pwm and sdhc devices for board vf610-twr
* tag 'imx-dt-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (105 commits)
ARM: dts: imx35-pdk: Fix memory region description
ARM: dts: imx51-eukrea-mbimxsd51-baseboard: Add CAN support
ARM: dts: imx6: add new board RIoTboard
ARM: dts: imx6: i2c4 cleanup
ARM: dts: imx6: edmqmx6: add vcc and vio power supplies to stmpe
ARM: dts: Karo TX25: use hardware ecc
ARM: dts: Karo TX25: Add phy reset gpio and supply for FEC
ARM: dts: Karo TX25: Add pinctrl nodes
ARM: dts: i.MX25: Add IRAM node
ARM: dts: i.MX25: Add mmc aliases
ARM: dts: i.MX51 babbage: Fix FEC pad ctrl settings
ARM: dts: imx6qdl-sabresd: Add USDHC4 support
ARM: imx: add HDMI support for SolidRun HummingBoard and Cubox-i
ARM: dts: imx6: edmqmx6: add SPI bus and flash
ARM: dts: imx6: edmqmx6: add pinctrl for pfuze irq gpio
ARM: dts: imx6q-udoo: Add HDMI support
ARM: dts: Add stdout-path property to i.MX boards
ARM: dts: imx: Fix LVDS mapping for Ventana GW52xx
ARM: dts: imx: add LVDS backlight for Ventana
ARM: dts: imx6qdl-sabresd: remove power-on gpio from pcie
...
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "ARM: imx: soc changes for 3.16" from Shawn Guo:
i.MX SoC changes for 3.16:
- A few cleanups on mx21ads board file, which should make the later
conversion to DT a little bit easier.
- Add some missing clocks and drop unused clk lookups for i.MX1 and
i.MX27 clock drivers
- Add initial i.MX SoloX (imx6sx) SoC support
- Remove mx51_babbage and mach-cpuimx51sd board files, as the
equivalent DT support is ready for the boards
- Clean up device tree timer initialization a little bit
- Add missing i2c4 clock for i.MX6 DualLite/Solo
- Add missing CKO clock i.MX25
- Add shared gate clock support for i.MX specific clk_gate2
- Add low-level debug support for SoC VF610
- Some random code cleanups and defconfig updates
* tag 'imx-soc-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (33 commits)
ARM: mx25: Add CLKO support
ARM: i.MX1 clk: Remove clk_register_clkdev() for unused clocks
ARM: i.MX1 clk: Add missing clocks
ARM: imx: add basic imx6sx SoC support
ARM: imx: add clock driver for imx6sx
ARM: imx: add low-level debug support for imx6sx
ARM: mx51: Remove mach-cpuimx51sd board file
ARM: i.MX: Setup IRQ handler from IRQ driver
ARM: i.MX27 pca100: remove deprecated IRQF_DISABLED
ARM: imx/mxs defconfigs: add MTD_SPI_NOR (new dependency for M25P80)
ARM: i.MX: Fix eMMa PrP resource size
ARM: imx_v4_v5_defconfig: drop CONFIG_COMMON_CLK_DEBUG option
ARM: i.MX27 clk: Remove clk_register_clkdev() for unused clocks
ARM: i.MX27 clk: Add missing clocks for MSHC and RTIC
ARM: imx6q: add the missing esai_ahb clock
ARM: imx: add shared gate clock support
ARM: imx: lock is always valid for clk_gate2
ARM: imx: define struct clk_gate2 on our own
ARM: i.MX: Remove #ifdef CONFIG_OF
ARM: imx_v6_v7_defconfig: enable option CONFIG_LOCALVERSION_AUTO
...
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "Allwinner defconfig additions for 3.16" from Maxime Ripard.
* tag 'sunxi-defconfig-for-3.16' of https://github.com/mripard/linux:
ARM: sunxi: drop CONFIG_COMMON_CLK_DEBUG
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "Allwinner DT additions for 3.16" from Maxime Ripard:
- Introduction of the MMC controlers
- New board: A10s R7, Mele M9, APP4-EVB1
- Enabled the PMU on the Cortex A7-based SoCs
* tag 'sunxi-dt-for-3.16' of https://github.com/mripard/linux: (38 commits)
ARM: sunxi: dt: declare the r_pio pin controller for A31 SoC
ARM: sunxi: dt: add PRCM clk and reset controller subdevices
ARM: sunxi: dt: add APP4-EVB1 board support
ARM: sun6i: dt: Add support for the USB controllers
ARM: sun6i: Add the USB clocks to the DTSI
ARM: dts: sun5i: Add new A10s r7 hdmi tv dongle board
ARM: dts: sun7i: Add reg_vcc3v3 to sun7i board mmc nodes
ARM: dts: sun6i: Add reg_vcc3v3 to sun6i board mmc nodes
ARM: dts: sun5i: Add reg_vcc3v3 to sun5i board mmc nodes
ARM: dts: sun4i: Add reg_vcc3v3 to sun4i board mmc nodes
ARM: dts: sunxi: Add reg_vcc3v3 supply to sunxi-common-regulators.dtsi
ARM: dts: sun7i: Add basic support for the Cubietruck WiFi module
ARM: dts: sun7i: Enable mmc controller on various A20 boards
ARM: dts: sun7i: Add pin-muxing info for the mmc controllers
ARM: dts: sun7i: Add mmc controller nodes
ARM: dts: sun6i: Add new sun6i-a31-m9 dts file for Mele M9
ARM: dts: sun6i: Add mmc controller nodes
ARM: dts: sun6i: Add mmc clocks
ARM: dts: sun5i: Enable mmc controller on various A10s and A13 boards
ARM: dts: sun5i: Add mmc controller nodes
...
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "Allwinner SoCs core additions for 3.16" from Maxime Ripard:
Refactor the Kconfig options to have one Kconfig option per machine.
* tag 'sunxi-core-for-3.16' of https://github.com/mripard/linux:
ARM: sunxi: select MFD_SUN6I_PRCM when sun6i arch support is enabled
ARM: sunxi: Split the various SoCs support in Kconfig
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "Renesas ARM Based r7s72100 SoC CCF Updates for v3.16" from Simon Horman:
r7s72100 (RZ/A1H) SoC and its Genmai board
* Add and use CCF support
* Initislise SCIF, I2C and SPI via DT
* tag 'renesas-r7s72100-ccf-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
ARM: shmobile: r7s72100: use workaround for non DT-clocks
ARM: shmobile: Add forward declaration of struct clk to silence warning
ARM: shmobile: r7s72100: remove SPI DT clocks from legacy clock support
ARM: shmobile: r7s72100: add spi clocks to dtsi
ARM: shmobile: r7s72100: remove I2C DT clocks from legacy clock support
ARM: shmobile: r7s72100: add i2c clocks to dtsi
ARM: shmobile: r7s72100: genmai: platform scif devices only for legacy support
ARM: shmobile: r7s72100: genmai: add uart alias and activate scif2 as console
ARM: shmobile: r7s72100: add scif nodes to dtsi
ARM: shmobile: r7s72100: genmai: populate nodes for external clocks
ARM: shmobile: r7s72100: add essential clock nodes to dtsi
ARM: shmobile: r7s72100: document MSTP clock support
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "Renesas ARM Based SoC dt-scif Updates for v3.16" from Simon Horman:
r8a7791 (R-Car M2) based Koelsch board and
r8a7790 (R-Car H1) based Lager board
* Enable SCIF0 and SCIF1 serial ports in DT
* tag 'renesas-dt-scif-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
ARM: shmobile: koelsch: Enable SCIF0 and SCIF1 serial ports in DT
ARM: shmobile: lager: Enable SCIF0 and SCIF1 serial ports in DT
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "ARM Versatile Express updates for 3.16" from Pawel Moll:
This series reworks VE's platform configuration infrastructure by:
- making it possible to instantiate selected devices from the
Device Tree, prior to massive population,
- converting custom "func" API into standard "regmap",
- splitting the existing MFD driver into smaller ones and placing
them into relevant directories.
The common clock framework driver can now be selected individually
(mostly for arm64 sake, where some of them are not used at all).
It also simplifies the machine code, by:
- moving the shed clock info clocksource driver,
- simplifying SMP operations to base them entirely of the DT data,
- moving platform ID checks into relevant driver.
* tag 'vexpress/updates-for-3.16' of git://git.linaro.org/people/pawel.moll/linux:
ARM: vexpress: move HBI check to sysreg driver
ARM: vexpress: Simplify SMP operations for DT-powered system
ARM: vexpress: remove redundant vexpress_dt_cpus_num to get cpu count
clocksource: Sched clock source for Versatile Express
clk: versatile: Split config options for sp810 and vexpress_osc
mfd: vexpress: Define the device as MFD cells
mfd: syscon: Add platform data with a regmap config name
mfd: vexpress: Convert custom func API to regmap
of: Keep track of populated platform devices
+ Linux 3.15-rc5
Signed-off-by: Olof Johansson <olof@lixom.net>
Merge "Renesas SoC Clock Cleanups for v3.16" from Simon Horman:
Work from Laurent Pinchart to switch all Renesas platforms to the new style
CMT, MTU2 and TMU device platform data. This is in preparation for
initialising these devices using DT on ARM Based Renesas SoCs.
* tag 'renesas-clock-cleanup2-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
ARM: shmobile: r7s72100: Switch to new style MTU2 device
sh: Switch to new style MTU2 device
ARM: shmobile: r8a7779: Switch to new style TMU device
ARM: shmobile: r8a7778: Switch to new style TMU device
ARM: shmobile: r8a7740: Switch to new style TMU device
ARM: shmobile: sh73a0: Switch to new style TMU device
ARM: shmobile: sh7372: Switch to new style TMU device
sh: Switch to new style TMU device
ARM: shmobile: r8a7791: Switch to new style CMT device
ARM: shmobile: r8a7790: Switch to new style CMT device
ARM: shmobile: r8a7740: Switch to new style CMT device
ARM: shmobile: r8a73a4: Switch to new style CMT device
ARM: shmobile: sh73a0: Switch to new style CMT device
ARM: shmobile: sh7372: Switch to new style CMT device
sh: Switch to new style CMT device
Signed-off-by: Olof Johansson <olof@lixom.net>
Pull two powerpc fixes from Ben Herrenschmidt:
"Here are a couple of fixes for 3.15. One from Anton fixes a nasty
regression I introduced when trying to fix a loss of irq_work whose
consequences is that we can completely lose timer interrupts on a
CPU... not pretty.
The other one is a change to our PCIe reset hook to use a firmware
call instead of direct config space accesses to trigger a fundamental
reset on the root port. This is necessary so that the FW gets a
chance to disable the link down error monitoring, which would
otherwise trip and cause subsequent fatal EEH error"
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
powerpc: irq work racing with timer interrupt can result in timer interrupt hang
powerpc/powernv: Reset root port in firmware
Pull renameat2 arch support from Miklos Szeredi:
"I've collected architecture patches for the renameat2 syscall that
maintainers acked and/or asked me to queue.
This adds architecture support for the renameat2 syscall to m68k,
parisc, ia64 and through asm-generic to arc, arm64, c6x, hexagon,
metag, openrisc, score, tile, unicore32"
* 'renameat2' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
scripts/checksyscalls.sh: Make renameat optional
asm-generic: Add renameat2 syscall
ia64: add renameat2 syscall
parisc: add renameat2 syscall
m68k: add renameat2 syscall
The BIOS is supposed to provide ACPI _PXM methods for PCI host bridges if
it cares about platform topology. But some BIOSes do not, so add Fam15h
to the list of CPUs for which we fall back to reading node numbers from the
hardware.
Note that pci_acpi_scan_root() warns about the BIOS bug if we use this
information because (1) the hardware node numbers are not necessarily
compatible with other logical node numbers from ACPI, and (2) the lack of
_PXM forces OS updates that would not otherwise be required.
[bhelgaas: changelog, comments]
Link: https://bugzilla.kernel.org/show_bug.cgi?id=72051
Tested-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@amd.com>
Signed-off-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
Signed-off-by: Myron Stowe <myron.stowe@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Cc: Borislav Petkov <bp@suse.de>
Cc: Robert Richter <rric@kernel.org>
Cc: Daniel J Blueman <daniel@numascale.com>
Cc: Andreas Herrmann <herrmann.der.user@googlemail.com>
The vast majority of platforms are not supplying ACPI _PXM (proximity)
information corresponding to host bridge (PNP0A03/PNP0A08) devices
resulting in sysfs "numa_node" values of -1 (NUMA_NO_NODE):
# for i in /sys/devices/pci0000\:00/*/numa_node; do cat $i; done | uniq
-1
# find /sys/ -name "numa_node" | while read fname; do cat $fname; \
done | uniq
-1
AMD based platforms provide a fall-back for this situation via amd_bus.c.
These platforms snoop out the information by directly reading specific
registers from the Northbridge and caching them via alloc_pci_root_info().
Later during boot processing when host bridges are discovered -
pci_acpi_scan_root() - the kernel looks for their corresponding ACPI _PXM
method - drivers/acpi/numa.c::acpi_get_node(). If the BIOS supplied a _PXM
method then that node (proximity) value is associated. If the BIOS did not
supply a _PXM method *and* the platform is AMD-based, the fall-back cached
values obtained directly from the Northbridge are used; otherwise,
"NUMA_NO_NODE" is associated.
There are a number of issues with this fall-back mechanism the most notable
being that amd_bus.c extracts a 3-bit number from a CPU register and uses
it as the node number. The node numbers used by Linux are logical and
there's no reason they need to be identical to settings in the CPU
registers. So if we have some node information obtained in the normal way
(from _PXM, SLIT, SRAT, etc.) and some from amd_bus.c, there's no reason to
believe they will be compatible.
This patch warns when this situation occurs:
pci_root PNP0A08:00: [Firmware Bug]: no _PXM; falling back to node 0 from hardware (may be inconsistent with ACPI node numbers)
Link: https://bugzilla.kernel.org/show_bug.cgi?id=72051
Signed-off-by: Myron Stowe <myron.stowe@redhat.com>
Signed-off-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
There are two LEDs available on the B2020 RevE board, one red, one
green. In this patch we enable the red one for "heartbeat" and turn
the green one off.
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
The B2020 RevE differs from the other B2020 boards in a few subtle ways;
including the Ethernet reset GPIO which this patch adds support for and
the LED wiring which will follow in a latter patch. Without supplying
these differences Ethernet and the board LEDs simply will not work.
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
Interconnect clocks are not yet managed at the init, then
we have to start the kernel with clk_ignore_unused.
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
B2120 HDK is the reference board for STiH407 SoC.
It has the following characteristics:
- 1GB DDR3
- 8GB eMMC / SD-Card slot
- 32MB NOR Flash
- 1 x Gbit Ethernet
- 1 x USB 3.0 port
- 1 x Mini-PCIe
- 1 x SATA
- 1 x HDMI output
- 1 x HDMI input
- 1 x SPDIF
This patch only introduces basic functionnalities, such as I2C and UART.
Acked-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Acked-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
The compatible strings have to be ordered from specific to generic.
This patch fixes this for STi boards, which did the exact opposite.
Cc: Olof Johansson <olof@lixom.net>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
asid_cache must be unsigned long otherwise on 64 bit systems it will
become 0 if the value in get_new_mmu_context() reaches 0xffffffff and
in the end the assumption of ASID_FIRST_VERSION is not true anymore
thus leads to more dangerous things.
Initial patch by Yong Zhang <yong.zhang@windriver.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Reported-by: libin <huawei.libin@huawei.com>
Pull staging driver fixes from Greg KH:
"Here are five staging driver fixes for 3.15-rc6 that resolve some
reported issues. They are for the imx and rtl8723au drivers"
* tag 'staging-3.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
staging: rtl8723au: Do not reset wdev->iftype in netdev_close()
staging: rtl8723au: Use correct pipe type for USB interrupts
imx-drm: imx-tve: correct DDC property name to 'ddc-i2c-bus'
imx-drm: imx-drm-core: skip components whose parent device is disabled
imx-drm: imx-drm-core: fix imx_drm_encoder_get_mux_id
Pull crypto fixes from Herbert Xu:
"This fixes a NULL pointer dereference on allocation failure in caam,
as well as a regression in the ctr mode on s390 that was added with
the recent concurrency fixes"
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
crypto: s390 - fix aes,des ctr mode concurrency finding.
crypto: caam - add allocation failure handling in SPRINTFCAT macro
Most of these tests should be runtime tests. This also finally means
that on a MIPS III systems MIPS IV opcodes are going to result in an
exception as they're supposed to.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>