03 Jul, 2013

2 commits

  • Pull ARM SoC device tree changes from Arnd Bergmann:
    "These changes from 30 individual branches for the most part update
    device tree files, but there are also a few source code changes that
    have crept in this time, usually in order to atomically move over a
    driver from using hardcoded data to DT probing.

    A number of platforms change their DT files to use the C preprocessor,
    which is causing a bit of churn, but that is hopefully only this once"

    * tag 'dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (372 commits)
    ARM: at91: dt: rm9200ek: add spi support
    ARM: at91: dt: rm9200: add spi support
    ARM: at91/DT: at91sam9n12: add SPI DMA client infos
    ARM: at91/DT: sama5d3: add SPI DMA client infos
    ARM: at91/DT: fix SPI compatibility string
    ARM: Kirkwood: Fix the internal register ranges translation
    ARM: dts: bcm281xx: change comment to C89 style
    ARM: mmc: bcm281xx SDHCI driver (dt mods)
    ARM: nomadik: add the new clocks to the device tree
    clk: nomadik: implement the Nomadik clocks properly
    ARM: dts: omap5-uevm: Provide USB Host PHY clock frequency
    ARM: dts: omap4-panda: Fix DVI EDID reads
    ARM: dts: omap4-panda: Add USB Host support
    arm: mvebu: enable mini-PCIe connectors on Armada 370 RD
    ARM: shmobile: irqpin: add a DT property to enable masking on parent
    ARM: dts: AM43x EPOS EVM support
    ARM: dts: OMAP5: Add bandgap DT entry
    ARM: dts: AM33XX: Add pinmux configuration for CPSW to am335x EVM
    ARM: dts: AM33XX: Add pinmux configuration for CPSW to EVMsk
    ARM: dts: AM33XX: Add pinmux configuration for CPSW to beaglebone
    ...

    Linus Torvalds
     
  • Pull ARM SoC specific changes from Arnd Bergmann:
    "These changes are all to SoC-specific code, a total of 33 branches on
    17 platforms were pulled into this. Like last time, Renesas sh-mobile
    is now the platform with the most changes, followed by OMAP and
    EXYNOS.

    Two new platforms, TI Keystone and Rockchips RK3xxx are added in this
    branch, both containing almost no platform specific code at all, since
    they are using generic subsystem interfaces for clocks, pinctrl,
    interrupts etc. The device drivers are getting merged through the
    respective subsystem maintainer trees.

    One more SoC (u300) is now multiplatform capable and several others
    (shmobile, exynos, msm, integrator, kirkwood, clps711x) are moving
    towards that goal with this series but need more work.

    Also noteworthy is the work on PCI here, which is traditionally part
    of the SoC specific code. With the changes done by Thomas Petazzoni,
    we can now more easily have PCI host controller drivers as loadable
    modules and keep them separate from the platform code in
    drivers/pci/host. This has already led to the discovery that three
    platforms (exynos, spear and imx) are actually using an identical PCIe
    host controller and will be able to share a driver once support for
    spear and imx is added."

    * tag 'soc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (480 commits)
    ARM: integrator: let pciv3 use mem/premem from device tree
    ARM: integrator: set local side PCI addresses right
    ARM: dts: Add pcie controller node for exynos5440-ssdk5440
    ARM: dts: Add pcie controller node for Samsung EXYNOS5440 SoC
    ARM: EXYNOS: Enable PCIe support for Exynos5440
    pci: Add PCIe driver for Samsung Exynos
    ARM: OMAP5: voltagedomain data: remove temporary OMAP4 voltage data
    ARM: keystone: Move CPU bringup code to dedicated asm file
    ARM: multiplatform: always pick one CPU type
    ARM: imx: select syscon for IMX6SL
    ARM: keystone: select ARM_ERRATA_798181 only for SMP
    ARM: imx: Synertronixx scb9328 needs to select SOC_IMX1
    ARM: OMAP2+: AM43x: resolve SMP related build error
    dmaengine: edma: enable build for AM33XX
    ARM: edma: Add EDMA crossbar event mux support
    ARM: edma: Add DT and runtime PM support to the private EDMA API
    dmaengine: edma: Add TI EDMA device tree binding
    arm: add basic support for Rockchip RK3066a boards
    arm: add debug uarts for rockchip rk29xx and rk3xxx series
    arm: Add basic clocks for Rockchip rk3066a SoCs
    ...

    Linus Torvalds
     

17 Jun, 2013

1 commit

  • The WEIM(Wireless External Interface Module) works like a bus.
    You can attach many different devices on it, such as NOR, onenand.

    In the case of i.MX6q-sabreauto, the NOR is connected to WEIM.

    This patch also adds the devicetree binding document.
    The driver only works when the devicetree is enabled.

    Signed-off-by: Huang Shijie
    Acked-by: Sascha Hauer
    Signed-off-by: Shawn Guo

    Huang Shijie
     

15 Jun, 2013

1 commit


08 Jun, 2013

1 commit

  • In order to clean message printing, we replace pr_info with pr_fmt.
    This is purely cosmetic change, with the sole purpose of making
    the code a bit more readable.

    Signed-off-by: Ezequiel Garcia
    Acked-by: Thomas Petazzoni
    Signed-off-by: Jason Cooper

    Ezequiel Garcia
     

03 Jun, 2013

1 commit

  • When we build a kernel with support for both ARMv6 and ARMv7,
    gas is trying to be helpful by pointing out that the arm-cci
    driver would not work on ARMv6:

    /tmp/ccu1LDeU.s: Assembler messages:
    /tmp/ccu1LDeU.s:450: Error: selected processor does not support ARM mode `wfi '
    /tmp/ccu1LDeU.s:451: Error: selected processor does not support ARM mode `wfe '
    make[4]: *** [drivers/bus/arm-cci.o] Error 1

    We know that the driver will only be used on ARMv7, hence we
    can annotate the inline assembly listing to allow those instructions.

    Signed-off-by: Arnd Bergmann
    Acked-by: Nicolas Pitre
    Cc: Dave Martin

    Arnd Bergmann
     

31 May, 2013

1 commit

  • This is omap4+ only and no longer needed as omap4+ can be booted
    using device tree.

    Also remove the related pdata handling from the driver and the
    now unneeded platform_data/omap_ocp2scp.h.

    Cc: Arnd Bergmann
    Cc: Olof Johansson
    Reviewed-by: Kishon Vijay Abraham I
    Acked-by: Felipe Balbi
    Signed-off-by: Tony Lindgren

    Tony Lindgren
     

30 May, 2013

2 commits

  • This provides cci_enable_port_for_self(). This is the counterpart to
    cci_disable_port_by_cpu(self).

    This is meant to be called from the MCPM machine specific power_up_setup
    callback code when the appropriate affinity level needs to be initialized.
    The code therefore has to be position independent as the MMU is still off
    and it cannot rely on any stack space.

    Signed-off-by: Nicolas Pitre
    Reviewed-by: Dave Martin

    Nicolas Pitre
     
  • On ARM multi-cluster systems coherency between cores running on
    different clusters is managed by the cache-coherent interconnect (CCI).
    It allows broadcasting of TLB invalidates and memory barriers and it
    guarantees cache coherency at system level through snooping of slave
    interfaces connected to it.

    This patch enables the basic infrastructure required in Linux to handle and
    programme the CCI component.

    Non-local variables used by the CCI management functions called by power
    down function calls after disabling the cache must be flushed out to main
    memory in advance, otherwise incoherency of those values may occur if they
    are sitting in the cache of some other CPU when power down functions
    execute. Driver code ensures that relevant data structures are flushed
    from inner and outer caches after the driver probe is completed.

    CCI slave port resources are linked to set of CPUs through bus masters
    phandle properties that link the interface resources to masters node in
    the device tree.

    Documentation describing the CCI DT bindings is provided with the patch.

    Signed-off-by: Lorenzo Pieralisi
    Signed-off-by: Nicolas Pitre

    Lorenzo Pieralisi
     

12 Apr, 2013

1 commit


31 Mar, 2013

1 commit


29 Mar, 2013

1 commit

  • The Marvell EBU SoCs have a configurable physical address space
    layout: the physical ranges of memory used to address PCI(e)
    interfaces, NOR flashes, SRAM and various other types of memory are
    configurable by software, through a mechanism of so-called 'address
    decoding windows'.

    This new driver mvebu-mbus consolidates the existing code to address
    the configuration of these memory ranges, which is spread into
    mach-mvebu, mach-orion5x, mach-mv78xx0, mach-dove and mach-kirkwood.

    Following patches convert each Marvell EBU SoC family to use this
    driver, therefore removing the old code that was configuring the
    address decoding windows.

    It is worth mentioning that the MVEBU_MBUS Kconfig option is
    intentionally added as a blind option. The new driver implements and
    exports the mv_mbus_dram_info() function, which is used by various
    Marvell drivers throughout the tree to get access to window
    configuration parameters that they require. This function is also
    implemented in arch/arm/plat-orion/addr-map.c, which ultimately gets
    removed at the end of this patch series. So, in order to preserve
    bisectability, we want to ensure that *either* this new driver, *or*
    the legacy code in plat-orion/addr-map.c gets compiled in.

    By making MVEBU_MBUS a blind option, we are sure that only a platform
    that does 'select MVEBU_MBUS' will get this new driver compiled
    in. Therefore, throughout the next patches that convert the Marvell
    sub-architectures one after the other to this new driver, we add the
    'select MVEBU_MBUS' and also ensure to remove plat-orion/addr-map.c
    from the build for this specific sub-architecture. This ensures that
    bisectability is preserved.

    Ealier versions of this driver had a DT binding, but since those were
    not yet agreed upon, they were removed. The driver still uses
    of_device_id to find the SoC specific details according to the string
    passed to mvebu_mbus_init(). The plan is to re-introduce a proper DT
    binding as a followup set of patches.

    Signed-off-by: Thomas Petazzoni
    Acked-by: Arnd Bergmann
    Signed-off-by: Jason Cooper

    Thomas Petazzoni
     

04 Jan, 2013

1 commit

  • CONFIG_HOTPLUG is going away as an option. As a result, the __dev*
    markings need to be removed.

    This change removes the use of __devinit, __devexit_p, __devinitdata,
    __devinitconst, and __devexit from these drivers.

    Based on patches originally written by Bill Pemberton, but redone by me
    in order to handle some of the coding style issues better, by hand.

    Cc: Bill Pemberton
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

17 Dec, 2012

1 commit

  • These devices are not available on other architectures, so
    let's limit them to omap.

    If the driver subsystem maintainers want to build test
    system wide changes without building for each target,
    it's easy to carry a test patch that just strips out the
    depends entries from Kconfig files.

    Signed-off-by: Tony Lindgren
    Signed-off-by: Linus Torvalds

    Tony Lindgren
     

08 Nov, 2012

1 commit

  • ocp2scp was not having pdata support which makes *musb* fail for non-dt
    boot in OMAP platform. The pdata will have information about the devices
    that is connected to ocp2scp. ocp2scp driver will now make use of this
    information to create the devices that is attached to ocp2scp.

    This is needed to fix MUSB regression caused by commit c9e4412a
    (arm: omap: phy: remove unused functions from omap-phy-internal.c)

    Signed-off-by: Kishon Vijay Abraham I
    Acked-by: Felipe Balbi
    [tony@atomide.com: updated comments for regression info]
    Signed-off-by: Tony Lindgren

    Kishon Vijay Abraham I
     

02 Oct, 2012

2 commits

  • This fixes a local merge conflict resolution done wrong locally in
    arm-soc for-next. soc.h was added on a cleanup branch, but the driver
    was moved and the header no longer needed.

    Signed-off-by: Olof Johansson
    [ .. and I did the same wrong merge, since git automatically does the
    whole rename detection etc, so applying this patch from Olof - Linus ]
    Signed-off-by: Linus Torvalds

    Olof Johansson
     
  • Pull ARM soc driver specific changes from Olof Johansson:
    - A long-coming conversion of various platforms to a common LED
    infrastructure
    - AT91 is moved over to use the newer MCI driver for MMC
    - Pincontrol conversions for samsung platforms
    - DT bindings for gscaler on samsung
    - i2c driver fixes for tegra, acked by i2c maintainer

    Fix up conflicts as per Olof.

    * tag 'drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (48 commits)
    drivers: bus: omap_l3: use resources instead of hardcoded irqs
    pinctrl: exynos: Fix wakeup IRQ domain registration check
    pinctrl: samsung: Uninline samsung_pinctrl_get_soc_data
    pinctrl: exynos: Correct the detection of wakeup-eint node
    pinctrl: exynos: Mark exynos_irq_demux_eint as inline
    pinctrl: exynos: Handle only unmasked wakeup interrupts
    pinctrl: exynos: Fix typos in gpio/wkup _irq_mask
    pinctrl: exynos: Set pin function to EINT in irq_set_type of GPIO EINTa
    drivers: bus: Move the OMAP interconnect driver to drivers/bus/
    i2c: tegra: dynamically control fast clk
    i2c: tegra: I2_M_NOSTART functionality not supported in Tegra20
    ARM: tegra: clock: remove unused clock entry for i2c
    ARM: tegra: clock: add connection name in i2c clock entry
    i2c: tegra: pass proper name for getting clock
    ARM: tegra: clock: add i2c fast clock entry in clock table
    ARM: EXYNOS: Adds G-Scaler device from Device Tree
    ARM: EXYNOS: Add clock support for G-Scaler
    ARM: EXYNOS: Enable pinctrl driver support for EXYNOS4 device tree enabled platform
    ARM: dts: Add pinctrl node entries for SAMSUNG EXYNOS4210 SoC
    ARM: EXYNOS: skip wakeup interrupt setup if pinctrl driver is used
    ...

    Linus Torvalds
     

21 Sep, 2012

1 commit

  • This fixes up a merge conflict due to the move of the driver and cleanups of
    platform data around the same time. Moving to the resource is what we want
    anyway, so do it in this branch.

    Signed-off-by: Arnd Bergmann
    [olof: rewrote with this branch as base, same end result]
    Signed-off-by: Olof Johansson
    Acked-by: Tony Lindgren
    Acked-by: Santosh Shilimkar

    Olof Johansson
     

19 Sep, 2012

1 commit


05 Sep, 2012

1 commit


22 Aug, 2012

1 commit

  • Adds a new driver *omap-ocp2scp*. This driver takes the responsibility of
    creating all the devices that is connected to OCP2SCP. In the case of OMAP4,
    USB2PHY is connected to ocp2scp.

    This also includes device tree support for ocp2scp driver and
    the documentation with device tree binding information is updated.

    Acked-by: Felipe Balbi
    Acked-by: Arnd Bergmann
    Signed-off-by: Kishon Vijay Abraham I
    Signed-off-by: Arnd Bergmann

    Kishon Vijay Abraham I