23 Mar, 2016

1 commit

  • Pull clk updates from Stephen Boyd:
    "The clk changes for this release cycle are mostly dominated by new
    device support in terms of LoC, but there has been some cleanup in the
    core as well as the usual minor clk additions to various drivers.

    Core:
    - parent tracking has been simplified
    - CLK_IS_ROOT is now a no-op flag, cleaning up drivers has started
    - of_clk_init() doesn't consider disabled DT nodes anymore
    - clk_unregister() had an error path bug squashed
    - of_clk_get_parent_count() has been fixed to only return unsigned ints
    - HAVE_MACH_CLKDEV is removed now that the last arch user (ARM) is gone

    New Drivers:
    - NXP LPC18xx creg
    - QCOM IPQ4019 GCC
    - TI dm814x ADPLL
    - i.MX6QP

    Updates:
    - Cyngus audio clks found on Broadcom iProc devices
    - Non-critical fixes for BCM2385 PLLs
    - Samsung exynos5433 updates for clk id errors, HDMI support,
    suspend/resume simplifications
    - USB, CAN, LVDS, and FCP clks on shmobile devices
    - sunxi got support for more clks on new SoCs and went through a
    minor refactoring/rewrite to use a simpler factor clk construct
    - rockchip added some more clk ids and added suport for fraction
    dividers
    - QCOM GDSCs in msm8996
    - A new devm helper to make adding custom actions simpler (acked by Greg)"

    * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (197 commits)
    clk: bcm2835: fix check of error code returned by devm_ioremap_resource()
    clk: renesas: div6: use RENESAS for #define
    clk: renesas: Rename header file renesas.h
    clk: max77{686,802}: Remove CLK_IS_ROOT
    clk: versatile: Remove CLK_IS_ROOT
    clk: sunxi: Remove use of variable length array
    clk: fixed-rate: Remove CLK_IS_ROOT
    clk: qcom: Remove CLK_IS_ROOT
    doc: dt: add documentation for lpc1850-creg-clk driver
    clk: add lpc18xx creg clk driver
    clk: lpc32xx: fix compilation warning
    clk: xgene: Add missing parenthesis when clearing divider value
    clk: mb86s7x: Remove CLK_IS_ROOT
    clk: x86: Remove clkdev.h and clk.h includes
    clk: x86: Remove CLK_IS_ROOT
    clk: mvebu: Remove CLK_IS_ROOT
    clk: renesas: move drivers to renesas directory
    clk: si5{14,351,70}: Remove CLK_IS_ROOT
    clk: scpi: Remove CLK_IS_ROOT
    clk: s2mps11: Remove CLK_IS_ROOT
    ...

    Linus Torvalds
     

16 Mar, 2016

1 commit

  • This is part of an ongoing process to migrate from ARCH_SHMOBILE to
    ARCH_RENESAS the motivation for which being that RENESAS seems to be a more
    appropriate name than SHMOBILE for the majority of Renesas ARM based SoCs.

    Along with the above mentioned Kconfig changes it seems appropriate
    to also rename files.

    Signed-off-by: Simon Horman
    Acked-by: Geert Uytterhoeven
    Signed-off-by: Stephen Boyd

    Simon Horman
     

23 Feb, 2016

1 commit

  • Convert DPLL support code to use clk_hw pointers for reference and bypass
    clocks. This allows us to use clk_hw_* APIs for accessing any required
    parameters for these clocks, avoiding some locking problems at least with
    DPLL enable code; this used clk_get_rate which uses mutex but isn't
    good under clk_enable / clk_disable.

    Signed-off-by: Tero Kristo
    Acked-by: Tony Lindgren
    Signed-off-by: Stephen Boyd

    Tero Kristo
     

18 Feb, 2016

1 commit


21 Jan, 2016

2 commits

  • Pull ARM SoC multiplatform code updates from Arnd Bergmann:
    "This branch is the culmination of 5 years of effort to bring the ARMv6
    and ARMv7 platforms together such that they can all be enabled and
    boot the same kernel. It has been a tremendous amount of cleanup and
    refactoring by a huge number of people, and creation of several new
    (and major) subsystems to better abstract out all the platform details
    in an appropriate manner.

    The bulk of this branch is a large patchset from Arnd that brings
    several of the more minor and older platforms we have closer to
    multiplatform support. Among these are MMP, S3C64xx, Orion5x, mv78xx0
    and realview Much of this is moving around header files from old mach
    directories, but there are also some cleanup patches of debug_ll
    (lowlevel debug per-platform options) and other parts.

    Linus Walleij also has some patchs to clean up the older ARM Realview
    platforms by finally introducing DT support, and Rob Herring has some
    for ARM Versatile which is now DT-only. Both of these platforms are
    now multiplatform.

    Finally, a couple of patches from Russell for Dove PMU, and a fix from
    Valentin Rothberg for Exynos ADC, which were rebased on top of the
    series to avoid conflicts"

    * tag 'armsoc-multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (75 commits)
    ARM: realview: don't select SMP_ON_UP for UP builds
    ARM: s3c: simplify s3c_irqwake_{e,}intallow definition
    ARM: s3c64xx: fix pm-debug compilation
    iio: exynos-adc: fix irqf_oneshot.cocci warnings
    ARM: realview: build realview-dt SMP support only when used
    ARM: realview: select apropriate targets
    ARM: realview: clean up header files
    ARM: realview: make all header files local
    ARM: no longer make CPU targets visible separately
    ARM: integrator: use explicit core module options
    ARM: realview: enable multiplatform
    ARM: make default platform work for NOMMU
    ARM: debug-ll: move DEBUG_LL_UART_EFM32 to correct Kconfig location
    ARM: defconfig: use correct debug_ll settings
    ARM: versatile: convert to multi-platform
    ARM: versatile: merge mach code into a single file
    ARM: versatile: switch to DT only booting and remove legacy code
    ARM: versatile: add DT based PCI detection
    ARM: pxa: mark ezx structures as __maybe_unused
    ARM: pxa: mark raumfeld init functions as __maybe_unused
    ...

    Linus Torvalds
     
  • Pull non-urgent ARM SoC fixes from Olof Johansson:
    "As usual, we queue up a few fixes that don't seem urgent enough to go
    in through -rc.

    - MAINTAINERS updates to add a list for brcmstb and fix a typo
    - A handful of fixes for OMAP 81xx, a recently resurrected platform
    so these can't be considered real regressions and thus got queued.
    - A couple of other small fixes for scoop, sa1100 and davinci"

    * tag 'armsoc-fixes-nc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ARM: OMAP2+: Fix randconfig build warning for dm814_pllss_data
    ARM: sa1100/simpad: Be sure to clamp return value
    ARM: scoop: Be sure to clamp return value
    ARM: davinci: fix a problematic usage of WARN()
    ARM: davinci: only select WT cache if cache is enabled
    ARM: OMAP2+: Remove useless check for legacy booting for dm814x
    ARM: OMAP2+: Enable GPIO for dm814x
    ARM: dts: Fix dm814x pinctrl address and mask
    ARM: dts: Fix dm8148 control modules ranges
    ARM: OMAP2+: Fix timer entries for dm814x
    ARM: dts: Fix some mux and divider clocks to get dm814x-evm booting
    ARM: OMAP2+: Add DPPLS clock manager for dm814x
    clk: ti: Add few dm814x clock aliases
    ARM: dts: Fix dm814x entries for pllss and prcm
    MAINTAINERS: gpio-brcmstb: Remove stray '>'
    MAINTAINERS: brcmstb: Include Broadcom internal mailing-list

    Linus Torvalds
     

10 Dec, 2015

1 commit


02 Dec, 2015

1 commit

  • The mmp clock drivers currently hardcode the physical addresses for
    the clock registers. This is generally a bad idea, and it also gets in
    the way of multiplatform builds, which make the platform header files
    inaccessible to device drivers.

    To work around the header file problem, this patch changes the calling
    convention so the three mmp clock drivers get initialized with the base
    addresses as arguments from the platform code.

    It would still be useful to have a larger rework of the clock drivers,
    with DT integration to let the clocks actually be probed automatically,
    and the base addresses passed as DT properties. I am unsure if anyone
    is still interested in the mmp platform, so it is possible that this
    won't happen.

    Signed-off-by: Arnd Bergmann
    Cc: Mike Turquette
    Cc: Chao Xie
    Cc: Eric Miao
    Cc: Haojian Zhuang

    Arnd Bergmann
     

01 Dec, 2015

1 commit

  • Errata i810 states that DPLL controller can get stuck while transitioning
    to a power saving state, while its M/N ratio is being re-programmed.

    As a workaround, before re-programming the M/N ratio, SW has to ensure
    the DPLL cannot start an idle state transition. SW can disable DPLL
    idling by setting the DPLL AUTO_DPLL_MODE=0 or keeping a clock request
    active by setting a dependent clock domain in SW_WKUP.

    This errata impacts OMAP5 and DRA7 chips, so enable the errata for these.

    Signed-off-by: Tero Kristo
    Signed-off-by: Stephen Boyd

    Tero Kristo
     

02 Oct, 2015

3 commits

  • Add a new type of clocks that can be provided to a peripheral.
    In addition to the peripheral clock, this new clock that can use several
    input clocks as parents can generate divided rates.
    This would allow a peripheral to have finer grained clocks for generating
    a baud rate, clocking an asynchronous part or having more
    options in frequency.

    Signed-off-by: Nicolas Ferre
    Signed-off-by: Boris Brezillon
    [sboyd@codeaurora.org: Transition to new clk_hw provider APIs]
    Signed-off-by: Stephen Boyd

    Nicolas Ferre
     
  • Add support for the new sama5d2 SoC and adapt capabilities.

    Signed-off-by: Nicolas Ferre
    Signed-off-by: Boris Brezillon
    Signed-off-by: Stephen Boyd

    Nicolas Ferre
     
  • Add _MASK and _OFFSET values and cleanup register fields layout.

    Signed-off-by: Nicolas Ferre
    Signed-off-by: Boris Brezillon
    Signed-off-by: Stephen Boyd

    Nicolas Ferre
     

02 Sep, 2015

2 commits

  • Pull ARM SoC driver updates from Olof Johansson:
    "Some releases this branch is nearly empty, others we have more stuff.
    It tends to gather drivers that need SoC modification or dependencies
    such that they have to (also) go in through our tree.

    For this release, we have merged in part of the reset controller tree
    (with handshake that the parts we have merged in will remain stable),
    as well as dependencies on a few clock branches.

    In general, new items here are:

    - Qualcomm driver for SMM/SMD, which is how they communicate with the
    coprocessors on (some) of their platforms

    - memory controller work for ARM's PL172 memory controller

    - reset drivers for various platforms

    - PMU power domain support for Marvell platforms

    - Tegra support for T132/T210 SoCs: PMC, fuse, memory controller
    per-SoC support"

    * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (49 commits)
    ARM: tegra: cpuidle: implement cpuidle_state.enter_freeze()
    ARM: tegra: Disable cpuidle if PSCI is available
    soc/tegra: pmc: Use existing pclk reference
    soc/tegra: pmc: Remove unnecessary return statement
    soc: tegra: Remove redundant $(CONFIG_ARCH_TEGRA) in Makefile
    memory: tegra: Add Tegra210 support
    memory: tegra: Add support for a variable-size client ID bitfield
    clk: shmobile: rz: Add CPG/MSTP Clock Domain support
    clk: shmobile: rcar-gen2: Add CPG/MSTP Clock Domain support
    clk: shmobile: r8a7779: Add CPG/MSTP Clock Domain support
    clk: shmobile: r8a7778: Add CPG/MSTP Clock Domain support
    clk: shmobile: Add CPG/MSTP Clock Domain support
    ARM: dove: create a proper PMU driver for power domains, PMU IRQs and resets
    reset: reset-zynq: Adding support for Xilinx Zynq reset controller.
    docs: dts: Added documentation for Xilinx Zynq Reset Controller bindings.
    MIPS: ath79: Add the reset controller to the AR9132 dtsi
    reset: Add a driver for the reset controller on the AR71XX/AR9XXX
    devicetree: Add bindings for the ATH79 reset controller
    reset: socfpga: Update reset-socfpga to read the altr,modrst-offset property
    doc: dt: add documentation for lpc1850-rgu reset driver
    ...

    Linus Torvalds
     
  • Pull ARM SoC platform updates from Olof Johansson:
    "New or improved SoC support:

    - add support for Atmel's SAMA5D2 SoC
    - add support for Freescale i.MX6UL
    - improved support for TI's DM814x platform
    - misc fixes and improvements for RockChip platforms
    - Marvell MVEBU suspend/resume support

    A few driver changes that ideally would belong in the drivers branch
    are also here (acked by appropriate maintainers):

    - power key input driver for Freescale platforms (svns)
    - RTC driver updates for Freescale platforms (svns/mxc)
    - clk fixes for TI DM814/816X

    + a bunch of other changes for various platforms"

    * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (83 commits)
    ARM: rockchip: pm: Fix PTR_ERR() argument
    ARM: imx: mach-imx6ul: Fix allmodconfig build
    clk: ti: fix for definition movement
    ARM: uniphier: drop v7_invalidate_l1 call at secondary entry
    memory: kill off set_irq_flags usage
    rtc: snvs: select option REGMAP_MMIO
    ARM: brcmstb: select ARCH_DMA_ADDR_T_64BIT for LPAE
    ARM: BCM: Enable ARM erratum 798181 for BRCMSTB
    ARM: OMAP2+: Fix power domain operations regression caused by 81xx
    ARM: rockchip: enable PMU_GPIOINT_WAKEUP_EN when entering shallow suspend
    ARM: rockchip: set correct stabilization thresholds in suspend
    ARM: rockchip: rename osc_switch_to_32k variable
    ARM: imx6ul: add fec MAC refrence clock and phy fixup init
    ARM: imx6ul: add fec bits to GPR syscon definition
    rtc: mxc: add support of device tree
    dt-binding: document the binding for mxc rtc
    rtc: mxc: use a second rtc clock
    ARM: davinci: cp_intc: use IRQCHIP_SKIP_SET_WAKE instead of irq_set_wake callback
    soc: mediatek: Fix SCPSYS compilation
    ARM: at91/soc: add basic support for new sama5d2 SoC
    ...

    Linus Torvalds
     

26 Aug, 2015

1 commit


12 Aug, 2015

1 commit

  • Add Clock Domain support to the Clock Pulse Generator (CPG) Module Stop
    (MSTP) Clocks driver using the generic PM Domain. This allows to
    power-manage the module clocks of SoC devices that are part of the
    CPG/MSTP Clock Domain using Runtime PM, or for system suspend/resume.

    SoC devices that are part of the CPG/MSTP Clock Domain and can be
    power-managed through an MSTP clock should be tagged in DT with a
    proper "power-domains" property.

    The CPG/MSTP Clock Domain code will scan such devices for clocks that
    are suitable for power-managing the device, by looking for a clock that
    is compatible with "renesas,cpg-mstp-clocks".

    Signed-off-by: Geert Uytterhoeven
    Acked-by: Laurent Pinchart
    Acked-by: Stephen Boyd
    Reviewed-by: Ulf Hansson
    Reviewed-by: Kevin Hilman
    Signed-off-by: Simon Horman

    Geert Uytterhoeven
     

29 Jul, 2015

1 commit

  • * cleanup-clk-h-includes: (62 commits)
    clk: Remove clk.h from clk-provider.h
    clk: h8300: Remove clk.h and clkdev.h includes
    clk: at91: Include clk.h and slab.h
    clk: ti: Switch clk-provider.h include to clk.h
    clk: pistachio: Include clk.h
    clk: ingenic: Include clk.h
    clk: si570: Include clk.h
    clk: moxart: Include clk.h
    clk: cdce925: Include clk.h
    clk: Include clk.h in clk.c
    clk: zynq: Include clk.h
    clk: ti: Include clk.h
    clk: sunxi: Include clk.h and remove unused clkdev.h includes
    clk: st: Include clk.h
    clk: qcom: Include clk.h
    clk: highbank: Include clk.h
    clk: bcm: Include clk.h
    clk: versatile: Remove clk.h and clkdev.h includes
    clk: ux500: Remove clk.h and clkdev.h includes
    clk: tegra: Properly include clk.h
    ...

    Stephen Boyd
     

21 Jul, 2015

1 commit

  • Clock provider drivers generally shouldn't include clk.h because
    it's the consumer API. Only include clk.h in files that are using
    it. Also add in a clkdev.h include that was missing in a file
    using clkdev APIs.

    Cc: Peter De Schrijver
    Cc: Thierry Reding
    Signed-off-by: Stephen Boyd

    Stephen Boyd
     

16 Jul, 2015

1 commit

  • Let's add a minimal clocks for dm814x to get it booted. This is
    mostly a placeholder and relies on the PLLs being on from the
    bootloader.

    Note that the divider clocks work the same way as on dm816x and
    am335x.

    Cc: Matthijs van Duin
    Cc: Mike Turquette
    Cc: Paul Walmsley
    Cc: Stephen Boyd
    Cc: Tero Kristo
    Acked-by: Stephen Boyd
    Signed-off-by: Tony Lindgren

    Tony Lindgren
     

02 Jun, 2015

18 commits


23 Apr, 2015

2 commits

  • Pull ARM SoC late changes from Olof Johansson:
    "We were expecting to sit on this branch through most of the merge
    window since the contents was merged into our tree late, but we ended
    up sitting on all of our contents so it can go in with the rest.

    The contents here is:

    - a large branch of cleanups of the CM/PRM blocks on OMAP.

    - a couple of patches plumbing up CM/PRM on OMAP5 and DRA7.

    - a branch with DT updates for Freescale i.MX. including some
    shuffling from .dts to .dtsi (include) files that causes a little
    churn"

    * tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (78 commits)
    ARM: OMAP2+: Fix booting with configs that don't have MFD_SYSCON
    ARM: OMAP4+: control: add support for initializing control module via DT
    ARM: dts: dra7: add minimal l4 bus layout with control module support
    ARM: dts: omap5: add minimal l4 bus layout with control module support
    ARM: OMAP4+: control: remove support for legacy pad read/write
    ARM: OMAP4: display: convert display to use syscon for dsi muxing
    ARM: dts: omap4: add minimal l4 bus layout with control module support
    ARM: dts: am4372: add minimal l4 bus layout with control module support
    ARM: dts: am43xx-epos-evm: fix pinmux node layout
    ARM: dts: am33xx: add minimal l4 bus layout with control module support
    ARM: dts: omap3: add minimal l4 bus layout with control module support
    ARM: dts: omap24xx: add minimal l4 bus layout with control module support
    ARM: OMAP2+: control: add syscon support for register accesses
    ARM: OMAP2+: id: cache omap_type value
    ARM: OMAP2+: control: remove API for getting control module base address
    ARM: OMAP2+: clock: add low-level support for regmap
    ARM: OMAP4+: PRM: get rid of cpu_is_omap44xx calls from interrupt init
    ARM: OMAP4+: PRM: setup prm_features from the PRM init time flags
    ARM: OMAP2+: CM: move SoC specific init calls within a generic API
    ARM: OMAP4+: PRM: determine prm_device_inst based on DT compatibility
    ...

    Linus Torvalds
     
  • Pull ARM SoC multiplatform code changes from Olof Johansson:
    "The changes here belong to two main platforms:

    - Atmel At91 is flipping the bit and going multiplatform. This
    includes some cleanups and removal of code, and the final flip of
    config dependencies

    - Shmobile has several platforms that are going multiplatform, but
    this branch also contains a bunch of cleanups that they weren't
    able to keep separate in a good way. THere's also a removal of one
    of their SoCs and the corresponding boards (sh7372 and mackerel)"

    * tag 'armsoc-multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (67 commits)
    ARM: at91/pm: move AT91_MEMCTRL_* to pm.h
    ARM: at91/pm: move the standby functions to pm.c
    ARM: at91: fix pm_suspend.S compilation when ARMv6 is selected
    ARM: at91: add a Kconfig dependency on multi-platform
    ARM: at91: drop AT91_TIMER_HZ
    ARM: at91: remove hardware.h
    ARM: at91: remove SoC headers
    ARM: at91: remove useless mach/cpu.h
    ARM: at91: remove unused headers
    ARM: at91: switch at91_dt_defconfig to multiplatform
    ARM: at91: switch to multiplatform
    ARM: shmobile: r8a7778: enable multiplatform target
    ARM: shmobile: bockw: add sound to DT
    ARM: shmobile: r8a7778: add sound to DT
    ARM: shmobile: bockw: add devices hooked up to i2c0 to DT
    DT: i2c: add trivial binding for OKI ML86V7667 video decoder
    ARM: shmobile: r8a7778: common clock framework CPG driver
    ARM: shmobile: bockw dts: set extal clock frequency
    ARM: shmobile: bockw dts: Move Ethernet node to BSC
    ARM: shmobile: r8a73a4: Remove legacy code
    ...

    Linus Torvalds
     

12 Apr, 2015

1 commit

  • Change to using endian agnostic _relaxed IO accessors instead of __raw

    Signed-off-by: Ben Dooks
    --
    CC: Andrew Victor
    CC: Nicolas Ferre
    CC: Jean-Christophe Plagniol-Villard
    CC: Mike Turquette (maintainer:COMMON CLK FRAMEWORK)
    CC: Stephen Boyd (maintainer:COMMON CLK FRAMEWORK)
    CC: linux-kernel@vger.kernel.org (open list:COMMON CLK FRAMEWORK)
    Signed-off-by: Michael Turquette

    Ben Dooks