06 Sep, 2023

1 commit

  • Pull Kbuild updates from Masahiro Yamada:

    - Enable -Wenum-conversion warning option

    - Refactor the rpm-pkg target

    - Fix scripts/setlocalversion to consider annotated tags for rt-kernel

    - Add a jump key feature for the search menu of 'make nconfig'

    - Support Qt6 for 'make xconfig'

    - Enable -Wformat-overflow, -Wformat-truncation, -Wstringop-overflow,
    and -Wrestrict warnings for W=1 builds

    - Replace with for alpha, ia64, and
    sparc

    - Support DEB_BUILD_OPTIONS=parallel=N for the debian source package

    - Refactor scripts/Makefile.modinst and fix some modules_sign issues

    - Add a new Kconfig env variable to warn symbols that are not defined
    anywhere

    - Show help messages of config fragments in 'make help'

    * tag 'kbuild-v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (62 commits)
    kconfig: fix possible buffer overflow
    kbuild: Show marked Kconfig fragments in "help"
    kconfig: add warn-unknown-symbols sanity check
    kbuild: dummy-tools: make MPROFILE_KERNEL checks work on BE
    Documentation/llvm: refresh docs
    modpost: Skip .llvm.call-graph-profile section check
    kbuild: support modules_sign for external modules as well
    kbuild: support 'make modules_sign' with CONFIG_MODULE_SIG_ALL=n
    kbuild: move more module installation code to scripts/Makefile.modinst
    kbuild: reduce the number of mkdir calls during modules_install
    kbuild: remove $(MODLIB)/source symlink
    kbuild: move depmod rule to scripts/Makefile.modinst
    kbuild: add modules_sign to no-{compiler,sync-config}-targets
    kbuild: do not run depmod for 'make modules_sign'
    kbuild: deb-pkg: support DEB_BUILD_OPTIONS=parallel=N in debian/rules
    alpha: remove
    alpha: replace #include with #include
    ia64: remove
    ia64: replace #include with #include
    sparc: remove
    ...

    Linus Torvalds
     

04 Sep, 2023

1 commit

  • Currently the Kconfig fragments in kernel/configs and arch/*/configs
    that aren't used internally aren't discoverable through "make help",
    which consists of hard-coded lists of config fragments. Instead, list
    all the fragment targets that have a "# Help: " comment prefix so the
    targets can be generated dynamically.

    Add logic to the Makefile to search for and display the fragment and
    comment. Add comments to fragments that are intended to be direct targets.

    Signed-off-by: Kees Cook
    Co-developed-by: Masahiro Yamada
    Acked-by: Michael Ellerman (powerpc)
    Reviewed-by: Nicolas Schier
    Signed-off-by: Masahiro Yamada

    Kees Cook
     

22 Aug, 2023

1 commit

  • There is only one Kconfig user of CONFIG_EMBEDDED and it can be switched
    to EXPERT or "if !ARCH_MULTIPLATFORM" (suggested by Arnd).

    Link: https://lkml.kernel.org/r/20230816055010.31534-1-rdunlap@infradead.org
    Signed-off-by: Randy Dunlap
    Acked-by: Geert Uytterhoeven
    Acked-by: Arnd Bergmann
    Acked-by: Palmer Dabbelt [RISC-V]
    Acked-by: Greg Ungerer
    Acked-by: Jason A. Donenfeld
    Acked-by: Michael Ellerman [powerpc]
    Cc: Russell King
    Cc: Vineet Gupta
    Cc: Brian Cain
    Cc: Michal Simek
    Cc: Thomas Bogendoerfer
    Cc: Dinh Nguyen
    Cc: Jonas Bonn
    Cc: Stefan Kristiansson
    Cc: Stafford Horne
    Cc: Nicholas Piggin
    Cc: Christophe Leroy
    Cc: Paul Walmsley
    Cc: Albert Ou
    Cc: Yoshinori Sato
    Cc: Rich Felker
    Cc: John Paul Adrian Glaubitz
    Cc: Max Filippov
    Cc: Josh Triplett
    Cc: Masahiro Yamada
    Signed-off-by: Andrew Morton

    Randy Dunlap
     

30 Jul, 2023

1 commit

  • Commit a2225d931f75 ("autofs: remove left-over autofs4 stubs")
    promised the removal of the fs/autofs/Kconfig fragment for AUTOFS4_FS
    within a couple of releases, but five years later this still has not
    happened yet, and AUTOFS4_FS is still enabled in 63 defconfigs.

    Get rid of it mechanically:

    git grep -l CONFIG_AUTOFS4_FS -- '*defconfig' |
    xargs sed -i 's/AUTOFS4_FS/AUTOFS_FS/'

    Also just remove the AUTOFS4_FS config option stub. Anybody who hasn't
    regenerated their config file in the last five years will need to just
    get the new name right when they do.

    Signed-off-by: Sven Joachim
    Acked-by: Ian Kent
    Signed-off-by: Linus Torvalds

    Sven Joachim
     

01 Jul, 2023

1 commit

  • Pull RISC-V updates from Palmer Dabbelt:

    - Support for ACPI

    - Various cleanups to the ISA string parsing, including making them
    case-insensitive

    - Support for the vector extension

    - Support for independent irq/softirq stacks

    - Our CPU DT binding now has "unevaluatedProperties: false"

    * tag 'riscv-for-linus-6.5-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (78 commits)
    riscv: hibernate: remove WARN_ON in save_processor_state
    dt-bindings: riscv: cpus: switch to unevaluatedProperties: false
    dt-bindings: riscv: cpus: add a ref the common cpu schema
    riscv: stack: Add config of thread stack size
    riscv: stack: Support HAVE_SOFTIRQ_ON_OWN_STACK
    riscv: stack: Support HAVE_IRQ_EXIT_ON_IRQ_STACK
    RISC-V: always report presence of extensions formerly part of the base ISA
    dt-bindings: riscv: explicitly mention assumption of Zicntr & Zihpm support
    RISC-V: remove decrement/increment dance in ISA string parser
    RISC-V: rework comments in ISA string parser
    RISC-V: validate riscv,isa at boot, not during ISA string parsing
    RISC-V: split early & late of_node to hartid mapping
    RISC-V: simplify register width check in ISA string parsing
    perf: RISC-V: Limit the number of counters returned from SBI
    riscv: replace deprecated scall with ecall
    riscv: uprobes: Restore thread.bad_cause
    riscv: mm: try VMA lock-based page fault handling first
    riscv: mm: Pre-allocate PGD entries for vmalloc/modules area
    RISC-V: hwprobe: Expose Zba, Zbb, and Zbs
    RISC-V: Track ISA extensions per hart
    ...

    Linus Torvalds
     

18 Jun, 2023

1 commit

  • Enable T-HEAD SoC config in defconfig to allow the default
    upstream kernel to boot on Sipeed Lichee Pi 4A board.

    Signed-off-by: Jisheng Zhang
    Reviewed-by: Conor Dooley
    Acked-by: Palmer Dabbelt
    Acked-by: Guo Ren
    Signed-off-by: Conor Dooley

    Jisheng Zhang
     

01 Jun, 2023

1 commit

  • Add support to build ACPI subsystem in defconfig.

    Signed-off-by: Sunil V L
    Acked-by: Rafael J. Wysocki
    Reviewed-by: Andrew Jones
    Reviewed-by: Conor Dooley
    Link: https://lore.kernel.org/r/20230515054928.2079268-21-sunilvl@ventanamicro.com
    Signed-off-by: Palmer Dabbelt

    Sunil V L
     

27 Mar, 2023

1 commit

  • After the commit 93d102f094be9beab2 ("printk: remove safe buffers"),
    CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT is no longer useful. Remove it.

    Signed-off-by: Marc Aurèle La France
    Reviewed-by: John Ogness
    Reviewed-by: Sergey Senozhatsky
    Reviewed-by: Petr Mladek
    [pmladek@suse.cz: Cleaned up the commit message.]
    Signed-off-by: Petr Mladek
    Fixes: 93d102f094be9beab ("printk: remove safe buffers")
    Link: https://lore.kernel.org/r/5c19e248-1b6b-330c-7c4c-a824688daefe@tuyoix.net

    Marc Aurèle La France
     

28 Jan, 2023

1 commit

  • Now that several D1-based boards are supported, enable the platform in
    our defconfig. Build in the drivers which are necessary to boot, such as
    the pinctrl, MMC, RTC (which provides critical clocks), SPI (for flash),
    and watchdog (which may be left enabled by the bootloader). Other common
    onboard peripherals are enabled as modules.

    Acked-by: Conor Dooley
    Acked-by: Palmer Dabbelt
    Reviewed-by: Guo Ren
    Reviewed-by: Heiko Stuebner
    Signed-off-by: Samuel Holland
    Link: https://lore.kernel.org/r/20230126045738.47903-12-samuel@sholland.org
    Signed-off-by: Jernej Skrabec

    Samuel Holland
     

15 Dec, 2022

1 commit

  • Pull RISC-V updates from Palmer Dabbelt:

    - Support for the T-Head PMU via the perf subsystem

    - ftrace support for rv32

    - Support for non-volatile memory devices

    - Various fixes and cleanups

    * tag 'riscv-for-linus-6.2-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (52 commits)
    Documentation: RISC-V: patch-acceptance: s/implementor/implementer
    Documentation: RISC-V: Mention the UEFI Standards
    Documentation: RISC-V: Allow patches for non-standard behavior
    Documentation: RISC-V: Fix a typo in patch-acceptance
    riscv: Fixup compile error with !MMU
    riscv: Fix P4D_SHIFT definition for 3-level page table mode
    riscv: Apply a static assert to riscv_isa_ext_id
    RISC-V: Add some comments about the shadow and overflow stacks
    RISC-V: Align the shadow stack
    RISC-V: Ensure Zicbom has a valid block size
    RISC-V: Introduce riscv_isa_extension_check
    RISC-V: Improve use of isa2hwcap[]
    riscv: Don't duplicate _ALTERNATIVE_CFG* macros
    riscv: alternatives: Drop the underscores from the assembly macro names
    riscv: alternatives: Don't name unused macro parameters
    riscv: Don't duplicate __ALTERNATIVE_CFG in __ALTERNATIVE_CFG_2
    riscv: mm: call best_map_size many times during linear-mapping
    riscv: Move cast inside kernel_mapping_[pv]a_to_[vp]a
    riscv: Fix crash during early errata patching
    riscv: boot: add zstd support
    ...

    Linus Torvalds
     

13 Dec, 2022

1 commit

  • Pull ARM SoC defconfig updates from Arnd Bergmann:
    "This contains the ususal arm and arm64 updates to defconfig files,
    enabling newly added drivers and adapting the files to Kconfig
    changes, in particular for qualcomm, microchip, and nxp SoC platforms"

    * tag 'soc-defconfig-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (28 commits)
    arm64: defconfig: Enable Qualcomm SM6115 / SM4250 GCC and Pinctrl
    arm64: defconfig: Enable Qualcomm SM6115 / SM4250 GCC and Pinctrl
    ARM: configs: multi_v7: switch to new MICROCHIP_ISC driver
    ARM: configs: sama5/7: switch to new MICROCHIP_ISC driver
    ARM: multi_v7_defconfig: enable Type-C UCSI and STM32G0 as modules
    arm64: defconfig: Enable Renesas R-Car S4-8 Spider Ethernet devices
    arm: configs: spear6xx: Enable PL110 display controller
    arm: configs: spear6xx: Refresh defconfig
    arm64: defconfig: Enable HTE config
    arm64: defconfig: Enable missing configs for mt8183-jacuzzi-juniper
    arm64: defconfig: Add Renesas 9-series PCIe clock generator
    riscv: configs: defconfig: Enable Renesas RZ/Five SoC
    ARM: imx_v6_v7_defconfig: Enable the cyttsp5 touchscreen
    arm64: defconfig: Enable Tegra186 timer support
    arm64: defconfig: build-in Qualcomm SC7180 and SM8450 interconnects
    arm64: defconfig: Enable Qualcomm QCE crypto
    arm64: defconfig: Enable TI_TFP410 DVI bridge
    ARM: configs: at91: sama7: add config for thermal management
    ARM: configs: at91: sama7: add config for microchip otpc
    ARM: configs: at91: sama7: use make savedefconfig
    ...

    Linus Torvalds
     

09 Dec, 2022

2 commits

  • Anup Patel says:

    The Linux NVDIMM PEM drivers require arch support to map and access the
    persistent memory device. This series adds RISC-V PMEM support using
    recently added Svpbmt and Zicbom support.

    * b4-shazam-merge:
    RISC-V: Enable PMEM drivers
    RISC-V: Implement arch specific PMEM APIs
    RISC-V: Fix MEMREMAP_WB for systems with Svpbmt

    Link: https://lore.kernel.org/r/20221114090536.1662624-1-apatel@ventanamicro.com
    Signed-off-by: Palmer Dabbelt

    Palmer Dabbelt
     
  • We now have PMEM arch support available in RISC-V kernel so let us
    enable relevant drivers in defconfig.

    Signed-off-by: Anup Patel
    Acked-by: Conor Dooley
    Link: https://lore.kernel.org/r/20221114090536.1662624-4-apatel@ventanamicro.com
    Signed-off-by: Palmer Dabbelt

    Anup Patel
     

03 Dec, 2022

1 commit

  • Add CONFIG_SERIAL_8250_DW=y, which is a necessary option for
    StarFive JH7110 and JH7100 SoCs to boot with serial ports.

    Reviewed-by: Conor Dooley
    Signed-off-by: Hal Feng
    Acked-by: Palmer Dabbelt
    Link: https://lore.kernel.org/r/20221118011714.70877-9-hal.feng@starfivetech.com
    Signed-off-by: Palmer Dabbelt

    Hal Feng
     

01 Dec, 2022

1 commit

  • As explained in [1], we would like to remove SLOB if possible.

    - There are no known users that need its somewhat lower memory footprint
    so much that they cannot handle SLUB (after some modifications by the
    previous patches) instead.

    - It is an extra maintenance burden, and a number of features are
    incompatible with it.

    - It blocks the API improvement of allowing kfree() on objects allocated
    via kmem_cache_alloc().

    As the first step, rename the CONFIG_SLOB option in the slab allocator
    configuration choice to CONFIG_SLOB_DEPRECATED. Add CONFIG_SLOB
    depending on CONFIG_SLOB_DEPRECATED as an internal option to avoid code
    churn. This will cause existing .config files and defconfigs with
    CONFIG_SLOB=y to silently switch to the default (and recommended
    replacement) SLUB, while still allowing SLOB to be configured by anyone
    that notices and needs it. But those should contact the slab maintainers
    and linux-mm@kvack.org as explained in the updated help. With no valid
    objections, the plan is to update the existing defconfigs to SLUB and
    remove SLOB in a few cycles.

    To make SLUB more suitable replacement for SLOB, a CONFIG_SLUB_TINY
    option was introduced to limit SLUB's memory overhead.
    There is a number of defconfigs specifying CONFIG_SLOB=y. As part of
    this patch, update them to select CONFIG_SLUB and CONFIG_SLUB_TINY.

    [1] https://lore.kernel.org/all/b35c3f82-f67b-2103-7d82-7a7ba7521439@suse.cz/

    Cc: Russell King
    Cc: Aaro Koskinen
    Cc: Janusz Krzysztofik
    Cc: Tony Lindgren
    Cc: Jonas Bonn
    Cc: Stefan Kristiansson
    Cc: Stafford Horne
    Cc: Yoshinori Sato
    Cc: Rich Felker
    Cc: Arnd Bergmann
    Cc: Josh Triplett
    Cc: Conor Dooley
    Cc: Damien Le Moal
    Cc: Christophe Leroy
    Cc: Geert Uytterhoeven
    Signed-off-by: Vlastimil Babka
    Acked-by: Aaro Koskinen # OMAP1
    Reviewed-by: Damien Le Moal # riscv k210
    Acked-by: Arnd Bergmann # arm
    Acked-by: Roman Gushchin
    Acked-by: Mike Rapoport
    Reviewed-by: Christoph Lameter

    Vlastimil Babka
     

30 Nov, 2022

1 commit

  • on an arch level, RISC-V defaults to FLATMEM. On PolarFire SoC, the
    memory layout is almost always sparse, with a maximum of 1 GiB at
    0x8000_0000 & a possible 16 GiB range at 0x10_0000_0000. The Icicle kit,
    for example, has 2 GiB of DDR - so there's a big hole in the memory map
    between the two gigs. Prior to v6.1-rc1, boot times from defconfig
    builds were pretty bad on Icicle but enabling sparsemem would fix those
    issues. As of v6.1-rc1, the Icicle kit no longer boots from defconfig
    builds with the in-kernel devicetree. A change to the memory map
    resulted in a futher "sparse-ification", producing a splat on boot:

    OF: fdt: Ignoring memory range 0x80000000 - 0x80200000
    Machine model: Microchip PolarFire-SoC Icicle Kit
    earlycon: ns16550a0 at MMIO32 0x0000000020100000 (options '115200n8')
    printk: bootconsole [ns16550a0] enabled
    printk: debug: skip boot console de-registration.
    efi: UEFI not found.
    Zone ranges:
    DMA32 [mem 0x0000000080200000-0x00000000ffffffff]
    Normal [mem 0x0000000100000000-0x000000107fffffff]
    Movable zone start for each node
    Early memory node ranges
    node 0: [mem 0x0000000080200000-0x00000000bfbfffff]
    node 0: [mem 0x00000000bfc00000-0x00000000bfffffff]
    node 0: [mem 0x0000001040000000-0x000000107fffffff]
    Initmem setup node 0 [mem 0x0000000080200000-0x000000107fffffff]
    Kernel panic - not syncing: Failed to allocate 1073741824 bytes for node 0 memory map
    CPU: 0 PID: 0 Comm: swapper Not tainted 5.19.0-dirty #1
    Hardware name: Microchip PolarFire-SoC Icicle Kit (DT)
    Call Trace:
    [] show_stack+0x30/0x3c
    [] dump_stack_lvl+0x4a/0x66
    [] dump_stack+0x18/0x20
    [] panic+0x124/0x2c6
    [] free_area_init_core+0x0/0x11e
    [] free_area_init_node+0xc2/0xf6
    [] free_area_init+0x222/0x260
    [] misc_mem_init+0x62/0x9a
    [] setup_arch+0xb0/0xea
    [] start_kernel+0x88/0x4ee
    ---[ end Kernel panic - not syncing: Failed to allocate 1073741824 bytes for node 0 memory map ]---

    With the aim of keeping defconfig builds booting on icicle, enable
    SPARSEMEM_MANUAL.

    Signed-off-by: Conor Dooley
    Link: https://lore.kernel.org/r/20221021160028.4042304-1-conor@kernel.org
    Signed-off-by: Palmer Dabbelt

    Conor Dooley
     

10 Nov, 2022

1 commit

  • Enable Renesas RZ/Five SoC config in defconfig. It allows the default
    upstream kernel to boot on RZ/Five SMARC EVK board.

    Alongside enable SERIAL_SH_SCI config so that the serial driver used by
    RZ/Five SoC is built-in.

    Signed-off-by: Lad Prabhakar
    Reviewed-by: Conor Dooley
    Reviewed-by: Guo Ren
    Acked-by: Palmer Dabbelt
    Link: https://lore.kernel.org/r/20221028165921.94487-8-prabhakar.mahadev-lad.rj@bp.renesas.com
    Signed-off-by: Geert Uytterhoeven

    Lad Prabhakar
     

26 Aug, 2022

1 commit

  • CD-ROM images are still commonly used for installer images and other
    data exchange.

    These file systems should be supported on RISC-V by default
    like they are on x86_64.

    Signed-off-by: Heinrich Schuchardt
    Link: https://lore.kernel.org/r/20220812200853.311474-1-heinrich.schuchardt@canonical.com
    Signed-off-by: Palmer Dabbelt

    Heinrich Schuchardt
     

23 Jul, 2022

1 commit

  • The defconfig kernel should be able to run Docker.

    Enable the missing settings according to [1].
    make savedefconfig eliminates CONFIG_STACKTRACE
    which is enabled by default.

    Many of the settings are also needed to run a defconfig kernel
    on default distro installations or to run snaps.

    [1] https://github.com/moby/moby/blob/master/contrib/check-config.sh

    Signed-off-by: Heinrich Schuchardt
    Reviewed-by: Anup Patel
    Acked-by: Guo Ren
    Link: https://lore.kernel.org/r/20220608000251.55271-1-heinrich.schuchardt@canonical.com
    [Palmer: Drop BLK_CGROUP, as it's causing panics with KASAN]
    Signed-off-by: Palmer Dabbelt

    Heinrich Schuchardt
     

15 Jul, 2022

2 commits

  • The RISC-V port has collected a handful of options that are
    fundamentally non-portable. To prevent users from shooting themselves
    in the foot, hide them all behind a config entry that explicitly calls
    out that non-portable binaries may be produced.

    Signed-off-by: Palmer Dabbelt
    Reviewed-by: Arnd Bergmann
    Signed-off-by: Palmer Dabbelt
    Reviewed-by: Atish Patra
    Reviewed-by: Damien Le Moal
    Reviewed-by: Guo Ren
    Link: https://lore.kernel.org/r/20220521193356.26562-1-palmer@rivosinc.com
    Signed-off-by: Palmer Dabbelt

    Palmer Dabbelt
     
  • SOC_STARFIVE is the odd one out among the (compatible) SOC_FOO options
    as it is not enabled in the default defconfig. Add it to make catching
    dt regressions etc easier.

    Signed-off-by: Conor Dooley
    Acked-by: Emil Renner Berthing
    Link: https://lore.kernel.org/r/20220617182424.324276-1-mail@conchuod.ie
    Signed-off-by: Palmer Dabbelt

    Conor Dooley
     

26 Apr, 2022

1 commit

  • In the commit 617d32938d1b ("rpmsg: Move the rpmsg control device
    from rpmsg_char to rpmsg_ctrl"), we split the rpmsg_char driver in two.
    By default give everyone who had the old driver enabled the rpmsg_ctrl
    driver too.

    Signed-off-by: Arnaud Pouliquen
    Reviewed-by: Anup Patel
    Link: https://lore.kernel.org/r/20220404090527.582217-1-arnaud.pouliquen@foss.st.com
    Reviewed-by: Mathieu Poirier
    Signed-off-by: Palmer Dabbelt

    Arnaud Pouliquen
     

01 Apr, 2022

3 commits


31 Mar, 2022

1 commit

  • This series adds RISC-V CPU Idle support using SBI HSM suspend function.
    The RISC-V SBI CPU idle driver added by this series is highly inspired
    from the ARM PSCI CPU idle driver.

    Special thanks Sandeep Tripathy for providing early feeback on SBI HSM
    support in all above projects (RISC-V SBI specification, OpenSBI, and
    Linux RISC-V).

    * palmer/riscv-idle:
    RISC-V: Enable RISC-V SBI CPU Idle driver for QEMU virt machine
    dt-bindings: Add common bindings for ARM and RISC-V idle states
    cpuidle: Add RISC-V SBI CPU idle driver
    cpuidle: Factor-out power domain related code from PSCI domain driver
    RISC-V: Add SBI HSM suspend related defines
    RISC-V: Add arch functions for non-retentive suspend entry/exit
    RISC-V: Rename relocate() and make it global
    RISC-V: Enable CPU_IDLE drivers

    Palmer Dabbelt
     

26 Mar, 2022

1 commit

  • Pull RISC-V updates from Palmer Dabbelt:

    - Support for Sv57-based virtual memory.

    - Various improvements for the MicroChip PolarFire SOC and the
    associated Icicle dev board, which should allow upstream kernels to
    boot without any additional modifications.

    - An improved memmove() implementation.

    - Support for the new Ssconfpmf and SBI PMU extensions, which allows
    for a much more useful perf implementation on RISC-V systems.

    - Support for restartable sequences.

    * tag 'riscv-for-linus-5.18-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (36 commits)
    rseq/selftests: Add support for RISC-V
    RISC-V: Add support for restartable sequence
    MAINTAINERS: Add entry for RISC-V PMU drivers
    Documentation: riscv: Remove the old documentation
    RISC-V: Add sscofpmf extension support
    RISC-V: Add perf platform driver based on SBI PMU extension
    RISC-V: Add RISC-V SBI PMU extension definitions
    RISC-V: Add a simple platform driver for RISC-V legacy perf
    RISC-V: Add a perf core library for pmu drivers
    RISC-V: Add CSR encodings for all HPMCOUNTERS
    RISC-V: Remove the current perf implementation
    RISC-V: Improve /proc/cpuinfo output for ISA extensions
    RISC-V: Do no continue isa string parsing without correct XLEN
    RISC-V: Implement multi-letter ISA extension probing framework
    RISC-V: Extract multi-letter extension names from "riscv, isa"
    RISC-V: Minimal parser for "riscv, isa" strings
    RISC-V: Correctly print supported extensions
    riscv: Fixed misaligned memory access. Fixed pointer comparison.
    MAINTAINERS: update riscv/microchip entry
    riscv: dts: microchip: add new peripherals to icicle kit device tree
    ...

    Linus Torvalds
     

11 Mar, 2022

2 commits


25 Feb, 2022

1 commit

  • Instead of an arbitrary delay, use the "rootwait" kernel option to wait
    for the mmc root device to be ready.

    Signed-off-by: Damien Le Moal
    Reviewed-by: Anup Patel
    Fixes: 7e09fd3994c5 ("riscv: Add Canaan Kendryte K210 SD card defconfig")
    Cc: stable@vger.kernel.org
    Signed-off-by: Palmer Dabbelt

    Damien Le Moal
     

23 Feb, 2022

1 commit


21 Jan, 2022

1 commit

  • Our nommu_virt_defconfig set SLOB=y and SLAB_MERGE_DEFAULT=n. As of
    eb52c0fc2331 ("mm: Make SLAB_MERGE_DEFAULT depend on SL[AU]B") it's no
    longer necessary to set the second, which appears to never have had any
    effect for SLOB=y anyway.

    This was suggested by savedefconfig.

    Signed-off-by: Palmer Dabbelt

    Palmer Dabbelt
     

20 Jan, 2022

2 commits

  • This patchset allows to have a single kernel for sv39 and sv48 without
    being relocatable.

    The idea comes from Arnd Bergmann who suggested to do the same as x86,
    that is mapping the kernel to the end of the address space, which allows
    the kernel to be linked at the same address for both sv39 and sv48 and
    then does not require to be relocated at runtime.

    This implements sv48 support at runtime. The kernel will try to boot
    with 4-level page table and will fallback to 3-level if the HW does not
    support it. Folding the 4th level into a 3-level page table has almost
    no cost at runtime.

    Note that kasan region had to be moved to the end of the address space
    since its location must be known at compile-time and then be valid for
    both sv39 and sv48 (and sv57 that is coming).

    * riscv-sv48-v3:
    riscv: Explicit comment about user virtual address space size
    riscv: Use pgtable_l4_enabled to output mmu_type in cpuinfo
    riscv: Implement sv48 support
    asm-generic: Prepare for riscv use of pud_alloc_one and pud_free
    riscv: Allow to dynamically define VA_BITS
    riscv: Introduce functions to switch pt_ops
    riscv: Split early kasan mapping to prepare sv48 introduction
    riscv: Move KASAN mapping next to the kernel mapping
    riscv: Get rid of MAXPHYSMEM configs

    Signed-off-by: Palmer Dabbelt

    Palmer Dabbelt
     
  • CONFIG_MAXPHYSMEM_* are actually never used, even the nommu defconfigs
    selecting the MAXPHYSMEM_2GB had no effects on PAGE_OFFSET since it was
    preempted by !MMU case right before.

    In addition, the move of the kernel mapping at the end of the address
    space broke the use of MAXPHYSMEM_2G with MMU since it defines PAGE_OFFSET
    at the same address as the kernel mapping.

    Reported-by: Geert Uytterhoeven
    Fixes: 2bfc6cd81bd1 ("riscv: Move kernel mapping outside of linear mapping")
    Signed-off-by: Alexandre Ghiti
    Tested-by: Geert Uytterhoeven
    Tested-by: Conor Dooley
    Cc: stable@vger.kernel.org
    Signed-off-by: Palmer Dabbelt

    Alexandre Ghiti
     

19 Jan, 2022

1 commit

  • Pull RISC-V updates from Palmer Dabbelt:

    - Support for the DA9063 as used on the HiFive Unmatched.

    - Support for relative extables, which puts us in line with other
    architectures and save some space in vmlinux.

    - A handful of kexec fixes/improvements, including the ability to run
    crash kernels from PCI-addressable memory on the HiFive Unmatched.

    - Support for the SBI SRST extension, which allows systems that do not
    have an explicit driver in Linux to reboot.

    - A handful of fixes and cleanups, including to the defconfigs and
    device trees.

    * tag 'riscv-for-linus-5.17-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (52 commits)
    RISC-V: Use SBI SRST extension when available
    riscv: mm: fix wrong phys_ram_base value for RV64
    RISC-V: Use common riscv_cpuid_to_hartid_mask() for both SMP=y and SMP=n
    riscv: head: remove useless __PAGE_ALIGNED_BSS and .balign
    riscv: errata: alternative: mark vendor_patch_func __initdata
    riscv: head: make secondary_start_common() static
    riscv: remove cpu_stop()
    riscv: try to allocate crashkern region from 32bit addressible memory
    riscv: use hart id instead of cpu id on machine_kexec
    riscv: Don't use va_pa_offset on kdump
    riscv: dts: sifive: fu540-c000: Fix PLIC node
    riscv: dts: sifive: fu540-c000: Drop bogus soc node compatible values
    riscv: dts: sifive: Group tuples in register properties
    riscv: dts: sifive: Group tuples in interrupt properties
    riscv: dts: microchip: mpfs: Group tuples in interrupt properties
    riscv: dts: microchip: mpfs: Fix clock controller node
    riscv: dts: microchip: mpfs: Fix reference clock node
    riscv: dts: microchip: mpfs: Fix PLIC node
    riscv: dts: microchip: mpfs: Drop empty chosen node
    riscv: dts: canaan: Group tuples in interrupt properties
    ...

    Linus Torvalds
     

07 Jan, 2022

1 commit


06 Jan, 2022

4 commits