diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-02-15 18:01:33 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-02-15 18:01:33 -0500 |
| commit | 83660b734bbbae4f15c1a9b14d0514d74f79dfd4 (patch) | |
| tree | a1545fb6a23ae103f4e8d8d91e65fa65f2ba1fed | |
| parent | ca033390a537dacdc2127c66d62e7862ad15ffdb (diff) | |
| parent | 31fd8f5b89f22a88940a9838dfd1564f3d440247 (diff) | |
Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC fixes from Kevin Hilman:
"A collection of ARM SoC fixes for v3.14-rc1.
Mostly a collection of Kconfig, device tree data and compilation fixes
along with fix to drivers/phy that fixes a boot regression on some
Marvell mvebu platforms"
* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
dma: mv_xor: Silence a bunch of LPAE-related warnings
ARM: ux500: disable msp2 device tree node
ARM: zynq: Reserve not DMAable space in front of the kernel
ARM: multi_v7_defconfig: Select CONFIG_SOC_DRA7XX
ARM: imx6: Initialize low-power mode early again
ARM: pxa: fix various compilation problems
ARM: pxa: fix compilation problem on AM300EPD board
ARM: at91: add Atmel's SAMA5D3 Xplained board
spi/atmel: document clock properties
mmc: atmel-mci: document clock properties
ARM: at91: enable USB host on at91sam9n12ek board
ARM: at91/dt: fix sama5d3 ohci hclk clock reference
ARM: at91/dt: sam9263: fix compatibility string for the I2C
ata: sata_mv: Fix probe failures with optional phys
drivers: phy: Add support for optional phys
drivers: phy: Make NULL a valid phy reference
ARM: fix HAVE_ARM_TWD selection for OMAP and shmobile
ARM: moxart: move DMA_OF selection to driver
ARM: hisi: fix kconfig warning on HAVE_ARM_TWD
39 files changed, 408 insertions, 33 deletions
diff --git a/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt b/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt index 0a85c70cd30a..07ad02075a93 100644 --- a/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt +++ b/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt | |||
| @@ -13,6 +13,9 @@ Required properties: | |||
| 13 | - #address-cells: should be one. The cell is the slot id. | 13 | - #address-cells: should be one. The cell is the slot id. |
| 14 | - #size-cells: should be zero. | 14 | - #size-cells: should be zero. |
| 15 | - at least one slot node | 15 | - at least one slot node |
| 16 | - clock-names: tuple listing input clock names. | ||
| 17 | Required elements: "mci_clk" | ||
| 18 | - clocks: phandles to input clocks. | ||
| 16 | 19 | ||
| 17 | The node contains child nodes for each slot that the platform uses | 20 | The node contains child nodes for each slot that the platform uses |
| 18 | 21 | ||
| @@ -24,6 +27,8 @@ mmc0: mmc@f0008000 { | |||
| 24 | interrupts = <12 4>; | 27 | interrupts = <12 4>; |
| 25 | #address-cells = <1>; | 28 | #address-cells = <1>; |
| 26 | #size-cells = <0>; | 29 | #size-cells = <0>; |
| 30 | clock-names = "mci_clk"; | ||
| 31 | clocks = <&mci0_clk>; | ||
| 27 | 32 | ||
| 28 | [ child node definitions...] | 33 | [ child node definitions...] |
| 29 | }; | 34 | }; |
diff --git a/Documentation/devicetree/bindings/spi/spi_atmel.txt b/Documentation/devicetree/bindings/spi/spi_atmel.txt index 07e04cdc0c9e..4f8184d069cb 100644 --- a/Documentation/devicetree/bindings/spi/spi_atmel.txt +++ b/Documentation/devicetree/bindings/spi/spi_atmel.txt | |||
| @@ -5,6 +5,9 @@ Required properties: | |||
| 5 | - reg: Address and length of the register set for the device | 5 | - reg: Address and length of the register set for the device |
| 6 | - interrupts: Should contain spi interrupt | 6 | - interrupts: Should contain spi interrupt |
| 7 | - cs-gpios: chipselects | 7 | - cs-gpios: chipselects |
| 8 | - clock-names: tuple listing input clock names. | ||
| 9 | Required elements: "spi_clk" | ||
| 10 | - clocks: phandles to input clocks. | ||
| 8 | 11 | ||
| 9 | Example: | 12 | Example: |
| 10 | 13 | ||
| @@ -14,6 +17,8 @@ spi1: spi@fffcc000 { | |||
| 14 | interrupts = <13 4 5>; | 17 | interrupts = <13 4 5>; |
| 15 | #address-cells = <1>; | 18 | #address-cells = <1>; |
| 16 | #size-cells = <0>; | 19 | #size-cells = <0>; |
| 20 | clocks = <&spi1_clk>; | ||
| 21 | clock-names = "spi_clk"; | ||
| 17 | cs-gpios = <&pioB 3 0>; | 22 | cs-gpios = <&pioB 3 0>; |
| 18 | status = "okay"; | 23 | status = "okay"; |
| 19 | 24 | ||
diff --git a/Documentation/phy.txt b/Documentation/phy.txt index 0103e4b15b0e..ebff6ee52441 100644 --- a/Documentation/phy.txt +++ b/Documentation/phy.txt | |||
| @@ -75,14 +75,26 @@ Before the controller can make use of the PHY, it has to get a reference to | |||
| 75 | it. This framework provides the following APIs to get a reference to the PHY. | 75 | it. This framework provides the following APIs to get a reference to the PHY. |
| 76 | 76 | ||
| 77 | struct phy *phy_get(struct device *dev, const char *string); | 77 | struct phy *phy_get(struct device *dev, const char *string); |
| 78 | struct phy *phy_optional_get(struct device *dev, const char *string); | ||
| 78 | struct phy *devm_phy_get(struct device *dev, const char *string); | 79 | struct phy *devm_phy_get(struct device *dev, const char *string); |
| 79 | 80 | struct phy *devm_phy_optional_get(struct device *dev, const char *string); | |
| 80 | phy_get and devm_phy_get can be used to get the PHY. In the case of dt boot, | 81 | |
| 81 | the string arguments should contain the phy name as given in the dt data and | 82 | phy_get, phy_optional_get, devm_phy_get and devm_phy_optional_get can |
| 82 | in the case of non-dt boot, it should contain the label of the PHY. | 83 | be used to get the PHY. In the case of dt boot, the string arguments |
| 83 | The only difference between the two APIs is that devm_phy_get associates the | 84 | should contain the phy name as given in the dt data and in the case of |
| 84 | device with the PHY using devres on successful PHY get. On driver detach, | 85 | non-dt boot, it should contain the label of the PHY. The two |
| 85 | release function is invoked on the the devres data and devres data is freed. | 86 | devm_phy_get associates the device with the PHY using devres on |
| 87 | successful PHY get. On driver detach, release function is invoked on | ||
| 88 | the the devres data and devres data is freed. phy_optional_get and | ||
| 89 | devm_phy_optional_get should be used when the phy is optional. These | ||
| 90 | two functions will never return -ENODEV, but instead returns NULL when | ||
| 91 | the phy cannot be found. | ||
| 92 | |||
| 93 | It should be noted that NULL is a valid phy reference. All phy | ||
| 94 | consumer calls on the NULL phy become NOPs. That is the release calls, | ||
| 95 | the phy_init() and phy_exit() calls, and phy_power_on() and | ||
| 96 | phy_power_off() calls are all NOP when applied to a NULL phy. The NULL | ||
| 97 | phy is useful in devices for handling optional phy devices. | ||
| 86 | 98 | ||
| 87 | 5. Releasing a reference to the PHY | 99 | 5. Releasing a reference to the PHY |
| 88 | 100 | ||
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index b9d6a8b485e0..6d1e43d46187 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
| @@ -38,6 +38,7 @@ dtb-$(CONFIG_ARCH_AT91) += at91sam9g35ek.dtb | |||
| 38 | dtb-$(CONFIG_ARCH_AT91) += at91sam9x25ek.dtb | 38 | dtb-$(CONFIG_ARCH_AT91) += at91sam9x25ek.dtb |
| 39 | dtb-$(CONFIG_ARCH_AT91) += at91sam9x35ek.dtb | 39 | dtb-$(CONFIG_ARCH_AT91) += at91sam9x35ek.dtb |
| 40 | # sama5d3 | 40 | # sama5d3 |
| 41 | dtb-$(CONFIG_ARCH_AT91) += at91-sama5d3_xplained.dtb | ||
| 41 | dtb-$(CONFIG_ARCH_AT91) += sama5d31ek.dtb | 42 | dtb-$(CONFIG_ARCH_AT91) += sama5d31ek.dtb |
| 42 | dtb-$(CONFIG_ARCH_AT91) += sama5d33ek.dtb | 43 | dtb-$(CONFIG_ARCH_AT91) += sama5d33ek.dtb |
| 43 | dtb-$(CONFIG_ARCH_AT91) += sama5d34ek.dtb | 44 | dtb-$(CONFIG_ARCH_AT91) += sama5d34ek.dtb |
diff --git a/arch/arm/boot/dts/at91-sama5d3_xplained.dts b/arch/arm/boot/dts/at91-sama5d3_xplained.dts new file mode 100644 index 000000000000..ce1375595e5f --- /dev/null +++ b/arch/arm/boot/dts/at91-sama5d3_xplained.dts | |||
| @@ -0,0 +1,229 @@ | |||
| 1 | /* | ||
| 2 | * at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board | ||
| 3 | * | ||
| 4 | * Copyright (C) 2014 Atmel, | ||
| 5 | * 2014 Nicolas Ferre <nicolas.ferre@atmel.com> | ||
| 6 | * | ||
| 7 | * Licensed under GPLv2 or later. | ||
| 8 | */ | ||
| 9 | /dts-v1/; | ||
| 10 | #include "sama5d36.dtsi" | ||
| 11 | |||
| 12 | / { | ||
| 13 | model = "SAMA5D3 Xplained"; | ||
| 14 | compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5"; | ||
| 15 | |||
| 16 | chosen { | ||
| 17 | |||
