[PATCH v2 00/38] ARM: orion5x: big step towards DT conversion
Sebastian Hesselbarth
sebastian.hesselbarth at gmail.com
Wed Apr 23 04:35:04 PDT 2014
On 04/22/2014 11:26 PM, Thomas Petazzoni wrote:
> Jason, Andrew, Sebastian, Gregory,
>
> Here is the second version of the Orion5x big DT migration: it moves
> over to the Device Tree the probing of a large number of devices, up
> to a point where on platform (edmini_v2) can be fully converted, and
> three other platforms can be almost completely converted.
>
> Summary of the patches:
>
> * Patches 1 and 2 are fixes that have already been taken by Jason
> Cooper in mvebu/fixes.
>
> * Patches 3 and 4 add the Orion pinctrl and Orion clock drivers
> respectively.
>
> * Patches 5 to 9 extend the existing mvebu-devbus driver to also
> cover the Orion platform.
>
> * Patches 10 to 33 progressively migrate the edmini_v2 platform more
> and more to the Device Tree, which mainly consists of SoC-level
> changes (using DT probed timer, clocks, etc.)
>
> * Patches 34, 35 and 36 convert three other Orion5x platforms to the
> Device Tree.
>
> * Patches 37 and 38 make some follow-up clean up in
> arch/arm/plat-orion/ of code that is no longer used after this DT
> migration.
>
> Changes since v1:
>
> The vast majority of the changes were made according to the
> suggestions and review of Sebastian Hesselbarth. Thanks to him for the
> very detailed review.
>
> * In the pinctrl driver:
> - change pci(rstout) to pcie(rstout)
> - rename double pci functions pci-1
>
> * In the clock driver:
> - use decimal values for shift values
> - join two similar cases
>
> * In the mvebu-devbus driver:
> - minor fixes in DT binding documentation
> - use _SHIFT instead of _BIT for Armada definitions
> - use _SHIFT where needed for Orion definitions, use BIT() directly
> in the macro definition for single bit fields, and define _MASK
> values.
> - introduce a devbus,keep-config DT property to make timing
> parameters optional, which is useful when migrating platforms to
> the Device Tree since we may not have their Device Bus timing
> details readily available.
>
> * Added Acked-by from Sebastian on the following patches:
I guess you now have an Acked-by for each of the individual patches.
Great work, thanks Thomas!
Sebastian
> - ARM: orion5x: move interrupt controller node into ocp
> - ARM: orion5x: switch to preprocessor includes in DT
> - ARM: orion5x: use existing dt-bindings include for Device Tree files
> - ARM: orion5x: add interrupt for Ethernet in Device Tree
> - ARM: orion5x: switch to use the clock driver for DT platforms
> - ARM: orion5x: enable pinctrl driver at SoC level
> - ARM: orion5x: add Device Bus description at SoC level
> - ARM: orion5x: update I2C description at SoC level
> - ARM: orion5x: update I2C description at SoC level
> - ARM: orion5x: remove unneeded code for edmini_v2
>
> * Numerous Device Tree improvements:
> - add node labels for all devices, and used them in the .dts
> files.
> - add linux,stdout-path chosen property.
> - add missing chosen and memory nodes for d2net
> - use the clocks property instead of the clock-frequency property
> for UART controllers, and fixed board DTs accordingly.
> - rename the xor node to dma-controller, to match ePAPR.
> - rename gpio_leds to gpio-leds and gpio_keys to gpio-keys.
> - use GPIO dt-bindings header file where possible.
> - use vendor prefixes for I2C devices
>
> * Changed board-dt.c to call mvebu_mbus_dt_init() in
> ->init_machine(), which allows to remove ->init_time() entirely.
>
> * One more board converted to the Device Tree: the Maxtor Shared
> Storage II.
>
> Thomas
>
> Thomas Petazzoni (38):
> ARM: orion5x: fix target ID for crypto SRAM window
> memory: mvebu-devbus: fix the conversion of the bus width
> pinctrl: mvebu: new driver for Orion platforms
> clk: mvebu: add Orion5x clock driver
> memory: mvebu-devbus: use ARMADA_ prefix in defines
> memory: mvebu-devbus: use _SHIFT suffixes instead of _BIT
> memory: mvebu-devbus: split functions
> memory: mvebu-devbus: add Orion5x support
> memory: mvebu-devbus: add a devbus,keep-config property
> ARM: orion5x: move interrupt controller node into ocp
> ARM: orion5x: switch to preprocessor includes in DT
> ARM: orion5x: use existing dt-bindings include for Device Tree files
> ARM: orion5x: convert DT to use the mvebu-mbus driver
> ARM: orion5x: add node labels in Orion5x SoC Device Tree file
> ARM: orion5x: use gpio-keys and gpio-leds instead of
> gpio_keys/gpio_leds in edmini_v2
> ARM: orion5x: add linux,stdout-path to edmini_v2
> ARM: orion5x: use node labels for UART and SATA on edmini_v2
> ARM: orion5x: rename XOR node to dma-controller@<address>
> ARM: orion5x: add interrupt for Ethernet in Device Tree
> ARM: orion5x: switch to use the clock driver for DT platforms
> ARM: orion5x: convert to use 'clocks' property for UART controllers
> ARM: orion: switch to a per-platform handle_irq() function
> ARM: orion5x: switch to DT interrupts and timer
> ARM: orion5x: enable pinctrl driver at SoC level
> ARM: orion5x: update I2C description at SoC level
> ARM: orion5x: add Device Bus description at SoC level
> ARM: orion5x: add standard pinctrl configs for sata0 and sata1
> ARM: orion5x: convert edmini_v2 to DT pinctrl
> ARM: orion5x: use DT to describe I2C devices on edmini_v2
> ARM: orion5x: use DT to describe EHCI on edmini_v2
> ARM: orion5x: use DT to describe NOR on edmini_v2
> ARM: orion5x: keep TODO list in edmini_v2 DT
> ARM: orion5x: remove unneeded code for edmini_v2
> ARM: orion5x: convert RD-88F5182 to Device Tree
> ARM: orion5x: convert d2net to Device Tree
> ARM: orion5x: convert Maxtor Shared Storage II to the Device Tree
> ARM: orion: remove no longer needed DT IRQ code
> ARM: orion: remove no longer needed gpio DT code
>
> .../devicetree/bindings/clock/mvebu-core-clock.txt | 8 +
> .../bindings/memory-controllers/mvebu-devbus.txt | 32 +-
> .../bindings/pinctrl/marvell,orion-pinctrl.txt | 91 +++++
> arch/arm/boot/dts/Makefile | 5 +-
> arch/arm/boot/dts/orion5x-lacie-d2-network.dts | 236 +++++++++++++
> .../dts/orion5x-lacie-ethernet-disk-mini-v2.dts | 141 ++++++--
> .../boot/dts/orion5x-maxtor-shared-storage-2.dts | 178 ++++++++++
> arch/arm/boot/dts/orion5x-mv88f5182.dtsi | 45 +++
> arch/arm/boot/dts/orion5x-rd88f5182-nas.dts | 177 ++++++++++
> arch/arm/boot/dts/orion5x.dtsi | 289 +++++++++-------
> arch/arm/mach-dove/irq.c | 36 ++
> arch/arm/mach-kirkwood/irq.c | 36 ++
> arch/arm/mach-orion5x/Kconfig | 37 +--
> arch/arm/mach-orion5x/Makefile | 7 +-
> arch/arm/mach-orion5x/board-d2net.c | 109 ++++++
> arch/arm/mach-orion5x/board-dt.c | 18 +-
> arch/arm/mach-orion5x/board-mss2.c | 90 +++++
> arch/arm/mach-orion5x/board-rd88f5182.c | 116 +++++++
> arch/arm/mach-orion5x/common.h | 15 +-
> arch/arm/mach-orion5x/d2net-setup.c | 365 ---------------------
> arch/arm/mach-orion5x/edmini_v2-setup.c | 169 ----------
> arch/arm/mach-orion5x/irq.c | 28 ++
> arch/arm/mach-orion5x/mss2-setup.c | 274 ----------------
> arch/arm/plat-orion/gpio.c | 48 ---
> arch/arm/plat-orion/include/plat/irq.h | 1 -
> arch/arm/plat-orion/include/plat/orion-gpio.h | 1 -
> arch/arm/plat-orion/irq.c | 77 -----
> drivers/clk/mvebu/Kconfig | 4 +
> drivers/clk/mvebu/Makefile | 1 +
> drivers/clk/mvebu/orion.c | 210 ++++++++++++
> drivers/memory/mvebu-devbus.c | 234 +++++++++----
> drivers/pinctrl/mvebu/Kconfig | 4 +
> drivers/pinctrl/mvebu/Makefile | 1 +
> drivers/pinctrl/mvebu/pinctrl-orion.c | 261 +++++++++++++++
> 34 files changed, 2162 insertions(+), 1182 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/pinctrl/marvell,orion-pinctrl.txt
> create mode 100644 arch/arm/boot/dts/orion5x-lacie-d2-network.dts
> create mode 100644 arch/arm/boot/dts/orion5x-maxtor-shared-storage-2.dts
> create mode 100644 arch/arm/boot/dts/orion5x-mv88f5182.dtsi
> create mode 100644 arch/arm/boot/dts/orion5x-rd88f5182-nas.dts
> create mode 100644 arch/arm/mach-orion5x/board-d2net.c
> create mode 100644 arch/arm/mach-orion5x/board-mss2.c
> create mode 100644 arch/arm/mach-orion5x/board-rd88f5182.c
> delete mode 100644 arch/arm/mach-orion5x/d2net-setup.c
> delete mode 100644 arch/arm/mach-orion5x/edmini_v2-setup.c
> delete mode 100644 arch/arm/mach-orion5x/mss2-setup.c
> create mode 100644 drivers/clk/mvebu/orion.c
> create mode 100644 drivers/pinctrl/mvebu/pinctrl-orion.c
>
More information about the linux-arm-kernel
mailing list