21 Jun, 2013

1 commit

  • Since 4b68520dc0ec96153bc0d87bca5ffba508edfcf
    ARM: at91: add AIC5 support

    we allocate the at91_extern_irq.

    This patch makes it static and stores the non-dt extern irq in the soc
    structure. It is then possible to use a at91_get_extern_irq() function
    to get the value for outside of the irq driver. It is useful for passing
    its value to at91_aic_init().

    Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD
    Acked-by: Ludovic Desroches
    [nicolas.ferre@atmel.com: rework commit message]
    Signed-off-by: Nicolas Ferre

    Jean-Christophe PLAGNIOL-VILLARD
     

05 May, 2013

1 commit

  • Pull ARM SoC driver changes from Olof Johansson:
    "This is a rather large set of patches for device drivers that for one
    reason or another the subsystem maintainer preferred to get merged
    through the arm-soc tree. There are both new drivers as well as
    existing drivers that are getting converted from platform-specific
    code into standalone drivers using the appropriate subsystem specific
    interfaces.

    In particular, we can now have pinctrl, clk, clksource and irqchip
    drivers in one file per driver, without the need to call into platform
    specific interface, or to get called from platform specific code, as
    long as all information about the hardware is provided through a
    device tree.

    Most of the drivers we touch this time are for clocksource. Since now
    most of them are part of drivers/clocksource, I expect that we won't
    have to touch these again from arm-soc and can let the clocksource
    maintainers take care of these in the future.

    Another larger part of this series is specific to the exynos platform,
    which is seeing some significant effort in upstreaming and
    modernization of its device drivers this time around, which
    unfortunately is also the cause for the churn and a lot of the merge
    conflicts.

    There is one new subsystem that gets merged as part of this series:
    the reset controller interface, which is a very simple interface for
    taking devices on the SoC out of reset or back into reset. Patches to
    use this interface on i.MX follow later in this merge window, and we
    are going to have other platforms (at least tegra and sirf) get
    converted in 3.11. This will let us get rid of platform specific
    callbacks in a number of platform independent device drivers."

    * tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (256 commits)
    irqchip: s3c24xx: add missing __init annotations
    ARM: dts: Disable the RTC by default on exynos5
    clk: exynos5250: Fix parent clock for sclk_mmc{0,1,2,3}
    ARM: exynos: restore mach/regs-clock.h for exynos5
    clocksource: exynos_mct: fix build error on non-DT
    pinctrl: vt8500: wmt: Fix checking return value of pinctrl_register()
    irqchip: vt8500: Convert arch-vt8500 to new irqchip infrastructure
    reset: NULL deref on allocation failure
    reset: Add reset controller API
    dt: describe base reset signal binding
    ARM: EXYNOS: Add arm-pmu DT binding for exynos421x
    ARM: EXYNOS: Add arm-pmu DT binding for exynos5250
    ARM: EXYNOS: Enable PMUs for exynos4
    irqchip: exynos-combiner: Correct combined IRQs for exynos4
    irqchip: exynos-combiner: Add set_irq_affinity function for combiner_irq
    ARM: EXYNOS: fix compilation error introduced due to common clock migration
    clk: exynos5250: Fix divider values for sclk_mmc{0,1,2,3}
    clk: exynos4: export clocks required for fimc-is
    clk: samsung: Fix compilation error
    clk: tegra: fix enum tegra114_clk to match binding
    ...

    Linus Torvalds
     

26 Mar, 2013

1 commit


13 Mar, 2013

2 commits

  • Add platform device-id table in order to identify the controller and
    determine its configuration.

    The currently used configuration parameters are:

    have_alt_pixclock
    - SOC uses an alternate pixel-clock calculation formula (at91sam9g45
    non-ES)

    have_hozval
    - SOC has a HOZVAL field in LCDFRMCFG which is used to determine the
    linesize for STN displays (at91sam9261, at921sam9g10 and at32ap)

    have_intensity_bit
    - SOC uses IBGR:555 rather than BGR:565 16-bit pixel layout
    (at91sam9261, at91sam9263 and at91sam9rl)

    This allows us to remove all the remaining uses of cpu_is macros from
    the driver.

    Tested on at91sam9263 and at91sam9g45, compile-tested for other
    AT91-SOCs, and untested for AVR32.

    Signed-off-by: Johan Hovold
    Signed-off-by: Nicolas Ferre

    Johan Hovold
     
  • Add hclk entry for the atmel_lcdfb bus clock.

    On at91sam9261, at91sam9g10 and at32ap the bus clock has to be enabled
    as well as the peripheral clock. Add the appropriate lookup entries to
    these SOCs and fake clocks to the SOCs that do not use it.

    This allows us to get rid of the conditional enabling of the clocks in
    the driver which relied on the cpu_is macros.

    Tested on at91sam9263 and at91sam9g45, compile-tested for other
    AT91-SOCs, and untested for AVR32.

    Signed-off-by: Johan Hovold
    Signed-off-by: Nicolas Ferre

    Johan Hovold
     

14 Dec, 2012

1 commit

  • Pull sound updates from Takashi Iwai:
    "This update contains a fairly wide range of changes all over in sound
    subdirectory, mainly because of UAPI header moves by David and __dev*
    annotation removals by Bill. Other highlights are:

    - Introduced the support for wallclock timestamps in ALSA PCM core

    - Add the poll loop implementation for HD-audio jack detection

    - Yet more VGA-switcheroo fixes for HD-audio

    - New VIA HD-audio codec support

    - More fixes on resource management in USB audio and MIDI drivers

    - More quirks for USB-audio ASUS Xonar U3, Reloop Play, Focusrite,
    Roland VG-99, etc

    - Add support for FastTrack C400 usb-audio

    - Clean ups in many drivers regarding firmware loading

    - Add PSC724 Ultiimate Edge support to ice1712

    - A few hdspm driver updates

    - New Stanton SCS.1d/1m FireWire driver

    - Standardisation of the logging in ASoC codes

    - DT and dmaengine support for ASoC Atmel

    - Support for Wolfson ADSP cores

    - New drivers for Freescale/iVeia P1022 and Maxim MAX98090

    - Lots of other ASoC driver fixes and developments"

    Fix up trivial conflicts. And go out on a limb and assume the dts file
    'status' field of one of the conflicting things was supposed to be
    "disabled", not "disable" like in pretty much all other cases.

    * tag 'sound-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (341 commits)
    ALSA: hda - Move runtime PM check to runtime_idle callback
    ALSA: hda - Add stereo-dmic fixup for Acer Aspire One 522
    ALSA: hda - Avoid doubly suspend after vga switcheroo
    ALSA: usb-audio: Enable S/PDIF on the ASUS Xonar U3
    ALSA: hda - Check validity of CORB/RIRB WP reads
    ALSA: hda - use usleep_range in link reset and change timeout check
    ALSA: HDA: VIA: Add support for codec VT1808.
    ALSA: HDA: VIA Add support for codec VT1705CF.
    ASoC: codecs: remove __dev* attributes
    ASoC: utils: remove __dev* attributes
    ASoC: ux500: remove __dev* attributes
    ASoC: txx9: remove __dev* attributes
    ASoC: tegra: remove __dev* attributes
    ASoC: spear: remove __dev* attributes
    ASoC: sh: remove __dev* attributes
    ASoC: s6000: remove __dev* attributes
    ASoC: OMAP: remove __dev* attributes
    ASoC: nuc900: remove __dev* attributes
    ASoC: mxs: remove __dev* attributes
    ASoC: kirkwood: remove __dev* attributes
    ...

    Linus Torvalds
     

13 Dec, 2012

1 commit

  • Pull ARM SoC Header cleanups from Olof Johansson:
    "This is a collection of header file cleanups, mostly for OMAP and
    AT91, that keeps moving the platforms in the direction of
    multiplatform by removing the need for mach-dependent header files
    used in drivers and other places."

    Fix up mostly trivial conflicts as per Olof.

    * tag 'headers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (106 commits)
    ARM: OMAP2+: Move iommu/iovmm headers to platform_data
    ARM: OMAP2+: Make some definitions local
    ARM: OMAP2+: Move iommu2 to drivers/iommu/omap-iommu2.c
    ARM: OMAP2+: Move plat/iovmm.h to include/linux/omap-iommu.h
    ARM: OMAP2+: Move iopgtable header to drivers/iommu/
    ARM: OMAP: Merge iommu2.h into iommu.h
    atmel: move ATMEL_MAX_UART to platform_data/atmel.h
    ARM: OMAP: Remove omap_init_consistent_dma_size()
    arm: at91: move at91rm9200 rtc header in drivers/rtc
    arm: at91: move reset controller header to arm/arm/mach-at91
    arm: at91: move pit define to the driver
    arm: at91: move at91_shdwc.h to arch/arm/mach-at91
    arm: at91: move board header to arch/arm/mach-at91
    arn: at91: move at91_tc.h to arch/arm/mach-at91
    arm: at91 move at91_aic.h to arch/arm/mach-at91
    arm: at91 move board.h to arch/arm/mach-at91
    arm: at91: move platfarm_data to include/linux/platform_data/atmel.h
    arm: at91: drop machine defconfig
    ARM: OMAP: Remove NEED_MACH_GPIO_H
    ARM: OMAP: Remove unnecessary mach and plat includes
    ...

    Linus Torvalds
     

07 Nov, 2012

1 commit


06 Nov, 2012

3 commits


13 Oct, 2012

1 commit


12 Sep, 2012

2 commits

  • This driver has the following properties compared to the old driver:
    1. Support for multiple interfaces.
    2. Interrupt driven I/O as opposed to polling/busy waiting.
    3. Support for _one_ repeated start (Sr) condition, which is enough
    for most real-world applications including all SMBus transfer types.
    (The hardware does not support issuing arbitrary Sr conditions on the
    bus.)

    testing: SoC: at91sam9g45
    - BQ20Z80 battery SMBus client.
    - on a 2.6.38 kernel with several i2c clients (temp-sensor,
    audio-codec, touchscreen-controller, w1-bridge, io-expanders)

    Signed-off-by: Nikolaus Voss
    Reviewed-by: Felipe Balbi
    Tested-by: Hubert Feurstein
    Tested-by: Ludovic Desroches
    Reviewed-by: Nicolas Ferre

    [wsa: squashed with the following patches from Ludovic to have some flaws
    fixed:
    i2c: at91: use managed resources
    i2c: at91: add warning about transmission issues for some devices
    i2c: at91: use an id table for SoC dependent parameters
    ]

    Signed-off-by: Ludovic Desroches
    Signed-off-by: Wolfram Sang

    Nikolaus Voss
     
  • The old driver used con_id clock entries. Convert to use dev_id
    for clock lookup via standard method.

    Signed-off-by: Nikolaus Voss
    Tested-by: Ludovic Desroches
    Reviewed-by: Nicolas Ferre
    Signed-off-by: Wolfram Sang

    Nikolaus Voss
     

02 Jul, 2012

1 commit

  • Enable sparse irq support for multisoc image. It involves to add the
    NR_IRQS_LEGACY offset to static SoC irq number definitions since NR_IRQS_LEGACY
    irq descs are allocated before AIC requests irq descs allocation.
    Move NR_AIC_IRQS macro to a more appropiate place with the purpose to
    remove mach/irqs.h later.

    Signed-off-by: Ludovic Desroches
    Signed-off-by: Nicolas Ferre

    Ludovic Desroches
     

17 Apr, 2012

1 commit

  • at91_set_serial_console is used to define the default console of linux.
    This is already manage by the cmdline. And if the boot loader can not be
    modified you can still set it by enabling the CONFIG_CMDLINE_EXTEND option.
    And then the command-line arguments provided by the boot loader will be
    appended to the default kernel command string.

    Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD
    Acked-by: Nicolas Ferre

    Jean-Christophe PLAGNIOL-VILLARD
     

29 Mar, 2012

2 commits

  • …m/linux/kernel/git/dhowells/linux-asm_system

    Pull "Disintegrate and delete asm/system.h" from David Howells:
    "Here are a bunch of patches to disintegrate asm/system.h into a set of
    separate bits to relieve the problem of circular inclusion
    dependencies.

    I've built all the working defconfigs from all the arches that I can
    and made sure that they don't break.

    The reason for these patches is that I recently encountered a circular
    dependency problem that came about when I produced some patches to
    optimise get_order() by rewriting it to use ilog2().

    This uses bitops - and on the SH arch asm/bitops.h drags in
    asm-generic/get_order.h by a circuituous route involving asm/system.h.

    The main difficulty seems to be asm/system.h. It holds a number of
    low level bits with no/few dependencies that are commonly used (eg.
    memory barriers) and a number of bits with more dependencies that
    aren't used in many places (eg. switch_to()).

    These patches break asm/system.h up into the following core pieces:

    (1) asm/barrier.h

    Move memory barriers here. This already done for MIPS and Alpha.

    (2) asm/switch_to.h

    Move switch_to() and related stuff here.

    (3) asm/exec.h

    Move arch_align_stack() here. Other process execution related bits
    could perhaps go here from asm/processor.h.

    (4) asm/cmpxchg.h

    Move xchg() and cmpxchg() here as they're full word atomic ops and
    frequently used by atomic_xchg() and atomic_cmpxchg().

    (5) asm/bug.h

    Move die() and related bits.

    (6) asm/auxvec.h

    Move AT_VECTOR_SIZE_ARCH here.

    Other arch headers are created as needed on a per-arch basis."

    Fixed up some conflicts from other header file cleanups and moving code
    around that has happened in the meantime, so David's testing is somewhat
    weakened by that. We'll find out anything that got broken and fix it..

    * tag 'split-asm_system_h-for-linus-20120328' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system: (38 commits)
    Delete all instances of asm/system.h
    Remove all #inclusions of asm/system.h
    Add #includes needed to permit the removal of asm/system.h
    Move all declarations of free_initmem() to linux/mm.h
    Disintegrate asm/system.h for OpenRISC
    Split arch_align_stack() out from asm-generic/system.h
    Split the switch_to() wrapper out of asm-generic/system.h
    Move the asm-generic/system.h xchg() implementation to asm-generic/cmpxchg.h
    Create asm-generic/barrier.h
    Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h
    Disintegrate asm/system.h for Xtensa
    Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt]
    Disintegrate asm/system.h for Tile
    Disintegrate asm/system.h for Sparc
    Disintegrate asm/system.h for SH
    Disintegrate asm/system.h for Score
    Disintegrate asm/system.h for S390
    Disintegrate asm/system.h for PowerPC
    Disintegrate asm/system.h for PA-RISC
    Disintegrate asm/system.h for MN10300
    ...

    Linus Torvalds
     
  • Disintegrate asm/system.h for ARM.

    Signed-off-by: David Howells
    cc: Russell King
    cc: linux-arm-kernel@lists.infradead.org

    David Howells
     

23 Feb, 2012

2 commits


18 Feb, 2012

1 commit


08 Feb, 2012

1 commit


21 Jan, 2012

2 commits


07 Jan, 2012

1 commit

  • Conflicts:
    arch/arm/mach-at91/at91cap9.c
    arch/arm/mach-at91/at91sam9260.c
    arch/arm/mach-at91/at91sam9261.c
    arch/arm/mach-at91/at91sam9263.c
    arch/arm/mach-at91/at91sam9g45.c
    arch/arm/mach-at91/at91sam9rl.c
    arch/arm/mach-exynos/cpu.c
    arch/arm/mach-shmobile/board-kota2.c

    This resolves a bunch of conflicts between the arm-soc tree
    and changes from the arm tree that have gone upstream.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

05 Jan, 2012

1 commit

  • Rather than using a private function pointer, use the existing
    arm_pm_restart function pointer instead. We no longer need to enable
    the I-cache in at91sam9_alt_reset() as the caches will now be on when
    this function is called.

    Update the function names to use the 'restart' terminology rather than
    the 'reboot' terminology.

    Signed-off-by: Russell King

    Russell King
     

29 Nov, 2011

2 commits


28 Nov, 2011

5 commits


28 Jul, 2011

7 commits