- 29 Apr, 2019 19 commits
-
-
Olof Johansson authored
Merge tag 'v5.2-rockchip-soc32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/soc Missing of_node_put and some added __init contants. * tag 'v5.2-rockchip-soc32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: ARM: rockchip: add missing of_node_put in rockchip_smp_prepare_pmu ARM: rockchip: Mark pm-init functions __init Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'imx-soc-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/soc i.MX SoC update for 5.2: - Optimize i.MX6 cpuidle driver a little bit by omitting the unnecessary unmask of GINT for WAIT_CLOCKED mode. * tag 'imx-soc-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: ARM: imx6: cpuidle: omit the unnecessary unmask of GINT Signed-off-by: Olof Johansson <olof@lixom.net>
-
https://github.com/vzapolskiy/linux-lpc32xxOlof Johansson authored
ARM: lpc32xx: platform updates for v5.2 Here are the changes for ARM NXP LPC32xx platform files: * removed TEST_CLK_SEL setup out of common clock framework control, * unnecessary header files are removed from inclusion, * registration of SSP0 and SSP1 is removed as done through device tree, * switched the main platform file to SPDX license identifier. * tag 'lpc32xx-soc-for-5.2' of https://github.com/vzapolskiy/linux-lpc32xx: ARM: lpc32xx: use SPDX license identifier ARM: lpc32xx: remove platform data of SSP0 and SSP1 controllers ARM: lpc32xx: remove redundant included headers ARM: lpc32xx: stop overwriting TEST_CLK_SEL Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'ixp4xx-for-armsoc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik into arm/soc This modernizes the IXP4xx platform and adds initial Device Tree Support. We migrate to MULTI_IRQ_HANDLER, bumps the IRQs to offset 16, converts to SPARSE_IRQ, then we add proper subsystem drivers in each subsystem for irqchip, GPIO and clocksource and switch over to using these new drivers. Next we modernize the NPE and QMGR drivers and push them down into drivers/soc. This has been tested on the IXP4xx NSLU2 and the Gateworks GW2358-4. * tag 'ixp4xx-for-armsoc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik: (31 commits) ARM: dts: Add queue manager and NPE to the IXP4xx DTSI soc: ixp4xx: qmgr: Add DT probe code soc: ixp4xx: qmgr: Add DT bindings for IXP4xx qmgr soc: ixp4xx: npe: Add DT probe code soc: ixp4xx: Add DT bindings for IXP4xx NPE soc: ixp4xx: qmgr: Pass resources soc: ixp4xx: Remove unused functions soc: ixp4xx: Uninline several functions soc: ixp4xx: npe: Pass addresses as resources ARM: ixp4xx: Turn the QMGR into a platform device ARM: ixp4xx: Turn the NPE into a platform device ARM: ixp4xx: Move IXP4xx QMGR and NPE headers ARM: ixp4xx: Move NPE and QMGR to drivers/soc ARM: dts: Add some initial IXP4xx device trees ARM: ixp4xx: Add device tree boot support ARM: ixp4xx: Add DT bindings gpio: ixp4xx: Add OF probing support gpio: ixp4xx: Add DT bindings clocksource/drivers/ixp4xx: Add OF initialization support clocksource/drivers/ixp4xx: Add DT bindings ... Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'renesas-arm-soc-for-v5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into arm/soc Renesas ARM Based SoC Updates for v5.2 * Power Management - Fix a leaked reference by adding missing of_node_put * R-Car M2-W (R8A77910) based Porter board - Enable regulator quirk * tag 'renesas-arm-soc-for-v5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: ARM: shmobile: fix a leaked reference by adding missing of_node_put ARM: shmobile: porter: enable R-Car Gen2 regulator quirk Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'tegra-for-5.2-firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/soc firmware: tegra: Changes for v5.2-rc1 This set of changes includes improvements for Trusted Foundations and also moves the source files for this support into the standard location under drivers/firmware. * tag 'tegra-for-5.2-firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: firmware: Move Trusted Foundations support ARM: tegra: Sort dependencies alphabetically ARM: tegra: Add firmware calls required for suspend-resume on Tegra30 ARM: tegra: Always boot CPU in ARM-mode ARM: tegra: Don't apply CPU erratas in insecure mode ARM: tegra: Set up L2 cache using Trusted Foundations firmware ARM: trusted_foundations: Provide information about whether firmware is registered ARM: trusted_foundations: Make prepare_idle call to take mode argument ARM: trusted_foundations: Support L2 cache maintenance Signed-off-by: Olof Johansson <olof@lixom.net>
-
Arnd Bergmann authored
The digicolor platform has three UARTs, but the Kconfig.debug file explicitly lists port zero as the one to be used for the console, while not providing any default values. This can get an automated randconfig build stuck in a loop waiting for the user to input the number. As we already know the physical address, this patch provides that number as default, along with a reasonable default value for the virtual address. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'maintainers_for_v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into arm/soc MAINTAINERS - Add Intel Agilex platform under Dinh Nguyen * tag 'maintainers_for_v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux: MAINTAINERS: Add arm64/intel entry for SoCFPGA Signed-off-by: Olof Johansson <olof@lixom.net>
-
Arnd Bergmann authored
The missing license showed up as a randconfig warning now, no idea why we never saw that earlier. Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Olof Johansson <olof@lixom.net>
-
Arnd Bergmann authored
gpio-ep93xx.h, hardware.h, and platform.h are only used in arch/arm/mach-ep93xx, so we can move them one there and no longer expose them to device drivers. Acked-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Olof Johansson <olof@lixom.net>
-
Arnd Bergmann authored
ep93xx does not have a proper pinctrl driver, but does things ad-hoc through mach/platform.h, which is also used for setting up the boards. To avoid using mach/*.h headers completely, let's move the interfaces into include/linux/soc/. This is far from great, but gets the job done here, without the need for a proper pinctrl driver. Acked-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Olof Johansson <olof@lixom.net>
-
Arnd Bergmann authored
We can communicate the clock rate using platform data rather than setting a flag to use a particular value in the driver, which is cleaner and avoids the dependency. No platform in the kernel currently defines the ep93xx keypad device structure, so this is a rather pointless excercise. Any out of tree users are probably dead now, but if not, they have to change their platform code to match the new platform_data structure. Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Olof Johansson <olof@lixom.net>
-
Arnd Bergmann authored
The header file is the only thing preventing us from building the driver in a cross-platform configuration, so move the structure we are interested in to the global platform_data location and enable compile testing. Acked-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'davinci-for-v5.2/soc' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into arm/soc This update for DaVinci SoC support simplifies the VBUS enable and overcurrent handling code in DA8XX OHCI driver by modeling vbus GPIO as a regulator. This unifies code for all users, device tree and non-device-tree. The OHCI driver patches have been acked by its maintainer. * tag 'davinci-for-v5.2/soc' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci: usb: ohci-da8xx: drop the vbus GPIO ARM: davinci: da830-evm: add a fixed regulator for ohci-da8xx ARM: davinci: omapl138-hawk: add a fixed regulator for ohci-da8xx usb: ohci-da8xx: disable the regulator if the overcurrent irq fired usb: ohci-da8xx: let the regulator framework keep track of use count ARM: davinci: add missing sentinels to GPIO lookup tables Signed-off-by: Olof Johansson <olof@lixom.net>
-
https://github.com/rjarzmik/linuxOlof Johansson authored
This is the pxa changes for 5.2 cycle : - only a little fix the PXA SSP removal path * tag 'pxa-for-5.2' of https://github.com/rjarzmik/linux: ARM: pxa: ssp: Fix "WARNING: invalid free of devm_ allocated data" Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'samsung-soc-5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/soc Samsung mach/soc changes for v5.2 1. Cleanup in mach code. 2. Add necessary fixes for Suspend to RAM on Exynos5422 boards (tested with Odroid XU3/XU4/HC1 family). Finally this brings a working S2R on these Odroid boards (still other drivers might have some issues but mach code seems to be finished). 3. Require MCPM for Exynos542x boards because otherwise not all of cores will come online. 4. GPIO regulator cleanup on S3C6410 Craig. * tag 'samsung-soc-5.2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: ARM: s3c64xx: Tidy up handling of regulator GPIO lookups ARM: exynos: Set MCPM as mandatory for Exynos542x/5800 SoCs ARM: exynos: Fix infinite loops on CPU powerup failure ARM: exynos: Fix a leaked reference by adding missing of_node_put ARM: exynos: Fix undefined instruction during Exynos5422 resume ARM: exynos: Add CPU state management for Exynos542x under secure firmware ARM: exynos: Add Exynos SMC values for secure memory write ARM: exynos: Move Exynos542x CPU state reset to pm_prepare() Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'omap-for-v5.2/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/soc Driver changes for ti-sysc for v5.2 merge window This series of changes for ti-sysc interconnect target module driver gets us to the point where we can actually drop legacy platform data for many devices in favor of device tree data. To do this, we improve ti-sysc driver not to rely on platform data callbacks to manage module clocks, and handle more quirks needed for some devices. Also few minor fixes are needed, but were considered not needed to be sent separately as they only show up with this series. Then we drop several thousands of lines of legacy platform data for omap4, omap5, dra7, am335x and am437x. We drop platform data for mmc, i2c, gpio and uart devices to start with as those are typically easily tested on all devices. In case of unexpected issues, we can just add back the legacy platform data for a single device type if needed. Finally we add initial support for enabling and disabling some devices without legacy platform data callbacks. I was planning on sending the dropping of legacy platform data as a separate series, but already applied Roger's patch on top and pushed it out. Note that this series depends on related SoC and is based on those. * tag 'omap-for-v5.2/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (33 commits) bus: ti-sysc: Add generic enable/disable functions ARM: OMAP2+: Drop mcspi platform data for omap4 ARM: OMAP2+: Drop uart platform data for dra7 ARM: OMAP2+: Drop gpio platform data for dra7 ARM: OMAP2+: Drop i2c platform data for dra7 ARM: OMAP2+: Drop mmc platform data for dra7 ARM: OMAP2+: Drop uart platform data for omap5 ARM: OMAP2+: Drop gpio platform data for omap5 ARM: OMAP2+: Drop i2c platform data for omap5 ARM: OMAP2+: Drop mmc platform data for omap5 ARM: OMAP2+: Drop uart platform data for am33xx and am43xx ARM: OMAP2+: Drop gpio platform data for am33xx and am43xx ARM: OMAP2+: Drop i2c platform data for am33xx and am43xx ARM: OMAP2+: Drop mmc platform data for am330x and am43xx ARM: OMAP2+: Drop uart platform data for omap4 ARM: OMAP2+: Drop gpio platform data for omap4 ARM: OMAP2+: Drop i2c platform data for omap4 ARM: OMAP2+: Drop mmc platform data for omap4 Documentation: bus: ti-sysc: fix spelling mistakes "multipe" and "interconnet" bus: ti-sysc: Detect DMIC for debugging ... Signed-off-by: Olof Johansson <olof@lixom.net>
-
Olof Johansson authored
Merge tag 'omap-for-v5.2/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/soc SoC changes for omap variants for v5.2 merge window This series of changes mostly consists of ti-sysc interconnect driver related preparation work. With these changes and the related ti-sysc driver changes, we can start dropping legacy omap_hwmod_*data.c platform data for many devices. There are also two am335x and am437x related PM changes for secure devices that have ROM handling some parts and needs EFUSE power domain active. * tag 'omap-for-v5.2/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2+: pm33xx-core: Do not Turn OFF CEFUSE as PPA may be using it ARM: OMAP2+: Wakeupgen: AM43xx HS devices should save context like non-HS ARM: OMAP2+: Handle reset quirks for dynamically allocated modules ARM: OMAP2+: Remove hwmod .rev data and use local SoC checks instead ARM: OMAP2+: Allocate struct omap_hwmod based on dts data ARM: OMAP2+: Define _HWMOD_STATE_DEFAULT and use it ARM: OMAP2+: Prepare class allocation for dynamically allocated modules ARM: OMAP2+: Make interconnect target module allocation functions static ARM: OMAP2+: Fix potentially uninitialized return value for _setup_reset() ARM: dts: Fix dcan clkctrl clock for am3 Signed-off-by: Olof Johansson <olof@lixom.net>
-
Ludovic Barre authored
This patch enables AMBA support for stm32 family. stm32 family embeds different amba pl180 variants. Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com> Signed-off-by: Olof Johansson <olof@lixom.net>
-
- 23 Apr, 2019 21 commits
-
-
Wen Yang authored
The call to of_get_next_child returns a node pointer with refcount incremented thus it must be explicitly decremented after the last usage. Detected by coccinelle with the following warnings: ./arch/arm/mach-rockchip/platsmp.c:250:2-8: ERROR: missing of_node_put; acquired a node pointer with refcount incremented on line 241, but without a corresponding object release within this function. ./arch/arm/mach-rockchip/platsmp.c:260:2-8: ERROR: missing of_node_put; acquired a node pointer with refcount incremented on line 241, but without a corresponding object release within this function. ./arch/arm/mach-rockchip/platsmp.c:263:1-7: ERROR: missing of_node_put; acquired a node pointer with refcount incremented on line 241, but without a corresponding object release within this function. Signed-off-by: Wen Yang <wen.yang99@zte.com.cn> Cc: Russell King <linux@armlinux.org.uk> Cc: Heiko Stuebner <heiko@sntech.de> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-rockchip@lists.infradead.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Heiko Stuebner <heiko@sntech.de>
-
Linus Walleij authored
The AHB queue manager and Network Processing Engines are present on all IXP4xx SoCs, so we add them to the overarching device tree include. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This makes the queue manager driver able to probe from the device tree. It only needs to get a memory resource and two interrupts and the platform device provides these as resources, so all is pretty simple. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds device tree bindings for the Intel IXP4xx AHB Queue Manager. Cc: devicetree@vger.kernel.org Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This makes the NPE driver able to probe from the device tree. It only needs to get three memory resources and the plaform device provide these, so all is pretty simple. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds DT bindings for the Intel IXP4xx Network Processing Engine (NPE). These are three firmware-executing units found in the IXP4xx SoC. These bindings use YAML. Cc: devicetree@vger.kernel.org Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
Instead of using hardcoded base address implicitly obtained through <linux/io.h>, pass the physical base for the QMGR block as a memory resource and remap it in the driver. Also pass the two IRQs as resources and obtain them in the driver. Use devm_* accessors and simplify the error path in the process. Drop memory region request as this is done by the devm_ioremap* functions. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
These former inlines turn out to be unused in the kernel. If they are needed in the future, they can be resurrected by reverting or studying this commit. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
These inline functions immediately exploit the static ioremaps for the queue manager memory region. This does not work with multiplatform where everything need to be dynamically remapped, so get rid of these inlines and create new exports for those used by other drivers. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
Instead of using hardcoded base addresses implicitly obtained through <linux/io.h>, pass the physical base for the three NPE blocks as memory resources and remap these in the driver. Drop the memory request region business, this will anyways be done by devm_* remapping functions. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
Instead of registering everything related to the QMGR unconditionally in the module_init() call (which will never work with multiplatform) create a platform device and probe the QMGR like any other device. Put the device second in the list of devices added for the platform so it is there when the dependent network and crypto drivers probe later on. This probe() path will not be taken unconditionally on device tree boots, so remove the DT guard. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
Instead of registering everything related to the NPE unconditionally in the module_init() call (which will never work with multiplatform) create a platform device and probe the NPE like any other device. Put the device first in the list of devices added for the platform so it is there when the dependent network and crypto drivers probe later on. This probe() path will not be taken unconditionally on device tree boots, so remove the DT guard. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This moves the IXP4xx Queue Manager and Network Processing Engine headers out of the <mack/*> include path as that is incompatible with multiplatform. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
The Network Processing Engine and Queue Manager are versatile firmware components used by several IXP4xx drivers. Drivers are relying on getting access to these components using <mach/*> headers which does not work with multiplatform. We need to find a better place for the drivers to live. Let's first move them to drivers/soc and the start to refactor a bit by passing resources and moving headers. This patch introduce static IRQ assignments but that will be fixed by later patches in this series. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds a device tree for the IXP4xx-based Linksys NSLU2 and Gateworks GW2358 which encompass the Gateworks Cambria family. These will be the first IXP4xx device tree platforms. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds a minimal support for booting IXP4xx systems from device tree. We have to add hacks to the QMGR, NPE and notably also ethernet and watchdog drivers so that they don't crash the platform: these drivers are unconditionally starting to grab regions of statically remapped IO space with no concern of the device model or other platforms. We will go in and properly fix these drivers as we go along but for now this hack gets us to a place where we can start working on proper device tree support for these platforms. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds initial device tree bindings for the IXP4xx machines. This time I tried something wild and crazy and try to make proper JSON-style YAML bindings for the top level. Cc: devicetree@vger.kernel.org Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds device tree probe and registration support for the IXP4xx GPIO driver. Cc: Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds DT bindings for the IXP4xx GPIO controller. Cc: devicetree@vger.kernel.org Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds support for setting up the IXP4xx timer driver from device tree. Cc: Thomas Gleixner <tglx@linutronix.de> Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-
Linus Walleij authored
This adds device tree bindings for the Intel IXP4xx timers. Cc: Daniel Lezcano <daniel.lezcano@linaro.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: devicetree@vger.kernel.org Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-