1. 07 11月, 2020 1 次提交
  2. 13 10月, 2020 2 次提交
  3. 12 10月, 2020 1 次提交
    • T
      MIPS: Loongson64: Select SMP in Kconfig to avoid build error · 1062fc45
      Tiezhu Yang 提交于
      In the current code, CONFIG_SMP can be set as N by user on the Loongson
      platform, then there exists the following build error under !CONFIG_SMP:
      
        CC      arch/mips/kernel/asm-offsets.s
      In file included from ./include/linux/gfp.h:9:0,
                       from ./include/linux/xarray.h:14,
                       from ./include/linux/radix-tree.h:18,
                       from ./include/linux/fs.h:15,
                       from ./include/linux/compat.h:17,
                       from arch/mips/kernel/asm-offsets.c:12:
      ./include/linux/topology.h: In function 'numa_node_id':
      ./include/linux/topology.h:119:2: error: implicit declaration of function 'cpu_logical_map' [-Werror=implicit-function-declaration]
        return cpu_to_node(raw_smp_processor_id());
        ^
      cc1: some warnings being treated as errors
      scripts/Makefile.build:117: recipe for target 'arch/mips/kernel/asm-offsets.s' failed
      make[1]: *** [arch/mips/kernel/asm-offsets.s] Error 1
      
      Select SMP in Kconfig to avoid the above build error and then remove
      CONFIG_SMP=y in loongson3_defconfig.
      Signed-off-by: NTiezhu Yang <yangtiezhu@loongson.cn>
      Signed-off-by: NThomas Bogendoerfer <tsbogend@alpha.franken.de>
      1062fc45
  4. 09 10月, 2020 1 次提交
  5. 28 9月, 2020 1 次提交
  6. 27 9月, 2020 1 次提交
  7. 25 9月, 2020 1 次提交
  8. 18 9月, 2020 4 次提交
  9. 16 9月, 2020 1 次提交
    • T
      PCI/MSI: Make arch_.*_msi_irq[s] fallbacks selectable · 077ee78e
      Thomas Gleixner 提交于
      The arch_.*_msi_irq[s] fallbacks are compiled in whether an architecture
      requires them or not. Architectures which are fully utilizing hierarchical
      irq domains should never call into that code.
      
      It's not only architectures which depend on that by implementing one or
      more of the weak functions, there is also a bunch of drivers which relies
      on the weak functions which invoke msi_controller::setup_irq[s] and
      msi_controller::teardown_irq.
      
      Make the architectures and drivers which rely on them select them in Kconfig
      and if not selected replace them by stub functions which emit a warning and
      fail the PCI/MSI interrupt allocation.
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Link: https://lore.kernel.org/r/20200826112333.992429909@linutronix.de
      077ee78e
  10. 15 9月, 2020 1 次提交
  11. 09 9月, 2020 1 次提交
  12. 08 9月, 2020 7 次提交
  13. 03 9月, 2020 2 次提交
  14. 24 8月, 2020 1 次提交
  15. 06 8月, 2020 1 次提交
    • M
      MIPS: SGI-IP27: always enable NUMA in Kconfig · 6c86a302
      Mike Rapoport 提交于
      When a configuration has NUMA disabled and SGI_IP27 enabled, the build
      fails:
      
        CC      kernel/bounds.s
        CC      arch/mips/kernel/asm-offsets.s
      In file included from arch/mips/include/asm/topology.h:11,
                       from include/linux/topology.h:36,
                       from include/linux/gfp.h:9,
                       from include/linux/slab.h:15,
                       from include/linux/crypto.h:19,
                       from include/crypto/hash.h:11,
                       from include/linux/uio.h:10,
                       from include/linux/socket.h:8,
                       from include/linux/compat.h:15,
                       from arch/mips/kernel/asm-offsets.c:12:
      include/linux/topology.h: In function 'numa_node_id':
      arch/mips/include/asm/mach-ip27/topology.h:16:27: error: implicit declaration of function 'cputonasid'; did you mean 'cpu_vpe_id'? [-Werror=implicit-function-declaration]
       #define cpu_to_node(cpu) (cputonasid(cpu))
                                 ^~~~~~~~~~
      include/linux/topology.h:119:9: note: in expansion of macro 'cpu_to_node'
        return cpu_to_node(raw_smp_processor_id());
               ^~~~~~~~~~~
      include/linux/topology.h: In function 'cpu_cpu_mask':
      arch/mips/include/asm/mach-ip27/topology.h:19:7: error: implicit declaration of function 'hub_data' [-Werror=implicit-function-declaration]
            &hub_data(node)->h_cpus)
             ^~~~~~~~
      include/linux/topology.h:210:9: note: in expansion of macro 'cpumask_of_node'
        return cpumask_of_node(cpu_to_node(cpu));
               ^~~~~~~~~~~~~~~
      arch/mips/include/asm/mach-ip27/topology.h:19:21: error: invalid type argument of '->' (have 'int')
            &hub_data(node)->h_cpus)
                           ^~
      include/linux/topology.h:210:9: note: in expansion of macro 'cpumask_of_node'
        return cpumask_of_node(cpu_to_node(cpu));
               ^~~~~~~~~~~~~~~
      
      Before switch from discontigmem to sparsemem, there always was
      CONFIG_NEED_MULTIPLE_NODES=y because it was selected by DISCONTIGMEM.
      Without DISCONTIGMEM it is possible to have SPARSEMEM without NUMA for
      SGI_IP27 and as many things there rely on custom node definition, the
      build breaks.
      
      As Thomas noted "... there are right now too many places in IP27 code,
      which assumes NUMA enabled", the simplest solution would be to always
      enable NUMA for SGI-IP27 builds.
      Reported-by: Nkernel test robot <lkp@intel.com>
      Fixes: 397dc00e ("mips: sgi-ip27: switch from DISCONTIGMEM to SPARSEMEM")
      Cc: stable@vger.kernel.org
      Signed-off-by: NMike Rapoport <rppt@linux.ibm.com>
      Signed-off-by: NThomas Bogendoerfer <tsbogend@alpha.franken.de>
      6c86a302
  16. 04 8月, 2020 1 次提交
  17. 28 7月, 2020 1 次提交
    • P
      MIPS: Remove legacy MIPS_MACHINE option · a4aec0f3
      Paul Cercueil 提交于
      The CONFIG_MIPS_MACHINE option is dead code that hasn't been used in
      years. The Kconfig option is not selected anywhere, and the
      <asm/mips_machine.h> is not included anywhere either.
      
      To make things worse, for years it co-existed with a separate MIPS
      machine implementation as <asm/machine.h>. The two defined the
      'mips_machine' structure with different fields, and the 'MIPS_MACHINE'
      macro with different parameters. The two used the same memory area
      (defined by the linker script) to store data, and you could totally use
      the two at the same time for all kinds of funny results.
      Signed-off-by: NPaul Cercueil <paul@crapouillou.net>
      Signed-off-by: NThomas Bogendoerfer <tsbogend@alpha.franken.de>
      a4aec0f3
  18. 24 7月, 2020 1 次提交
  19. 19 7月, 2020 1 次提交
  20. 16 7月, 2020 1 次提交
  21. 10 7月, 2020 1 次提交
  22. 05 7月, 2020 1 次提交
  23. 14 6月, 2020 1 次提交
    • M
      treewide: replace '---help---' in Kconfig files with 'help' · a7f7f624
      Masahiro Yamada 提交于
      Since commit 84af7a61 ("checkpatch: kconfig: prefer 'help' over
      '---help---'"), the number of '---help---' has been gradually
      decreasing, but there are still more than 2400 instances.
      
      This commit finishes the conversion. While I touched the lines,
      I also fixed the indentation.
      
      There are a variety of indentation styles found.
      
        a) 4 spaces + '---help---'
        b) 7 spaces + '---help---'
        c) 8 spaces + '---help---'
        d) 1 space + 1 tab + '---help---'
        e) 1 tab + '---help---'    (correct indentation)
        f) 1 tab + 1 space + '---help---'
        g) 1 tab + 2 spaces + '---help---'
      
      In order to convert all of them to 1 tab + 'help', I ran the
      following commend:
      
        $ find . -name 'Kconfig*' | xargs sed -i 's/^[[:space:]]*---help---/\thelp/'
      Signed-off-by: NMasahiro Yamada <masahiroy@kernel.org>
      a7f7f624
  24. 05 6月, 2020 1 次提交
  25. 04 6月, 2020 1 次提交
    • M
      mm: remove CONFIG_HAVE_MEMBLOCK_NODE_MAP option · 3f08a302
      Mike Rapoport 提交于
      CONFIG_HAVE_MEMBLOCK_NODE_MAP is used to differentiate initialization of
      nodes and zones structures between the systems that have region to node
      mapping in memblock and those that don't.
      
      Currently all the NUMA architectures enable this option and for the
      non-NUMA systems we can presume that all the memory belongs to node 0 and
      therefore the compile time configuration option is not required.
      
      The remaining few architectures that use DISCONTIGMEM without NUMA are
      easily updated to use memblock_add_node() instead of memblock_add() and
      thus have proper correspondence of memblock regions to NUMA nodes.
      
      Still, free_area_init_node() must have a backward compatible version
      because its semantics with and without CONFIG_HAVE_MEMBLOCK_NODE_MAP is
      different.  Once all the architectures will use the new semantics, the
      entire compatibility layer can be dropped.
      
      To avoid addition of extra run time memory to store node id for
      architectures that keep memblock but have only a single node, the node id
      field of the memblock_region is guarded by CONFIG_NEED_MULTIPLE_NODES and
      the corresponding accessors presume that in those cases it is always 0.
      Signed-off-by: NMike Rapoport <rppt@linux.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Tested-by: Hoan Tran <hoan@os.amperecomputing.com>	[arm64]
      Acked-by: Catalin Marinas <catalin.marinas@arm.com>	[arm64]
      Cc: Baoquan He <bhe@redhat.com>
      Cc: Brian Cain <bcain@codeaurora.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Greentime Hu <green.hu@gmail.com>
      Cc: Greg Ungerer <gerg@linux-m68k.org>
      Cc: Guan Xuetao <gxt@pku.edu.cn>
      Cc: Guo Ren <guoren@kernel.org>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Helge Deller <deller@gmx.de>
      Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Ley Foon Tan <ley.foon.tan@intel.com>
      Cc: Mark Salter <msalter@redhat.com>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: Max Filippov <jcmvbkbc@gmail.com>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Michal Hocko <mhocko@kernel.org>
      Cc: Michal Simek <monstr@monstr.eu>
      Cc: Nick Hu <nickhu@andestech.com>
      Cc: Paul Walmsley <paul.walmsley@sifive.com>
      Cc: Richard Weinberger <richard@nod.at>
      Cc: Rich Felker <dalias@libc.org>
      Cc: Russell King <linux@armlinux.org.uk>
      Cc: Stafford Horne <shorne@gmail.com>
      Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Vineet Gupta <vgupta@synopsys.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Link: http://lkml.kernel.org/r/20200412194859.12663-4-rppt@kernel.orgSigned-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3f08a302
  26. 27 5月, 2020 2 次提交
  27. 24 5月, 2020 1 次提交
    • W
      MIPS: emulate CPUCFG instruction on older Loongson64 cores · ec7a9318
      WANG Xuerui 提交于
      CPUCFG is the instruction for querying processor characteristics on
      newer Loongson processors, much like CPUID of x86. Since the instruction
      is supposedly designed to provide a unified way to do feature detection
      (without having to, for example, parse /proc/cpuinfo which is too
      heavyweight), it is important to provide compatibility for older cores
      without native support. Fortunately, most of the fields can be
      synthesized without changes to semantics. Performance is not really big
      a concern, because feature detection logic is not expected to be
      invoked very often in typical userland applications.
      
      The instruction can't be emulated on LOONGSON_2EF cores, according to
      FlyGoat's experiments. Because the LWC2 opcode is assigned to other
      valid instructions on 2E and 2F, no RI exception is raised for us to
      intercept. So compatibility is only extended back furthest to
      Loongson-3A1000. Loongson-2K is covered too, as it is basically a remix
      of various blocks from the 3A/3B models from a kernel perspective.
      
      This is lightly based on Loongson's work on their Linux 3.10 fork, for
      being the authority on the right feature flags to fill in, where things
      aren't otherwise discoverable.
      Signed-off-by: NWANG Xuerui <git@xen0n.name>
      Reviewed-by: NJiaxun Yang <jiaxun.yang@flygoat.com>
      Cc: Huacai Chen <chenhc@lemote.com>
      Cc: Jiaxun Yang <jiaxun.yang@flygoat.com>
      Cc: Tiezhu Yang <yangtiezhu@loongson.cn>
      Signed-off-by: NThomas Bogendoerfer <tsbogend@alpha.franken.de>
      ec7a9318
  28. 22 5月, 2020 1 次提交
    • S
      mips: csrc-r4k: Mark R4K timer as unstable if CPU freq changes · 38586428
      Serge Semin 提交于
      Commit 07d69579 ("MIPS: Don't register r4k sched clock when CPUFREQ
      enabled") disabled the r4k-clock usage for scheduler ticks counting due
      to the scheduler being non-tolerant for unstable clocks sources. For the
      same reason the clock should be used in the system clocksource framework
      with care. As soon as CPU frequency changes the clocksource framework
      should be notified about this by marking the R4K timer being unstable
      (which it really is, since the ticks rate has been changed synchronously
      with the CPU frequency).
      Signed-off-by: NSerge Semin <Sergey.Semin@baikalelectronics.ru>
      Cc: Alexey Malahov <Alexey.Malahov@baikalelectronics.ru>
      Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
      Cc: Paul Burton <paulburton@kernel.org>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: devicetree@vger.kernel.org
      Signed-off-by: NThomas Bogendoerfer <tsbogend@alpha.franken.de>
      38586428