28 Feb, 2018

1 commit


02 Nov, 2017

1 commit

  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

18 Sep, 2017

1 commit


14 Sep, 2017

1 commit

  • Pull clk updates from Stephen Boyd:
    "The diff is dominated by the Allwinner A10/A20 SoCs getting converted
    to the sunxi-ng framework. Otherwise, the heavy hitters are various
    drivers for SoCs like AT91, Amlogic, Renesas, and Rockchip. There are
    some other new clk drivers in here too but overall this is just a
    bunch of clk drivers for various different pieces of hardware and a
    collection of non-critical fixes for clk drivers.

    New Drivers:
    - Allwinner R40 SoCs
    - Renesas R-Car Gen3 USB 2.0 clock selector PHY
    - Atmel AT91 audio PLL
    - Uniphier PXs3 SoCs
    - ARC HSDK Board PLLs
    - AXS10X Board PLLs
    - STMicroelectronics STM32H743 SoCs

    Removed Drivers:
    - Non-compiling mb86s7x support

    Updates:
    - Allwinner A10/A20 SoCs converted to sunxi-ng framework
    - Allwinner H3 CPU clk fixes
    - Renesas R-Car D3 SoC
    - Renesas V2H and M3-W modules
    - Samsung Exynos5420/5422/5800 audio fixes
    - Rockchip fractional clk approximation fixes
    - Rockchip rk3126 SoC support within the rk3128 driver
    - Amlogic gxbb CEC32 and sd_emmc clks
    - Amlogic meson8b reset controller support
    - IDT VersaClock 5P49V5925/5P49V6901 support
    - Qualcomm MSM8996 SMMU clks
    - Various 'const' applications for struct clk_ops
    - si5351 PLL reset bugfix
    - Uniphier audio on LD11/LD20 and ethernet support on LD11/LD20/Pro4/PXs2
    - Assorted Tegra clk driver fixes"

    * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (120 commits)
    clk: si5351: fix PLL reset
    ASoC: atmel-classd: remove aclk clock
    ASoC: atmel-classd: remove aclk clock from DT binding
    clk: at91: clk-generated: make gclk determine audio_pll rate
    clk: at91: clk-generated: create function to find best_diff
    clk: at91: add audio pll clock drivers
    dt-bindings: clk: at91: add audio plls to the compatible list
    clk: at91: clk-generated: remove useless divisor loop
    clk: mb86s7x: Drop non-building driver
    clk: ti: check for null return in strrchr to avoid null dereferencing
    clk: Don't write error code into divider register
    clk: uniphier: add video input subsystem clock
    clk: uniphier: add audio system clock
    clk: stm32h7: Add stm32h743 clock driver
    clk: gate: expose clk_gate_ops::is_enabled
    clk: nxp: clk-lpc32xx: rename clk_gate_is_enabled()
    clk: uniphier: add PXs3 clock data
    clk: hi6220: change watchdog clock source
    clk: Kconfig: Name RK805 in Kconfig for COMMON_CLK_RK808
    clk: cs2000: Add cs2000_set_saved_rate
    ...

    Linus Torvalds
     

02 Sep, 2017

1 commit

  • This new clock driver set allows to have a fractional divided clock that
    would generate a precise clock particularly suitable for audio
    applications.

    The main audio pll clock has two children clocks: one that is connected
    to the PMC, the other that can directly drive a pad. As these two routes
    have different enable bits and different dividers and divider formulas,
    they are handled by two different drivers. Each of them could modify the
    rate of the main audio pll parent.

    The main audio pll clock can output 620MHz to 700MHz.

    Signed-off-by: Nicolas Ferre
    Signed-off-by: Quentin Schulz
    Acked-by: Boris Brezillon
    Signed-off-by: Stephen Boyd

    Quentin Schulz
     

23 Aug, 2017

1 commit

  • My previous patch fixed a link error for all at91 platforms when
    CONFIG_ARM_CPU_SUSPEND was not set, however this caused another
    problem on a configuration that enabled CONFIG_ARCH_AT91 but none
    of the individual SoCs, and that also enabled CPU_ARM720 as
    the only CPU:

    warning: (ARCH_AT91 && SOC_IMX23 && SOC_IMX28 && ARCH_PXA && MACH_MVEBU_V7 && SOC_IMX6 && ARCH_OMAP3 && ARCH_OMAP4 && SOC_OMAP5 && SOC_AM33XX && SOC_DRA7XX && ARCH_EXYNOS3 && ARCH_EXYNOS4 && EXYNOS5420_MCPM && EXYNOS_CPU_SUSPEND && ARCH_VEXPRESS_TC2_PM && ARM_BIG_LITTLE_CPUIDLE && ARM_HIGHBANK_CPUIDLE && QCOM_PM) selects ARM_CPU_SUSPEND which has unmet direct dependencies (ARCH_SUSPEND_POSSIBLE)
    arch/arm/kernel/sleep.o: In function `cpu_resume':
    (.text+0xf0): undefined reference to `cpu_arm720_suspend_size'
    arch/arm/kernel/suspend.o: In function `__cpu_suspend_save':
    suspend.c:(.text+0x134): undefined reference to `cpu_arm720_do_suspend'

    This improves the hack some more by only selecting ARM_CPU_SUSPEND
    for the part that requires it, and changing pm.c to drop the
    contents of unused init functions so we no longer refer to
    cpu_resume on at91 platforms that don't need it.

    Fixes: cc7a938f5f30 ("ARM: at91: select CONFIG_ARM_CPU_SUSPEND")
    Acked-by: Alexandre Belloni
    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

19 Jun, 2017

2 commits

  • …lloni/linux into next/soc

    Bring in the fixes branch to avoid a merge conflict between new SoC options and
    the build fix adding CONFIG_AMR_CPU_SUSPEND.

    Fixes for 4.12:

    Fix two compilation issues

    * tag 'at91-4.12-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
    ARM: at91: select CONFIG_ARM_CPU_SUSPEND
    memory: atmel-ebi: mark PM ops as __maybe_unused

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     
  • …elloni/linux into next/soc

    SoC for 4.13:

    - New suspend/resume mode for sama5d2
    - Initial support for armv7m based SoCs

    * tag 'at91-ab-4.13-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
    ARM: at91: remove atmel_nand_data
    ARM: at91: fix at91_suspend_entering_slow_clock link error
    ARM: at91: debug: add samv7x support
    ARM: at91: add armv7m SoC detection
    ARM: at91: handle CONFIG_PM for armv7m configurations
    ARM: at91: Add armv7m support
    ARM: at91: Document armv7m compatibles
    ARM: at91: Documentation: add armv7m families
    ARM: at91: pm: fallback to slowclock when backup mode fails
    ARM: at91: pm: allow selecting standby and suspend modes
    ARM: at91: pm: Add sama5d2 backup mode

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     

13 Jun, 2017

1 commit

  • When CONFIG_ARCH_AT91 is enabled, but none of the specific SoC support
    is in use, some at91 specific drivers fail to link:

    drivers/tty/serial/atmel_serial.o: In function `atmel_serial_suspend':
    atmel_serial.c:(.text.atmel_serial_suspend+0x1e): undefined reference to `at91_suspend_entering_slow_clock'
    drivers/usb/host/ohci-at91.o: In function `ohci_hcd_at91_drv_suspend':
    ohci-at91.c:(.text.ohci_hcd_at91_drv_suspend+0x12): undefined reference to `at91_suspend_entering_slow_clock'
    drivers/usb/gadget/udc/at91_udc.o: In function `at91udc_suspend':
    at91_udc.c:(.text.at91udc_suspend+0x26): undefined reference to `at91_suspend_entering_slow_clock'

    This changes the at91_suspend_entering_slow_clock hack once more, adding
    an alternative inline implementation that is used exactly in those cases
    that don't provide the normal implementation.

    Fixes: c1892c2379d2 ("ARM: at91: handle CONFIG_PM for armv7m configurations")
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Alexandre Belloni

    Arnd Bergmann
     

02 Jun, 2017

2 commits


29 May, 2017

1 commit

  • The reference to cpu_resume requires the corresponding
    generic code to be enabled when CONFIG_PM is set:

    arch/arm/mach-at91/pm.o: In function `sama5d2_pm_init':
    pm.c:(.init.text+0x5e8): undefined reference to `cpu_resume'

    Fixes: 24a0f5c539f9 ("ARM: at91: pm: Add sama5d2 backup mode")
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Alexandre Belloni

    Arnd Bergmann
     

19 May, 2017

1 commit

  • gcc-7 warns about some declarations that are more 'const' than necessary:

    arch/arm/mach-at91/pm.c:338:34: error: duplicate 'const' declaration specifier [-Werror=duplicate-decl-specifier]
    static const struct of_device_id const ramc_ids[] __initconst = {
    arch/arm/mach-bcm/bcm_kona_smc.c:36:34: error: duplicate 'const' declaration specifier [-Werror=duplicate-decl-specifier]
    static const struct of_device_id const bcm_kona_smc_ids[] __initconst = {
    arch/arm/mach-spear/time.c:207:34: error: duplicate 'const' declaration specifier [-Werror=duplicate-decl-specifier]
    static const struct of_device_id const timer_of_match[] __initconst = {
    arch/arm/mach-omap2/prm_common.c:714:34: error: duplicate 'const' declaration specifier [-Werror=duplicate-decl-specifier]
    static const struct of_device_id const omap_prcm_dt_match_table[] __initconst = {
    arch/arm/mach-omap2/vc.c:562:35: error: duplicate 'const' declaration specifier [-Werror=duplicate-decl-specifier]
    static const struct i2c_init_data const omap4_i2c_timing_data[] __initconst = {

    The ones in arch/arm were apparently all introduced accidentally by one
    commit that correctly marked a lot of variables as __initconst.

    Fixes: 19c233b79d1a ("ARM: appropriate __init annotation for const data")
    Acked-by: Alexandre Belloni
    Acked-by: Tony Lindgren
    Acked-by: Nicolas Pitre
    Acked-by: Florian Fainelli
    Acked-by: Viresh Kumar
    Acked-by: Krzysztof Hałasa
    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

15 May, 2017

3 commits


01 Apr, 2017

12 commits


14 Mar, 2017

1 commit

  • On some DDR controllers, compatible with the sama5d3 one,
    the sequence to enter/exit/re-enter the self-refresh mode adds
    more constrains than what is currently written in the at91_idle
    driver. An actual access to the DDR chip is needed between exit
    and re-enter of this mode which is somehow difficult to implement.
    This sequence can completely hang the SoC. It is particularly
    experienced on parts which embed a L2 cache if the code run
    between IDLE calls fits in it...

    Moreover, as the intention is to enter and exit pretty rapidly
    from IDLE, the power-down mode is a good candidate.

    So now we use power-down instead of self-refresh. As we can
    simplify the code for sama5d3 compatible DDR controllers,
    we instantiate a new sama5d3_ddr_standby() function.

    Signed-off-by: Nicolas Ferre
    Cc: # v4.1+
    Fixes: 017b5522d5e3 ("ARM: at91: Add new binding for sama5d3-ddramc")
    Signed-off-by: Alexandre Belloni

    Nicolas Ferre
     

11 Jan, 2017

1 commit


22 Sep, 2016

1 commit


02 Aug, 2016

2 commits

  • Pull ARM SoC platform updates from Olof Johansson:
    "Improved and new platform support for various SoCs:

    New SoC support:
    - Broadcom BCM23550
    - Freescale i.MX7Solo
    - Qualcomm MDM9615
    - Renesas r8a7792

    Improvements:
    - convert clps711x to multiplatform
    - debug uart improvements for Atmel platforms
    - Tango platform improvements: HOTPLUG_CPU, Suspend-to-ram
    - OMAP tweaks and improvements to hwmod
    - OMAP support for kexec on SMP"

    * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (109 commits)
    ARM: davinci: fix build break because of undeclared dm365_evm_snd_data
    ARM: s3c64xx: smartq: Avoid sparse warnings
    ARM: sti: Implement dummy L2 cache's write_sec
    ARM: STi: Update machine _namestr to be more generic.
    arm: meson: explicitly select clk drivers
    ARM: tango: add Suspend-to-RAM support
    ARM: hisi: consolidate the hisilicon machine entries
    ARM: tango: fix CONFIG_HOTPLUG_CPU=n build
    MAINTAINERS: Update BCM281XX/BCM11XXX/BCM216XX entry
    MAINTAINERS: Update BCM63XX entry
    MAINTAINERS: Add NS2 entry
    MAINTAINERS: Fix nsp false-positives
    MAINTAINERS: Change L to M for Broadcom ARM/ARM64 SoC entries
    ARM: debug: Enable DEBUG_BCM_5301X for Northstar Plus SoCs
    ARM: clps711x: Switch to MULTIPLATFORM
    ARM: clps711x: Remove boards support
    ARM: clps711x: Add basic DT support
    ARM: clps711x: Reduce static map size
    ARM: SAMSUNG: Constify iomem address passed to s5p_init_cpu
    ARM: oxnas: Change OX810SE default driver config
    ...

    Linus Torvalds
     
  • Pull ARM SoC cleanups from Olof Johansson:
    "The cleanup branch keeps going down in size as we've completed a lot
    of the major legacy platform removals and conversions.

    A handful of changes this time around, some of the themes or larger
    sets are:

    - A bunch of i.MX cleanups around platform detection, init call cleanups
    - Misc fixes of missing/implicit includes
    - Removal of ARCH_[WANT_OPTIONAL|REQUIRE]_GPIOLIB"

    * tag 'armsoc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (40 commits)
    ARM: mps2: fix typo
    ARM: s3c64xx: avoid warning about 'struct device_node'
    bus: mvebu-mbus: make mvebu_mbus_syscore_ops static
    bus: mvebu-mbus: fix __iomem on register pointers
    ARM: tegra: Remove board_init_funcs array
    ARM: iop: Fix indentation
    ARM: imx: remove cpu_is_mx*()
    ARM: imx: remove last call to cpu_is_mx5*
    ARM: imx: rework mx27_pm_init() call
    ARM: imx: deconstruct mx3_idle
    ARM: imx: deconstruct mxc_rnga initialization
    ARM: imx: remove cpu_is_mx1 check
    ARM: i.MX: Do not explicitly call l2x0_of_init()
    ARM: i.MX: system.c: Tweak prefetch settings for performance
    ARM: i.MX: system.c: Replace magic numbers
    ARM: i.MX: system.c: Remove redundant errata 752271 code
    ARM: i.MX: system.c: Convert goto to if statement
    ARM: Kirkwood: fix kirkwood_pm_init() declaration/type
    ARM: Kirkwood: make kirkwood_disable_mbus_error_propagation() static
    ARM: orion5x: make orion5x_legacy_handle_irq static
    ...

    Linus Torvalds
     

07 Jul, 2016

1 commit


24 Jun, 2016

1 commit

  • Use helper of_platform_default_populate() in linux/of_platform
    when possible, instead of calling of_platform_populate() with
    the default match table.

    Acked-by: Viresh Kumar
    Acked-by: Nicolas Ferre
    Cc: Nicolas Ferre
    Cc: Krzysztof Halasa
    Cc: Sekhar Nori
    Cc: Shawn Guo
    Cc: Russell King
    Cc: Roland Stigge
    Cc: Jason Cooper
    Cc: Ray Jui
    Cc: Viresh Kumar
    Cc: Stephen Warren
    Cc: Rob Herring
    Cc: Michal Simek
    Signed-off-by: Kefeng Wang
    Signed-off-by: Rob Herring

    Kefeng Wang
     

21 Jun, 2016

1 commit

  • Fix a pair of missing statics on un-exported functions and
    include to provide the declaration
    of at91_suspend_entering_slow_clock() to fix the following
    sparse warnings:

    arch/arm/mach-at91/pm.c:127:5: warning: symbol 'at91_suspend_entering_slow_clock' was not declared. Should it be static?
    arch/arm/mach-at91/pm.c:358:6: warning: symbol 'at91rm9200_idle' was not declared. Should it be static?
    arch/arm/mach-at91/pm.c:367:6: warning: symbol 'at91sam9_idle' was not declared. Should it be static?

    Signed-off-by: Ben Dooks
    Acked-by: Nicolas Ferre
    Signed-off-by: Alexandre Belloni

    Ben Dooks
     

04 Jun, 2016

1 commit

  • This replaces:

    - "select ARCH_REQUIRE_GPIOLIB" with "select GPIOLIB" as this can
    now be selected directly.

    - "select ARCH_WANT_OPTIONAL_GPIOLIB" with no dependency: GPIOLIB
    is now selectable by everyone, so we need not declare our
    intent to select it.

    When ordering the symbols the following rationale was used:
    if the selects were in alphabetical order, I moved select GPIOLIB
    to be in alphabetical order, but if the selects were not
    maintained in alphabetical order, I just replaced
    "select ARCH_REQUIRE_GPIOLIB" with "select GPIOLIB".

    Cc: Michael Büsch
    Cc: arm@kernel.org
    Cc: linux-arm-kernel@lists.infradead.org
    Signed-off-by: Linus Walleij
    Signed-off-by: Olof Johansson

    Linus Walleij
     

29 Mar, 2016

2 commits

  • Add EXID of all SoCs of the SAMA5D2 family.

    Signed-off-by: Ludovic Desroches
    Acked-by: Alexandre Belloni
    Acked-by: Arnd Bergmann
    Signed-off-by: Nicolas Ferre

    Ludovic Desroches
     
  • So far, the CIDR and EXID registers were in the DBGU interface. This device
    has disappeared with the SAMA5D2 family. These registers are exposed
    through a new device called chipid.

    Signed-off-by: Ludovic Desroches
    [nicolas.ferre@atmel.com: remove useless warnings]
    Acked-by: Alexandre Belloni
    Acked-by: Rob Herring
    [arnd@arndb.de: suggest to use static functions to reduce scope]
    Acked-by: Arnd Bergmann
    Signed-off-by: Nicolas Ferre

    Ludovic Desroches
     

18 Feb, 2016

1 commit