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
     

28 Jul, 2015

1 commit

  • set_irq_flags is ARM specific with custom flags which have genirq
    equivalents. Convert drivers to use the genirq interfaces directly, so we
    can kill off set_irq_flags. The translation of flags is as follows:

    IRQF_VALID -> !IRQ_NOREQUEST
    IRQF_PROBE -> !IRQ_NOPROBE
    IRQF_NOAUTOEN -> IRQ_NOAUTOEN

    For IRQs managed by an irqdomain, the irqdomain core code handles clearing
    and setting IRQ_NOREQUEST already, so there is no need to do this in
    .map() functions and we can simply remove the set_irq_flags calls. Some
    users also modify IRQ_NOPROBE and this has been maintained although it
    is not clear that is really needed. There appears to be a great deal of
    blind copy and paste of this code.

    Signed-off-by: Rob Herring
    Cc: Russell King
    Cc: Sekhar Nori
    Cc: Kevin Hilman
    Cc: Jason Cooper
    Cc: Andrew Lunn
    Cc: Sebastian Hesselbarth
    Cc: Gregory Clement
    Acked-by: Hans Ulli Kroll
    Acked-by: Shawn Guo
    Cc: Sascha Hauer
    Cc: Imre Kaloz
    Acked-by: Krzysztof Halasa
    Cc: Greg Ungerer
    Cc: Roland Stigge
    Cc: Tony Lindgren
    Cc: Daniel Mack
    Cc: Haojian Zhuang
    Cc: Robert Jarzmik
    Cc: Simtec Linux Team
    Cc: Kukjin Kim
    Cc: Krzysztof Kozlowski
    Acked-by: Wan ZongShun
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-omap@vger.kernel.org
    Cc: linux-samsung-soc@vger.kernel.org
    Tested-by: Kevin Hilman
    Signed-off-by: Olof Johansson

    Rob Herring
     

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
     

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
     

21 Sep, 2013

2 commits

  • This alters the IOP platforms to pass a physical base for their
    GPIO blocks and alters the driver to remap it when probing
    instead of relying on the virtual addresses to be used.

    Cc: Lennert Buytenhek
    Cc: Dan Williams
    Cc: Mikael Pettersson
    Tested-by: Aaro Koskinen
    Signed-off-by: Linus Walleij

    Linus Walleij
     
  • This converts the IOP32x and IOP33x platforms to pass their
    base address offset by a resource attached to a platform device
    instead of using static offset macros implicitly passed
    through including . Delete the
    local and headers
    and remove the selection of NEED_MACH_GPIO_H.

    Pass the virtual address as a resource in the platform device
    at this point for bisectability, next patch will pass the
    physical address as is custom.

    Cc: Lennert Buytenhek
    Cc: Dan Williams
    Cc: Mikael Pettersson
    Tested-by: Aaro Koskinen
    Signed-off-by: Linus Walleij

    Linus Walleij
     

26 Aug, 2013

3 commits


06 Feb, 2013

1 commit

  • …-2.6 into next/cleanup

    From Shawn Guo:
    The series cleans up ARCH_HAS_DECOMP_WDOG and arch_decomp_wdog which
    are unused on ARM architecure. Samsung has some code setting up wdog
    in arch_decomp_wdog(). But since CONFIG_S3C_BOOT_WATCHDOG is defined
    nowhere, it will not run. Otherwise, system can not boot at all when
    wdog is set up but no one pats it.

    * tag 'cleanup-decompwdog-3.9' of git://git.linaro.org/people/shawnguo/linux-2.6:
    ARM: samsung: remove unused arch_decomp_wdog() code
    ARM: remove unused arch_decomp_wdog()
    ARM: decompress: remove unused ARCH_HAS_DECOMP_WDOG

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

    Olof Johansson
     

11 Jan, 2013

1 commit

  • With ARCH_HAS_DECOMP_WDOG removed from arch/arm/boot/compressed/decompress.c,
    all the arch_decomp_wdog() definition at platform level is unneeded.
    Remmove it.

    Signed-off-by: Shawn Guo
    Acked-by: Nicolas Pitre
    Acked-by: Jason Cooper

    Shawn Guo
     

25 Dec, 2012

1 commit

  • Now that the only field in struct sys_timer is .init, delete the struct,
    and replace the machine descriptor .timer field with the initialization
    function itself.

    This will enable moving timer drivers into drivers/clocksource without
    having to place a public prototype of each struct sys_timer object into
    include/linux; the intent is to create a single of_clocksource_init()
    function that determines which timer driver to initialize by scanning
    the device dtree, much like the proposed irqchip_init() at:
    http://www.spinics.net/lists/arm-kernel/msg203686.html

    Includes mach-omap2 fixes from Igor Grinberg.

    Tested-by: Robert Jarzmik
    Signed-off-by: Stephen Warren

    Stephen Warren
     

26 Jul, 2012

1 commit

  • Move iop33x and iop32x PCI to fixed i/o mapping and remove io.h. This
    changes the PCI bus addresses from the cpu address to 0 based. It appears
    that there is translation h/w for this, but its untested.

    Not sure what to do with io_offset. I think it should always be 0.
    AFAICT, PCI setup is skipped if the ATU is already setup.

    Signed-off-by: Rob Herring
    Reviewed-by: Arnd Bergmann

    Rob Herring
     

14 May, 2012

2 commits

  • Most PCI implementations perform simple root bus scanning. Rather than
    having each group of platforms provide a duplicated bus scan function,
    provide the PCI configuration ops structure via the hw_pci structure,
    and call the root bus scanning function from core ARM PCI code.

    Acked-by: Krzysztof Hałasa
    Signed-off-by: Russell King

    Russell King
     
  • Most PCI implementations use the standard PCI swizzle function, which
    handles the well defined behaviour of PCI-to-PCI bridges which can be
    found on cards (eg, four port ethernet cards.)

    Rather than having almost every platform specify the standard swizzle
    function, make this the default when no swizzle function is supplied.
    Therefore, a swizzle function only needs to be provided when there is
    something exceptional which needs to be handled.

    This gets rid of the swizzle initializer from 47 files, and leaves us
    with just two platforms specifying a swizzle function: ARM Integrator
    and Chalice CATS.

    Acked-by: Krzysztof Hałasa
    Signed-off-by: Russell King

    Russell King
     

30 Mar, 2012

1 commit

  • Pull "ARM: cleanups of io includes" from Olof Johansson:
    "Rob Herring has done a sweeping change cleaning up all of the
    mach/io.h includes, moving some of the oft-repeated macros to a common
    location and removing a bunch of boiler plate. This is another step
    closer to a common zImage for multiple platforms."

    Fix up various fairly trivial conflicts ( removal vs changes
    around it, tegra localtimer.o is *still* gone, yadda-yadda).

    * tag 'cleanup2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (29 commits)
    ARM: tegra: Include assembler.h in sleep.S to fix build break
    ARM: pxa: use common IOMEM definition
    ARM: dma-mapping: convert ARCH_HAS_DMA_SET_COHERENT_MASK to kconfig symbol
    ARM: __io abuse cleanup
    ARM: create a common IOMEM definition
    ARM: iop13xx: fix missing declaration of iop13xx_init_early
    ARM: fix ioremap/iounmap for !CONFIG_MMU
    ARM: kill off __mem_pci
    ARM: remove bunch of now unused mach/io.h files
    ARM: make mach/io.h include optional
    ARM: clps711x: remove unneeded include of mach/io.h
    ARM: dove: add explicit include of dove.h to addr-map.c
    ARM: at91: add explicit include of hardware.h to uncompressor
    ARM: ep93xx: clean-up mach/io.h
    ARM: tegra: clean-up mach/io.h
    ARM: orion5x: clean-up mach/io.h
    ARM: davinci: remove unneeded mach/io.h include
    [media] davinci: remove includes of mach/io.h
    ARM: OMAP: Remove remaining includes for mach/io.h
    ARM: msm: clean-up mach/io.h
    ...

    Linus Torvalds
     

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
     

07 Mar, 2012

1 commit

  • __mem_pci is only used to enable readl/writel and friends. Just condition
    this on readl being defined and remove all the __mem_pci defines.

    Signed-off-by: Rob Herring
    Cc: Russell King
    Cc: Lennert Buytenhek
    Cc: Imre Kaloz
    Cc: Krzysztof Halasa
    Cc: Nicolas Pitre
    Cc: Ben Dooks
    Cc: Kukjin Kim
    Cc: Colin Cross
    Cc: Olof Johansson
    Cc: Stephen Warren

    Rob Herring
     

23 Feb, 2012

1 commit


22 Feb, 2012

1 commit

  • Now that most platforms don't need disable_fiq and arch_ret_to_user
    macros, we can remove the empty macros or empty entry-macro.S files.

    Signed-off-by: Rob Herring
    Acked-by: Jamie Iles
    Acked-by: Nicolas Pitre
    Acked-by: Tony Lindgren
    Acked-by: Linus Walleij
    Acked-by: Ryan Mallon
    Acked-by: Nicolas Ferre
    Acked-by: H Hartley Sweeten
    Acked-by: Shawn Guo

    Rob Herring
     

21 Jan, 2012

1 commit

  • When this is the only content remaining in mach/system.h then the
    whole file is removed.

    Signed-off-by: Nicolas Pitre
    Acked-by: H Hartley Sweeten
    Acked-and-tested-by: Jamie Iles
    Acked-by: Tony Lindgren
    Acked-by: David Brown
    Acked-by: Stephen Warren
    Acked-by: Linus Walleij

    Nicolas Pitre
     

05 Jan, 2012

3 commits

  • Conflicts:
    arch/arm/mach-exynos/cpu.c

    The changes to arch/arm/mach-exynos/cpu.c were moved to
    mach-exynos/common.c.

    Russell King
     
  • Remove the now empty arch_reset() from all the mach/system.h includes,
    and remove its callsite. Remove arm_machine_restart() as this function
    no longer does anything useful.

    For samsung platforms, remove the include of mach/system-reset.h and
    plat/system-reset.h from their respective mach/system.h headers as these
    just define their arch_reset functions. As a result, the s3c2410 and
    plat-samsung system-reset.h files are no longer referenced, so remove
    these files entirely.

    Acked-by: Nicolas Pitre
    Acked-by: H Hartley Sweeten
    Acked-by: Jamie Iles
    Acked-by: Tony Lindgren
    Acked-by: Linus Walleij
    Signed-off-by: Russell King

    Russell King
     
  • Hook these platforms restart code into the arm_pm_restart hook rather
    than using arch_reset().

    In doing so, we split out the n2100 platform specific restart handler
    into the n2100 platform file.

    Acked-by: Lennert Buytenhek
    Signed-off-by: Russell King

    Russell King
     

06 Dec, 2011

1 commit


27 Nov, 2011

1 commit


21 Nov, 2011

1 commit

  • We only need to set the system up for a soft-restart if we're going to
    be doing a soft-restart. Provide a new function (soft_restart()) which
    does the setup and final call for this, and make platforms use it.
    Eliminate the call to setup_restart() from the default handler.

    This means that platforms arch_reset() function is no longer called with
    the page tables prepared for a soft-restart, and caches will still be
    enabled.

    Acked-by: Nicolas Pitre
    Acked-by: Will Deacon
    Acked-by: H Hartley Sweeten
    Acked-by: Kukjin Kim
    Acked-by: Sascha Hauer
    Acked-by: Viresh Kumar
    Acked-by: Krzysztof Ha■asa
    Acked-by: Paul Mundt
    Acked-by: Richard Purdie
    Acked-by: Wan ZongShun
    Acked-by: Eric Miao
    Signed-off-by: Russell King

    Russell King
     

19 Nov, 2011

1 commit


29 Oct, 2011

1 commit

  • …git-cur/linux-2.6-arm

    * 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm: (178 commits)
    ARM: 7139/1: fix compilation with CONFIG_ARM_ATAG_DTB_COMPAT and large TEXT_OFFSET
    ARM: gic, local timers: use the request_percpu_irq() interface
    ARM: gic: consolidate PPI handling
    ARM: switch from NO_MACH_MEMORY_H to NEED_MACH_MEMORY_H
    ARM: mach-s5p64x0: remove mach/memory.h
    ARM: mach-s3c64xx: remove mach/memory.h
    ARM: plat-mxc: remove mach/memory.h
    ARM: mach-prima2: remove mach/memory.h
    ARM: mach-zynq: remove mach/memory.h
    ARM: mach-bcmring: remove mach/memory.h
    ARM: mach-davinci: remove mach/memory.h
    ARM: mach-pxa: remove mach/memory.h
    ARM: mach-ixp4xx: remove mach/memory.h
    ARM: mach-h720x: remove mach/memory.h
    ARM: mach-vt8500: remove mach/memory.h
    ARM: mach-s5pc100: remove mach/memory.h
    ARM: mach-tegra: remove mach/memory.h
    ARM: plat-tcc: remove mach/memory.h
    ARM: mach-mmp: remove mach/memory.h
    ARM: mach-cns3xxx: remove mach/memory.h
    ...

    Fix up mostly pretty trivial conflicts in:
    - arch/arm/Kconfig
    - arch/arm/include/asm/localtimer.h
    - arch/arm/kernel/Makefile
    - arch/arm/mach-shmobile/board-ap4evb.c
    - arch/arm/mach-u300/core.c
    - arch/arm/mm/dma-mapping.c
    - arch/arm/mm/proc-v7.S
    - arch/arm/plat-omap/Kconfig
    largely due to some CONFIG option renaming (ie CONFIG_PM_SLEEP ->
    CONFIG_ARM_CPU_SUSPEND for the arm-specific suspend code etc) and
    addition of NEED_MACH_MEMORY_H next to HAVE_IDE.

    Linus Torvalds
     

17 Oct, 2011

1 commit

  • Boards used to specify zreladdr in their Makefile.boot with
    zreladdr-y := x, so conflicting zreladdrs were silently overwritten.
    This patch changes this to zreladdr-y += x, so that we end
    up with multiple words in zreladdr in such a case. We can
    detect this later and complain if necessary.

    Signed-off-by: Sascha Hauer
    Signed-off-by: Russell King

    Sascha Hauer
     

26 Sep, 2011

2 commits


22 Aug, 2011

1 commit


30 Jul, 2011

1 commit

  • * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
    PCI: remove printks about disabled bridge windows
    PCI: fold pci_calc_resource_flags() into decode_bar()
    PCI: treat mem BAR type "11" (reserved) as 32-bit, not 64-bit, BAR
    PCI: correct pcie_set_readrq write size
    PCI: pciehp: change wait time for valid configuration access
    x86/PCI: Preserve existing pci=bfsort whitelist for Dell systems
    PCI: ARI is a PCIe v2 feature
    x86/PCI: quirks: Use pci_dev->revision
    PCI: Make the struct pci_dev * argument of pci_fixup_irqs const.
    PCI hotplug: cpqphp: use pci_dev->vendor
    PCI hotplug: cpqphp: use pci_dev->subsystem_{vendor|device}
    x86/PCI: config space accessor functions should not ignore the segment argument
    PCI: Assign values to 'pci_obff_signal_type' enumeration constants
    x86/PCI: reduce severity of host bridge window conflict warnings
    PCI: enumerate the PCI device only removed out PCI hieratchy of OS when re-scanning PCI
    PCI: PCIe AER: add aer_recover_queue
    x86/PCI: select direct access mode for mmconfig option
    PCI hotplug: Rename is_ejectable which also exists in dock.c

    Linus Torvalds
     

22 Jul, 2011

1 commit

  • Aside of the usual motivation for constification, this function has a
    history of being abused a hook for interrupt and other fixups so I turned
    this function const ages ago in the MIPS code but it should be done
    treewide.

    Due to function pointer passing in varous places a few other functions
    had to be constified as well.

    Signed-off-by: Ralf Baechle
    To: Anton Vorontsov
    To: Chris Metcalf
    To: Colin Cross
    Acked-by: "David S. Miller"
    To: Eric Miao
    To: Erik Gilling
    Acked-by: Guan Xuetao
    To: "H. Peter Anvin"
    To: Imre Kaloz
    To: Ingo Molnar
    To: Ivan Kokshaysky
    To: Jesse Barnes
    To: Krzysztof Halasa
    To: Lennert Buytenhek
    To: Matt Turner
    To: Nicolas Pitre
    To: Olof Johansson
    Acked-by: Paul Mundt
    To: Richard Henderson
    To: Russell King
    To: Thomas Gleixner
    Cc: Andrew Morton
    Cc: linux-alpha@vger.kernel.org
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-kernel@vger.kernel.org
    Cc: linux-mips@linux-mips.org
    Cc: linux-pci@vger.kernel.org
    Cc: linux-sh@vger.kernel.org
    Cc: linux-tegra@vger.kernel.org
    Cc: sparclinux@vger.kernel.org
    Cc: x86@kernel.org
    Signed-off-by: Jesse Barnes

    Ralf Baechle
     

13 Jul, 2011

2 commits

  • Convert PCIBIOS_MIN_IO and PCIBIOS_MIN_MEM to variables to allow
    multi-platform builds. This also removes the requirement for a platform to
    have a mach/hardware.h.

    The default values for i/o and mem are 0x1000 and 0x01000000, respectively.
    Per Arnd Bergmann, other values are likely to be incorrect, but this commit
    does not try to address that issue.

    Signed-off-by: Rob Herring
    Acked-by: Nicolas Pitre
    Reviewed-by: Arnd Bergmann

    Rob Herring
     
  • Convert pcibios_assign_all_busses from a define to inline so platforms can
    control this setting.

    Signed-off-by: Rob Herring
    Acked-by: Nicolas Pitre
    Reviewed-by: Arnd Bergmann

    Rob Herring
     

07 May, 2011

1 commit

  • To be able to relocate the .bss section at run time independently from
    the rest of the code, we must make sure that no GOTOFF relocations are
    used with .bss symbols. This usually means that no global variables can
    be marked static unless they're also const.

    Let's remove the static qualifier from current offenders, or turn them
    into const variables when possible. Next commit will ensure the build
    fails if one of those is reintroduced due to otherwise enforced coding
    standards for the kernel.

    Signed-off-by: Nicolas Pitre
    Tested-by: Tony Lindgren

    Nicolas Pitre
     

29 Mar, 2011

1 commit