20 Aug, 2020

5 commits

  • The pm save/restore code is fairly small, so in order to
    separate the s3c and s5p platforms, adding an s5p specific
    copy instead of sharing it is actually easier.

    Signed-off-by: Arnd Bergmann
    Link: https://lore.kernel.org/r/20200806182059.2431-17-krzk@kernel.org
    Signed-off-by: Krzysztof Kozlowski

    Arnd Bergmann
     
  • This is the only part of plat-samsung that is really
    shared between the s3c and s5p ports. Moving it to
    drivers/soc/ lets us make them completely independent.

    Signed-off-by: Arnd Bergmann
    Link: https://lore.kernel.org/r/20200806182059.2431-16-krzk@kernel.org
    Signed-off-by: Krzysztof Kozlowski

    Arnd Bergmann
     
  • The pm-debug code is one of the few things shared between
    s3c24xx/s3c64xx and the newer s5pv210. In order to make s5pv210
    independent of plat-samsung, change the common bits of this code to no
    longer reference the s3c specific bits.

    In particular, all the CPU checks need to be moved out of the common
    code into platform specific files.

    Signed-off-by: Arnd Bergmann
    Link: https://lore.kernel.org/r/20200806182059.2431-12-krzk@kernel.org
    Signed-off-by: Krzysztof Kozlowski

    Arnd Bergmann
     
  • On s3c24xx and s3c64xx, this is just a wrapper around
    s3c_pm_debug_init_uart(), but this function does not exist on s5pv210,
    which always uses an empty stub as CONFIG_SAMSUNG_ATAGS is normally
    not set.

    In a configuration that supports both s5pv210 and s3c64xx, we would
    always call the s3c64xx function, which is probably incorrect when
    running on s5pv210.

    Remove the function call completely on s5pv210 and skip the wrapper on
    s3c as a cleanup.

    As a side-effect, the s3c64xx behavior is now always the same, regardless
    of whether it is a DT-only configuration or both DT and ATAGS are
    supported for booting.

    Signed-off-by: Arnd Bergmann
    Link: https://lore.kernel.org/r/20200806182059.2431-11-krzk@kernel.org
    Signed-off-by: Krzysztof Kozlowski

    Arnd Bergmann
     
  • A separate Kconfig option HAVE_S3C2410_WATCHDOG for Samsung SoCs is not
    really needed and the s3c24xx watchdog driver can depend on Samsung ARM
    architectures instead.

    The "HAVE_xxx_WATCHDOG" pattern of dependency is not popular and Samsung
    platforms are here exceptions. All others just depend on
    CONFIG_ARCH_xxx.

    This makes the code slightly smaller without any change in
    functionality.

    Signed-off-by: Krzysztof Kozlowski
    Acked-by: Guenter Roeck

    Krzysztof Kozlowski
     

13 Nov, 2018

1 commit


04 Jan, 2018

1 commit


01 Mar, 2017

1 commit

  • Pull ARM updates from Russell King:

    - nommu updates from Afzal Mohammed cleaning up the vectors support

    - allow DMA memory "mapping" for nommu Benjamin Gaignard

    - fixing a correctness issue with R_ARM_PREL31 relocations in the
    module linker

    - add strlen() prototype for the decompressor

    - support for DEBUG_VIRTUAL from Florian Fainelli

    - adjusting memory bounds after memory reservations have been
    registered

    - unipher cache handling updates from Masahiro Yamada

    - initrd and Thumb Kconfig cleanups

    * 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm: (23 commits)
    ARM: mm: round the initrd reservation to page boundaries
    ARM: mm: clean up initrd initialisation
    ARM: mm: move initrd init code out of arm_memblock_init()
    ARM: 8655/1: improve NOMMU definition of pgprot_*()
    ARM: 8654/1: decompressor: add strlen prototype
    ARM: 8652/1: cache-uniphier: clean up active way setup code
    ARM: 8651/1: cache-uniphier: include instead of
    ARM: 8650/1: module: handle negative R_ARM_PREL31 addends correctly
    ARM: 8649/2: nommu: remove Hivecs configuration is asm
    ARM: 8648/2: nommu: display vectors base
    ARM: 8647/2: nommu: dynamic exception base address setting
    ARM: 8646/1: mmu: decouple VECTORS_BASE from Kconfig
    ARM: 8644/1: Reduce "CPU: shutdown" message to debug level
    ARM: 8641/1: treewide: Replace uses of virt_to_phys with __pa_symbol
    ARM: 8640/1: Add support for CONFIG_DEBUG_VIRTUAL
    ARM: 8639/1: Define KERNEL_START and KERNEL_END
    ARM: 8638/1: mtd: lart: Rename partition defines to be prefixed with PART_
    ARM: 8637/1: Adjust memory boundaries after reservations
    ARM: 8636/1: Cleanup sanity_check_meminfo
    ARM: add CPU_THUMB_CAPABLE to indicate possible Thumb support
    ...

    Linus Torvalds
     

28 Feb, 2017

1 commit


26 Jan, 2017

1 commit

  • This patch moves pad retention control from S5PV210 machine code to
    Exynos pin controller driver. This helps to avoid possible ordering
    and logical dependencies between machine and pin control code. Till
    now it worked fine only because sys_ops for machine code and pin
    controller were called in registration order.

    Signed-off-by: Marek Szyprowski
    Acked-by: Tomasz Figa
    For mach-s5pv210:
    Acked-by: Krzysztof Kozlowski
    Signed-off-by: Linus Walleij

    Marek Szyprowski
     

11 Aug, 2016

1 commit

  • Three platforms used to have header files in include/mach that
    are now all gone, but the removed directories are still being
    included, which leads to -Wmissing-include-dirs warnings.

    This removes the extra -I flags.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

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
     

02 Dec, 2015

1 commit

  • Many ARM sub-architectures use prompts followed by "if" conditional,
    but it is wrong.

    Please notice the difference between

    config ARCH_FOO
    bool "Foo SoCs" if ARCH_MULTI_V7

    and

    config ARCH_FOO
    bool "Foo SoCs"
    depends on ARCH_MULTI_V7

    These two are *not* equivalent!

    In the former statement, it is not ARCH_FOO, but its prompt that
    depends on ARCH_MULTI_V7. So, it is completely valid that ARCH_FOO
    is selected by another, but ARCH_MULTI_V7 is still disabled. As it is
    not unmet dependency, Kconfig never warns. This is probably not what
    you want.

    The former should be used only when you need to do so, and you really
    understand what you are doing. (In most cases, it should be wrong!)

    For enabling/disabling sub-architectures, the latter is always correct.

    As a good side effect, this commit fixes some entries over 80 columns
    (mach-imx, mach-integrator, mach-mbevu).

    [Arnd: I note that there is not really a bug here, according to
    the discussion that followed, but I can see value in being consistent
    and in making the lines shorter]

    Signed-off-by: Masahiro Yamada
    Acked-by: Maxime Ripard
    Acked-by: Nicolas Ferre
    Acked-by: Heiko Stuebner
    Acked-by: Patrice Chotard
    Acked-by: Liviu Dudau
    Acked-by: Krzysztof Kozlowski
    Acked-by: Jun Nie
    Acked-by: Matthias Brugger
    Acked-by: Simon Horman
    Acked-by: Gregory CLEMENT
    Acked-by: Shawn Guo
    Acked-by: Sebastian Hesselbarth
    Acked-by: Thierry Reding
    Acked-by: Krzysztof Halasa
    Acked-by: Maxime Coquelin
    Signed-off-by: Arnd Bergmann

    Masahiro Yamada
     

30 Mar, 2015

1 commit


19 Feb, 2015

1 commit

  • The definition

    static const char *axxia_dt_match[] __initconst = {
    ...

    defines a changable array of constant strings. That is you must not do:

    *axxia_dt_match[0] = 'k';

    but

    axxia_dt_match[0] = "different string";

    is fine. So the annotation __initconst is wrong and yields a compiler
    error when other really const variables are added with __initconst.

    As the struct machine_desc member dt_compat is declared as

    const char *const *dt_compat;

    making the arrays const is the better alternative over changing all
    annotations to __initdata.

    Signed-off-by: Uwe Kleine-König
    Signed-off-by: Arnd Bergmann

    Uwe Kleine-König
     

14 Oct, 2014

1 commit

  • Pull kbuild changes from Michal Marek:
    - fix for handling dependencies of *-objs targets by Masahiro Yamada
    - lots of cleanups in the kbuild machinery, also by Masahiro
    - fixes for the kconfig build to use an UTF-8 capable ncurses library
    if possible and to build on not-so-standard installs
    - some more minor fixes

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kbuild: Do not reference *-n variables in the Makefile
    kbuild: simplify build, clean, modbuiltin shorthands
    kbuild: arm: Do not define "comma" twice
    kbuild: remove obj-n and lib-n handling
    kbuild: remove unnecessary variable initializaions
    kbuild: remove unnecessary "obj- := dummy.o" trick
    kbuild: handle C=... and M=... after entering into build directory
    kbuild: use $(Q) for sub-make target
    kbuild: fake the "Entering directory ..." message more simply
    kconfig/lxdialog: get ncurses CFLAGS with pkg-config
    kconfig: nconfig: fix multi-byte UTF handling
    kconfig: lxdialog: fix spelling
    kbuild: Make scripts executable
    kbuild: remove redundant clean-files from scripts/kconfig/Makefile
    kbuild: refactor script/kconfig/Makefile
    kbuild: handle the dependency of multi-objs hostprogs appropriately
    kbuild: handle multi-objs dependency appropriately

    Linus Torvalds
     

02 Oct, 2014

1 commit

  • Clearing obj-y, obj-m, obj-n, obj- in each Makefile is
    a useless habit.

    They are non-exported variables; therefore they are always empty
    whenever descending into each subdirectory.
    (Moreorver, obj-y and obj-m are also set to empty at the beginning
    of scripts/Makefile.build)

    Signed-off-by: Masahiro Yamada
    Acked-by: Nicolas Ferre
    Acked-by: Peter Foley
    Acked-by: Linus Walleij
    Signed-off-by: Michal Marek

    Masahiro Yamada
     

18 Aug, 2014

1 commit


19 Jul, 2014

9 commits


17 Jun, 2014

1 commit

  • The only remaining driver using the samsung dmadev code is the broken
    samsung-ac97 sound driver. However, as found by Russell's autobuilder,
    the elaborate dependency chains around it cause problems with
    circular dependencies.

    This is an attempt to simplify those dependencies by making the
    SAMSUNG_DMADEV option user-selectable. I also try to keep the
    default settings for all related options unchanged, so we don't
    introduce any regressions against earlier testing on linux-next.

    In particular, all s3c64xx and s5p* platforms keep selecting the
    pl330 and pl08x drivers they require, but the select statement
    is now moved towards the main platform option, and it remains
    optional by unselecting CONFIG_DMADEVICES.

    Signed-off-by: Arnd Bergmann
    Cc: Kukjin Kim

    Arnd Bergmann
     

10 Jun, 2014

1 commit

  • Pull input updates from Dmitry Torokhov:
    "A big update to the Atmel touchscreen driver, devm support for polled
    input devices, several drivers have been converted to using managed
    resources, and assorted driver fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (87 commits)
    Input: synaptics - fix resolution for manually provided min/max
    Input: atmel_mxt_ts - fix invalid return from mxt_get_bootloader_version
    Input: max8997_haptic - add error handling for regulator and pwm
    Input: elantech - don't set bit 1 of reg_10 when the no_hw_res quirk is set
    Input: elantech - deal with clickpads reporting right button events
    Input: edt-ft5x06 - fix an i2c write for M09 support
    Input: omap-keypad - remove platform data support
    ARM: OMAP2+: remove unused omap4-keypad file and code
    Input: ab8500-ponkey - switch to using managed resources
    Input: max8925_onkey - switch to using managed resources
    Input: 88pm860x-ts - switch to using managed resources
    Input: 88pm860x_onkey - switch to using managed resources
    Input: intel-mid-touch - switch to using managed resources
    Input: wacom - process outbound for newer Cintiqs
    Input: wacom - set stylus_in_proximity when pen is in range
    DTS: ARM: OMAP3-N900: Add tsc2005 support
    Input: tsc2005 - add DT support
    Input: add common DT binding for touchscreens
    Input: jornada680_kbd - switch top using managed resources
    Input: adp5520-keys - switch to using managed resources
    ...

    Linus Torvalds
     

27 May, 2014

1 commit

  • By reading the touchscreen configuration from the settings that the
    maXTouch chip is actually using, we can remove some platform data.

    The matrix size is not used for anything, and results in some rather
    confusing code to re-read it because it may change when configuration
    is downloaded, so don't print it out.

    Signed-off-by: Nick Dyer
    Acked-by: Benson Leung
    Acked-by: Yufeng Shen
    Signed-off-by: Dmitry Torokhov

    Nick Dyer
     

24 May, 2014

1 commit

  • S5PV210 is going to get DT support, so we can remove the camera
    bits from the only board using camera on S5PV210. This allows to
    clean the exynos4-is driver by dropping code for non-dt platforms.
    This patch can be dropped if a patch removing the whole board
    file is applied first.

    Signed-off-by: Sylwester Nawrocki
    Acked-by: Kyungmin Park
    Acked-by: Kukjin Kim
    Signed-off-by: Mauro Carvalho Chehab

    Sylwester Nawrocki
     

19 May, 2014

1 commit

  • It is not necessary to download these values to the maXTouch chip on every
    probe, since they are stored in NVRAM. It makes life difficult when tuning
    the device to keep them in sync with the config array/file, and requires a
    new kernel build for minor tweaks.

    These parameters only represent a tiny subset of the available
    configuration options, tracking all of these options in platform data would
    be a endless task. In addition, different versions of maXTouch chips may
    have these values in different places or may not even have them at all.

    Having these values also makes life more complex for device tree and other
    platforms where having to define a static configuration isn't helpful.

    Signed-off-by: Nick Dyer
    Acked-by: Benson Leung
    Acked-by: Yufeng Shen
    Signed-off-by: Dmitry Torokhov

    Nick Dyer
     

06 Apr, 2014

2 commits

  • Pull ARM SoC late cleanups from Arnd Bergmann:
    "These could not be part of the first cleanup branch, because they
    either came too late in the cycle, or they have dependencies on other
    branches. Important changes are:

    - The integrator platform is almost multiplatform capable after some
    reorganization (Linus Walleij)
    - Minor cleanups on Zynq (Michal Simek)
    - Lots of changes for Exynos and other Samsung platforms, including
    further preparations for multiplatform support and the clocks
    bindings are rearranged"

    * tag 'tags/cleanup2-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (54 commits)
    devicetree: fix newly added exynos sata bindings
    ARM: EXYNOS: Fix compilation error in cpuidle.c
    ARM: S5P64X0: Explicitly include linux/serial_s3c.h in mach/pm-core.h
    ARM: EXYNOS: Remove hardware.h file
    ARM: SAMSUNG: Remove hardware.h inclusion
    ARM: S3C24XX: Remove invalid code from hardware.h
    dt-bindings: clock: Move exynos-audss-clk.h to dt-bindings/clock
    ARM: dts: Keep some essential LDOs enabled for arndale-octa board
    ARM: dts: Disable MDMA1 node for arndale-octa board
    ARM: S3C64XX: Fix build for implicit serial_s3c.h inclusion
    serial: s3c: Fix build of header without serial_core.h preinclusion
    ARM: EXYNOS: Allow wake-up using GIC interrupts
    ARM: EXYNOS: Stop using legacy Samsung PM code
    ARM: EXYNOS: Remove PM initcalls and useless indirection
    ARM: EXYNOS: Fix abuse of CONFIG_PM
    ARM: SAMSUNG: Move s3c_pm_check_* prototypes to plat/pm-common.h
    ARM: SAMSUNG: Move common save/restore helpers to separate file
    ARM: SAMSUNG: Move Samsung PM debug code into separate file
    ARM: SAMSUNG: Consolidate PM debug functions
    ARM: SAMSUNG: Use debug_ll_addr() to get UART base address
    ...

    Linus Torvalds
     
  • Pull ARM SoC cleanups from Arnd Bergmann:
    "These cleanup patches are mainly move stuff around and should all be
    harmless. They are mainly split out so that other branches can be
    based on top to avoid conflicts.

    Notable changes are:

    - We finally remove all mach/timex.h, after CLOCK_TICK_RATE is no
    longer used (Uwe Kleine-König)
    - The Qualcomm MSM platform is split out into legacy mach-msm and
    new-style mach-qcom, to allow easier maintainance of the new
    hardware support without regressions (Kumar Gala)
    - A rework of some of the Kconfig logic to simplify multiplatform
    support (Rob Herring)
    - Samsung Exynos gets closer to supporting multiplatform (Sachin
    Kamat and others)
    - mach-bcm3528 gets merged into mach-bcm (Stephen Warren)
    - at91 gains some common clock framework support (Alexandre Belloni,
    Jean-Jacques Hiblot and other French people)"

    * tag 'cleanup-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (89 commits)
    ARM: hisi: select HAVE_ARM_SCU only for SMP
    ARM: efm32: allow uncompress debug output
    ARM: prima2: build reset code standalone
    ARM: at91: add PWM clock
    ARM: at91: move sam9261 SoC to common clk
    ARM: at91: prepare common clk transition for sam9261 SoC
    ARM: at91: updated the at91_dt_defconfig with support for the ADS7846
    ARM: at91: dt: sam9261: Device Tree support for the at91sam9261ek
    ARM: at91: dt: defconfig: Added the sam9261 to the list of DT-enabled SOCs
    ARM: at91: dt: Add at91sam9261 dt SoC support
    ARM: at91: switch sam9rl to common clock framework
    ARM: at91/dt: define main clk frequency of at91sam9rlek
    ARM: at91/dt: define at91sam9rl clocks
    ARM: at91: prepare common clk transition for sam9rl SoCs
    ARM: at91: prepare sam9 dt boards transition to common clk
    ARM: at91: dt: sam9rl: Device Tree for the at91sam9rlek
    ARM: at91/defconfig: Add the sam9rl to the list of DT-enabled SOCs
    ARM: at91: Add at91sam9rl DT SoC support
    ARM: at91: prepare at91sam9rl DT transition
    ARM: at91/defconfig: refresh at91sam9260_9g20_defconfig
    ...

    Linus Torvalds
     

22 Mar, 2014

1 commit

  • Building MACH_TORBRECK by itself results in a build error
    because we try to reference the s3c_device_cfcon definition
    that is hidden inside CONFIG_SAMSUNG_DEV_IDE. This changes
    the Kconfig logic to ensure that option is enabled when we
    need it.

    Signed-off-by: Arnd Bergmann
    Acked-by: Kukjin Kim
    Cc: Tomasz Figa
    Cc: Ben Dooks

    Arnd Bergmann
     

11 Mar, 2014

1 commit


10 Mar, 2014

1 commit

  • …ene/linux-samsung into next/cleanup

    Samsung cleanup for v3.15 from Kukjin Kim:
    - Use generic uncompress.h for exynos and
    remove exynos <mach/uncompress.h> accordingly
    (other uncompress.h files will be removed)
    - move <plat/rtc-core.h> into s3c24xx <mach/rtc-core.h>
    - remove unused header files
    - cleanup exynos related non-DT stuffs
    - use inclusion <linux/serial_s3c.h> instead of
    <plat/regs-serial.h>
    - remove unneeded Kconfig entries:
    S3C24XX_GPIO_EXTRA64 and S3C24XX_GPIO_EXTRA128
    - remove unneeded function s3c24xx_init_cpu()
    - remove obsolete s3c24xx <mach/tick.h>

    * tag 'samsung-cleanup' of http://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
    ARM: EXYNOS: Remove uncompress.h
    ARM: debug: Use generic uncompress.h for exynos
    ARM: S3C24XX: Move rtc-core.h from plat to mach
    ARM: EXYNOS: Remove unused header file from pm_domains.c
    ARM: SAMSUNG: Remove Exynos specific code from devs, s5p-pm-irq and pm-gpio.c
    ARM: SAMSUNG: Delete unused plat/regs-serial.h header file
    ARM: SAMSUNG: Replace inclusion of plat/regs-serial.h header file
    ARM: SAMSUNG: Remove platform dependency from samsung.S
    ARM: S3C24XX: get rid of unneeded selects
    ARM: SAMSUNG: remove unneeded s3c24xx_init_cpu()
    ARM: SAMSUNG: remove obsolete tick.h

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

    Olof Johansson
     

14 Feb, 2014

1 commit


21 Dec, 2013

1 commit

  • While isn't used for multi-platform builds since long it
    still is for "normal" builds. As the previous patches fix all sites to
    not make use of this per-platform file, it can go now for good also for
    platforms that are not (yet) converted to multi-platform.

    While at it there are no users of CLOCK_TICK_RATE any more, so also drop
    the dummy #define.

    Signed-off-by: Uwe Kleine-König

    Uwe Kleine-König
     

17 Nov, 2013

1 commit

  • …ierry.reding/linux-pwm

    Pull pwm changes from Thierry Reding:
    "Mostly bug fixes and clean up. There is a new driver, which is
    actually moving a custom PWM driver from drivers/misc.

    The majority of the patches are enhancements to the device tree
    support in the pwm-backlight driver. Backlights can now additionally
    be powered using a regulator and enabled using a GPIO in addition to
    just the PWM input"

    * tag 'pwm/for-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (30 commits)
    Documentation/pwm: Update supported SoC name for pwm-samsung
    pwm: samsung: Fix kernel warning while unexporting a channel
    MAINTAINERS: Move PWM subsystem tree to kernel.org
    Documentation/pwm: Fix trivial typos
    pwm-backlight: Remove unused variable
    pwm_backlight: avoid short blank screen while doing hibernation
    pwm-backlight: Fix brightness adjustment
    pwm: add ep93xx PWM support
    pwm-backlight: Allow for non-increasing brightness levels
    pwm-backlight: Add power supply support
    pwm-backlight: Use new enable_gpio field
    unicore32: Initialize PWM backlight enable_gpio field
    ARM: shmobile: Initialize PWM backlight enable_gpio field
    ARM: SAMSUNG: Initialize PWM backlight enable_gpio field
    ARM: pxa: Initialize PWM backlight enable_gpio field
    ARM: OMAP: Initialize PWM backlight enable_gpio field
    pwm-backlight: Add optional enable GPIO
    pwm-backlight: Track enable state
    pwm-backlight: Refactor backlight power on/off
    pwm-backlight: Improve readability
    ...

    Linus Torvalds