泰晓科技 -- 聚焦 Linux - 追本溯源,见微知著!
网站地址:https://tinylab.org

泰晓RISC-V实验箱,转战RISC-V,开箱即用
请稍侯

RISC-V Linux 内核及周边技术动态第 117 期

呀呀呀 创作于 2024/11/11

时间:20241110
编辑:晓瑜
仓库:RISC-V Linux 内核技术调研活动
赞助:PLCT Lab, ISCAS

内核动态

RISC-V 架构支持

GIT PULL: KVM/riscv changes for 6.13

Accelerate KVM RISC-V when running as a guest. Perf support to collect KVM guest statistics from host side

GIT PULL: RISC-V Devicetrees for v6.13

v2: Refactor cpuid and metric table lookup code

These patches remove a lot of the logic relating CPUIDs to PMUs so that the PMU isn’t part of the question when finding a metric table.

v6: PCI: microchip: support using either instance 1 or 2

The current driver and binding for PolarFire SoC’s PCI controller assume that the root port instance in use is instance 1.

v1: iommu/riscv: Add platform msi support

The first patch is fix for an issue found while preparing the second. The second patch adds MSI support for a platform IOMMU. The patches may be tested with QEMU when including [1].

[for 6.11 PATCH] RISC-V: disallow gcc + rust builds

During the discussion before supporting rust on riscv, it was decided not to support gcc yet, due to differences in extension handling compared to llvm (only the version of libclang matching the c compiler is supported).

GIT PULL: RISC-V Sophgo Devicetrees for v6.13

v1: kvmtool: riscv: Pass correct size to snprintf()

The snprintf() function does not get the correct size argument passed, when the FDT ISA string is built. Instead of adjusting the size for each extension, the full size is passed for every iteration. Doing so will make __snprinf_chk() bail out on glibc.

v6: Introduce support for T-head TH1520 Mailbox

The T-head TH1520 SoC supports a hardware mailbox that enables two cores within the SoC to communicate and coordinate.

v3: Wire up CRC32 library functions to arch-optimized code

This patchset fixes that so that the CRC32 library functions use the optimized code.

v7: net-next: Add the dwmac driver support for T-HEAD TH1520 SoC

This series adds support for dwmac gigabit ethernet in the T-Head TH1520 RISC-V SoC used on boards like BeagleV Ahead and the LicheePi 4A.

v6: Zacas/Zabha support and qspinlocks

This implements [cmp]xchgXX() macros using Zacas and Zabha extensions and finally uses those newly introduced macros to add support for qspinlocks: note that this implementation of qspinlocks satisfies the forward progress guarantee.

v2: riscv: Add bfloat16 instruction support

Add description for the BFloat16 precision Floating-Point ISA extension, (Zfbfmin, Zvfbfmin, Zvfbfwma). which was ratified in commit 4dc23d62 (“Added Chapter title to BF16”) of the riscv-isa-manual.

LoongArch 架构支持

v1: LoongArch: Add PREEMPT_RT support

This series add PREEMPT_RT support for LoongArch.

v2: LoongArch: Disable KASAN if PGDIR_SIZE is too large for cpu_vabits

If PGDIR_SIZE is too large for cpu_vabits, KASAN_SHADOW_END will overflow UINTPTR_MAX because KASAN_SHADOW_START/KASAN_SHADOW_END are aligned up by PGDIR_SIZE.

v4: Added Interrupt controller emulation for loongarch kvm

Before this, the interrupt controller simulation has been completed in the user mode program.

v2: Add jump table support for objtool on LoongArch

This series is based on 6.12-rc6, tested with the upstream mainline binutils, GCC and Clang, all the changes are under tools/objtool and arch/loongarch.

v1: LoongArch: Add DMW2 shadow mapping in KASAN

Currently,the kernel couldn’t boot when both CONFIG_ARCH_IOREMAP, CONFIG_ARCH_WRITECOMBINE and KASAN are enabled.

v1: loongarch/crc32: add missing dependency on 64BIT

The LoongArch CRC32 instructions are only specified for LA64 (64-bit) and cannot be assembled in 32-bit mode.

ARM 架构支持

v1: Add support for Samsung Galaxy S20 FE (SM-G780F/r8s) [SoC Exynos990]

That Samsung Galaxy S20 FE device is part of the Exynos990 SoC family, I saw that Igor supported that processor, I took advantage of it.

v1: clk: sunxi-ng: a100: enable MMC clock reparenting

While testing the MMC nodes proposed in [1], it was noted that mmc0/1 would fail to initialize, with “mmc: fatal err update clk timeout” in the kernel logs.

v8: Add Arm Mali-C55 Image Signal Processor Driver

This patchset introduces a driver for Arm’s Mali-C55 Image Signal Processor.

v5: MIPI DSI Controller support for SAM9X75 series

This patch series adds support for the Microchip’s MIPI DSI Controller wrapper driver that uses the Synopsys DesignWare MIPI DSI host controller bridge for SAM9X75 SoC series.

v1: irqchip/gic-v3: Force propagation of the active state with a read-back

Christoffer reports that on some implementations, writing to GICR_ISACTIVER0 (and similar GICD registers) can race badly with a guest issuing a deactivation of that interrupt via the system register interface.

v8: Support SMT control on arm64

The core CPU control framework supports runtime SMT control which is not yet supported on arm64.

v2: Add device tree for MT8188-based Chromebook “Ciri”

This is the v2 series to introduce the device trees for Ciri, a MT8188-based Chromebook, commercially known as the Lenovo Chromebook Duet (11”, 9).

X86 架构支持

v6: Add support for binding ACPI platform profile to multiple drivers

This series also adds a new concept of a “custom” profile. This allows userspace to discover that there are multiple driver handlers that are configured differently. This series also allows dropping all of the PMF quirks from amd-pmf.

[PATCh 0/3] x86,tlb: context switch optimizations

This warning never ever seems to fire, even on a very large fleet, so it may be best to hide that behind CONFIG_DEBUG_VM. With the web server workload, this is also about 17% of switch_mm_irqs_off.

v1: KVM/x86: add comment to kvm_mmu_do_page_fault()

On a first glance it isn’t obvious why calling kvm_tdp_page_fault() in kvm_mmu_do_page_fault() is special cased, as the general case of using an indirect case would result in calling of kvm_tdp_page_fault() anyway. Add a comment to explain the reason.

v3: Introduce initial support for the AMD I3C (non-HCI) to DW driver

The AMD EPYC platform design has DIMMs connected over the I3C bus, with each DIMM containing three components: SPD, PMIC, and RCD.

v1: netfs: If didn’t read new data then abandon retry

syzkaller reported a three-level circle calls (netfs_rreq_assess, netfs_retry_reads, netfs_rreq_terminated), during an unbuffered or direct I/O read.

v1: x86/cpufeatures: Free up unused feature bits

Linux defined feature bits X86_FEATURE_P3 and X86_FEATURE_P4 are not used anywhere, neither are they visible to userspace.

v5: Add SEV firmware hotloading

The SEV-SNP API specifies a command for hotloading the SEV firmware. when no SEV or SEV-ES guests are running.

v2: Add new headers for Hyper-V Dom0

This patch series introduces new headers (hvhdk.h, hvgdk.h, etc, see patch #3) derived directly from Hyper-V code. hyperv-tlfs.h is replaced with hvhdk.h (which includes the other new headers) everywhere.

v7: Correct perf sampling with Guest VMs

v1: x86/cpu/bugs: Consider having old Intel microcode to be a vulnerability

You can’t practically run old microcode and consider a system secure these days. So, let’s call old microcode what it is: a vulnerability.

v1: A mechanism for efficient support for per-function metrics

This patch introduces the concept on an alternating sample rate to perf core and provides the necessary basic changes in the tools to activate that option.

v1: 6.11: 6.11.7-rc2 review

This is the start of the stable review cycle for the 6.11.7 release. There are 249 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.

v1: 5.4: 5.4.285-rc2 review

This is the start of the stable review cycle for the 5.4.285 release. There are 461 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.

v1: 4.19: 4.19.323-rc2 review

This is the start of the stable review cycle for the 4.19.323 release. There are 349 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.

v1: module: Strict per-modname namespaces

I’ve been wanting $topic for a while, and having just stumbled into the whole namespace thing by accident, I figured I’d give it a go, most if the hard parts seem to have already been done.

v2: x86/bugs: Attack vector controls

This series restructures arch/x86/kernel/cpu/bugs.c and proposes new command line options to make it easier to control which CPU mitigations are applied.

v8: KVM: x86/mmu: Age sptes locklessly

Andrew has queued patches to make MGLRU consult KVM when doing aging[8]. Now, make aging lockless for the shadow MMU and the TDP MMU. This allows us to reduce the time/CPU it takes to do aging and the performance impact on the vCPUs while we are aging.

v1: exec: NULL out bprm->argv0 when it is an ERR_PTR

Attempting to free an ERR_PTR will not work. ;)process ‘syz-executor210’ launched ‘/dev/fd/3’ with NULL argv: empty string added

v5: x86-64: Stack protector and percpu improvements

Currently, x86-64 uses an unusual percpu layout, where the percpu section is linked at absolute address 0. The reason behind this is that older GCC versions placed the stack protector (if enabled) at a fixed offset from the GS segment base.

进程调度

v1: sched/topology: Correctly propagate NUMA flag to scheduling domains

A scheduling domain can degenerate a parent NUMA domain if the CPUs perfectly overlap, without inheriting the SD_NUMA flag.

v1: sched/cpufreq: Ensure sd is rebuilt for EAS check

Ensure sugov_eas_rebuild_sd() is always called when sugov_init() succeeds. The out goto initialized sugov without forcing the rebuild.

v1: sched/smt: Call sched_core_cpu_deactivate() after error is handled

In sched_cpu_deactivate(), the error path restores most of the initial state before returning, but, if CONFIG_SCHED_SMT is defined, it does not undo the previous call to sched_core_cpu_deactivate().

v1: sched/deadline: Skip overflow check if 0 capacity

By properly setting up a 1-cpu sched domain (partition) with no task, it was found that offlining that particular CPU failed because dl_bw_check_overflow() in cpuset_cpu_inactive() returned -EBUSY.

v1: sched/fair: Dequeue sched_delayed tasks when waking to a busy CPU

Phil Auld (Redhat) reported an fio benchmark regression having been found to have been caused by addition of the DELAY_DEQUEUE feature, suggested it may be related to wakees losing the ability to migrate, and confirmed that restoration of same indeed did restore previous performance.

[GIT pull] sched/urgent for v6.12-rc6

内存管理

v2: simplify split calculation

By discussion, current implementation would lead to jitter problem. Since this is a rare case in real world, we decide to simplify the split calculation.

v1: nommu: pass NULL argument to vma_iter_prealloc()

This commit fixes this issue by passing a right argument to the preallocation call.

v1: memcg/hugetlb: Rework memcg hugetlb charging

This series cleans up memcg’s hugetlb charging logic by deprecating the current memcg hugetlb try-charge + {commit, cancel} logic present in alloc_hugetlb_folio.

v4: netfs: Read performance improvements and “single-blob” support

This set of patches is primarily about two things: improving read performance and supporting monolithic single-blob objects that have to be read/written as such (e.g. AFS directory contents).

v1: mm: Introduce and use folio_owner_ops

This patch series introduces struct folio_owner_ops and uses it as a generic way to handle callbacks on freeing a folio. It also applies the callbacks to hugetlb and zone device folios.

v1: Support large folios for tmpfs

Traditionally, tmpfs only supported PMD-sized huge folios. However nowadays with other file systems supporting any sized large folios, and extending anonymous to support mTHP, we should not restrict tmpfs to allocating only PMD-sized huge folios, making it more special. Instead, we should allow tmpfs can allocate any sized large folios.

v2: mTHP-friendly compression in zsmalloc and zram based on multi-pages

This patchset enhances zsmalloc and zram by adding support for dividing large folios into multi-page blocks, typically configured with a 2-order granularity. Without this patchset, a large folio is always divided into nr_pages 4KiB blocks.

v4: mm: count zeromap read and set for swapout and swapin

This patch does not address any specific zeromap bug, but the missing swpout and swpin counts for zero-filled pages can be highly confusing and may mislead user-space agents that rely on changes in these counters as indicators.

v3: zswap IAA compress batching

This patch-series introduces the use of the Intel Analytics Accelerator (IAA) for parallel compression of pages in large folios.

v6: memory,x86,acpi: hotplug memory alignment advisement

When physical address regions are not aligned to memory block size, the misaligned portion is lost (stranded capacity).

v2: Provide a new two step DMA mapping API

This uniqueness has been a long standing pain point as the scatterlist API is mandatory, but expensive to use. It prevents any kind of optimization or feature improvement (such as avoiding struct page for P2P) due to the impossibility of improving the scatterlist.

文件系统

v9: net-next: Suspend IRQs during application busy periods

This revision addresses feedback Willem gave on the selftests. No functional or code changes to the implementation were made and performance tests were not re-run.

v1: proc/kcore: performance optimizations

The performance of /proc/kcore reads has been showing up as a bottleneck for drgn. drgn scripts often spend 25% of their time in the kernel reading from /proc/kcore.

v1: fuse: support large folios

This patchset adds support for folios larger than one page size in FUSE.

v3: implement PROCFS_SET_GROUPS ioctl

v1: proc/softirqs: change softirqs info from possile_cpu to online_cpu

like /proc/interrupts,/proc/softirqs which shows the number of softirq for each online CPU

v3: fs: allow statmount to fetch the subtype and devname

Meta has some internal logging that scrapes /proc/self/mountinfo today. I’d like to convert it to use listmount()/statmount(), so we can do a better job of monitoring with containers. We’re missing some fields though.

v1: Add iomem helpers for use from debugfs

This series attempts to promote helpers used by Xe [1] to libfs. Earlier attempt [2] with similar helper was unnoticed.

v1: hfsplus: don’t query the device logical block size multiple times

Devices block sizes may change. One of these cases is a loop device by using ioctl LOOP_SET_BLOCK_SIZE.

v1: jfs: reject on-disk inodes of an unsupported type

Syzbot has reported the following BUG:

v2: fs: allow statmount to fetch the sb->s_subtype field

Meta has some internal logging that scrapes /proc/self/mountinfo today. I’d like to convert it to use listmount()/statmount(), so we can do a better job of monitoring with containers. We’re missing some fields though. This patchset adds them.

v3: bpf-next: bpf/crib: Add open-coded style process file iterator and file related CRIB kfuncs

This patch series adds open-coded style process file iterator bpf_iter_task_file and file related kfuncs bpf_fget_task(), bpf_get_file_ops_type(), and corresponding selftests test cases.

v8: Read/Write with meta/integrity

This adds a new io_uring interface to exchange additional integrity/pi metadata with read/write.

v1: fs: add the ability for statmount() to report the fs_subtype

Add STATMOUNT_FS_SUBTYPE and claim one of the __spare2 fields to point to the offset into the str[] array. The STATMOUNT_FS_SUBTYPE will only be set in the return mask if there is a subtype associated with the mount.

网络设备

v1: net-next: netlink: add igmp join/leave notifications

This change introduces netlink notifications for multicast address changes, enabling components like the Android Packet Filter to implement IGMP offload solutions.

v1: net-next: net/unix: Stylistic changes in diag.c

Changes based on the script scripts/checkpatch.pl Remove space after cast, blank line after declaration, fixed brace style

v1: net: modernize ioremap in probe

resource aquisition and ioremap can be performed in one step.

v1: ixgbe: Correct BASE-BX10 compliance code

This patch corrects the value of IXGBE_SFF_BASEBX10_CAPABLE to 0x40.

v3: net-next: net: ethernet: ti: am65-cpsw: enable DSCP to priority map for RX

Configure DSCP to Priority mapping registers so that IP precedence field (top 3 bits of DSCP) map it to one of the 8 priority queues for RX traffic.

v4: net-next: eth: fbnic: Add PCIe hardware statistics

Add PCIe hardware statistics support to the fbnic driver. These stats provide insight into PCIe transaction performance and error conditions.

v1: net-next: net: page_pool: do not count normal frag allocation in stats

Commit 0f6deac3a079 (“net: page_pool: add page allocation stats for two fast page allocate path”) added increments for “fast path” allocation to page frag alloc.

v1: net-next: net: dsa: microchip: Add LAN9646 switch support

This series of patches is to add LAN9646 switch support to the KSZ DSA driver.

v1: net-next: net: dsa: microchip: Add SGMII port support to KSZ9477 switch

This series of patches is to add SGMII port support to KSZ9477 switch.

v4: net-next: lib: packing: introduce and use (un)pack_fields

This series improves the packing library with a new API for packing or unpacking a large number of fields at once with minimal code footprint.

v1: iwl-net: idpf: Preserve IRQ affinity and sync IRQ

Currently the IRQ affinity settings fallback to defaults when interface goes through a soft reset. Use irq_set_affinity_notifier() callbacks to fix it.

v4: net: dsa: microchip: disable EEE for KSZ879x/KSZ877x/KSZ876x

For the KSZ8 devices, the EEE errata is handled from the DSA switch driver ksz8.c, ksz8_handle_global_errata.

[net-next PATCH] net: dsa: add devm_dsa_register_switch()

Some DSA driver can be simplified if devres takes care of unregistering the DSA switch. This permits to effectively drop the remove OP from driver that just execute the dsa_unregister_switch() and nothing else.

v1: ethtool-next: rxclass: Make output for RSS context action explicit

Currently, if the action for an ntuple rule is to redirect to an RSS context, the RSS context is printed as an attribute. At the same time, a wrong action is printed.

v1: net-next: bnxt_en: ethtool: Supply ntuple rss context action

Commit 2f4f9fe5bf5f (“bnxt_en: Support adding ntuple rules on RSS contexts”) added support for redirecting to an RSS context as an ntuple rule action.

v1: net-next: ipv4: Prepare bpf helpers to .flowi4_tos conversion.

Continue the process of making a dscp_t variable available when setting .flowi4_tos. This series focuses on the BPF helpers that initialise a struct flowi4 manually.

v1: bpf-next/net: bpf: Add mptcp_subflow bpf_iter support

Here is a series from Geliang, adding mptcp_subflow bpf_iter support.

v1: net-next: tools/net/ynl: rework async notification handling

Revert patch 1bf70e6c3a53 which modified check_ntf() and instead add a new poll_ntf() with async notification semantics.

v1: net-next: mctp i2c: notify user space on TX failure

Currently, there is no error handling mechanism for TX failures, causing user space to remain unaware of these failures until a timeout occurs.

v10: net-next: net: ipv4: Cache pmtu for all packet paths if multipath enabled

Check number of paths by fib_info_num_path(), and update_or_create_fnhe() for every path.

v1: net-next: net: phy: switch eee_broken_modes to linkmode bitmap and add accessor

Add an accessor for the bitmap and use it in r8169.

v8: net-next: udp: Add 4-tuple hash for connected sockets

This patchset introduces 4-tuple hash for connected udp sockets, to make connected udp lookup faster.

[RFC net-next (resend) 0/4] Send notifications for roaming hosts

Apologies, this is a resend as the first version didn’t have the correct CCs.

安全增强

v3: Initial support for Samsung Galaxy Tab 2 series

This series adds initial support for the Samsung Galaxy Tab 2 (samsung-espresso7/10) series of devices.

v7: DCD: Add support for Dynamic Capacity Devices (DCD)

This is a quick spin with minor clean ups Dave was going to apply as well as a couple of clean ups I had slated for after V4 landed.

v1: TQ-Systems TQMa62xx SoM and MBa62xx board

This adds Device Trees for out AM62x-based SoM TQMa62xx and its reference carrier board MBa62xx.

异步 IO

v10: io_uring: support group buffer & ublk zc

v1: io_uring/cmd: let cmds to know about dying task

When the taks that submitted a request is dying, a task work for that request might get run by a kernel thread or even worse by a half dismantled task.

v1: io_uring: prevent speculating sq_array indexing

The SQ index array consists of user provided indexes, which io_uring then uses to index the SQ, and so it’s susceptible to speculation.

Rust For Linux

v2: kbuild: support building external modules in a separate build directory

There has been a long-standing request to support building external modules in a separate build directory.

v3: rust: Add pr_*_once macros

Add Rust version of pr_[emerg|alert|crit|err|warn|notic|info]_once functions, which print a message only once.

v3: rust: transmute: Add implementation for FromBytes trait

Add implementation and documentation for FromBytes trait.

v3: rust: add improved version of ForeignOwnable::borrow_mut

This is a re-submission of Alice’s patch[0]. The leading commits are intended to improve the consistency and ergonomics of ForeignOwnable, and to split out the code movement originally included in the patch.

v2: rust: bindings: Auto-generate inline static functions

This series adds support for bindgen generating wrappers for inline statics and then converts the existing helper functions to this new method.

v2: rust: sync: document PhantomData in Arc

Add a comment explaining the relevant semantics of PhantomData.

v2: rust: Add pr_*_once macros

Add Rust version of pr_[emerg|alert|crit|err|warn|notic|info]_once functions, which print a message only once.

v1: rust-next: make from_errno use try_from_errno

Modified the from_errno function to use try_from_errno to reduce code duplication while still maintaning all existing behavior and error handling and also reduces unsafe code.

v1: rust: bindings: Support some inline static functions

The kernel includes a large number of static inline functions that are defined in header files.

v4: rust: Implement Display and align Debug for Box

This patch series introduces a Display implementation for Box and updates the Debug implementation to align its style with Display for consistency.

v3: Add dma coherent allocator abstraction

This series adds support for the dma coherent allocator.

v1: rust: Add pr_*_once macros

Add Rust version of pr_[emerg|alert|crit|err|warn|notic|info]_once functions, which print a message only once.

BPF

v6: bpf-next: Refactor lock management

This set refactors lock management in the verifier in preparation for spin locks that can be acquired multiple times.

v4: bpf-next: bpf: Refactor active lock management

When bpf_spin_lock was introduced originally, there was deliberation on whether to use an array of lock IDs, but since bpf_spin_lock is limited to holding a single lock at any given time, we’ve been using a single ID to identify the held lock.

v11: bpf-next: bpf: Support private stack for bpf progs

The main motivation for private stack comes from nested scheduler in sched-ext from Tejun.

v1: dwarves: Check DW_OP_[GNU_]entry_value for possible parameter matching

Currently, pahole relies on dwarf to find whether a particular func has its parameter mismatched with standard or optimized away.

v2: perf lock contention: Symbolize locks using slab cache names

This is to support symbolization of dynamic locks using slab allocator’s metadata. The kernel support is in the bpf-next tree now.

v1: bpf-next: bpf: range_tree for bpf arena

Introduce range_tree (internval tree plus rbtree) to track unallocated ranges in bpf arena and replace maple_tree with it.

v1: Check the types of iter arguments

The verifier misses the type checking on iter arguments, so any pointer types (e.g., map value pointers) can be passed as iter arguments.

v1: bpf-next: bpf: inlinable kfuncs for BPF

Some time ago, in an off-list discussion, Alexei Starovoitov suggested compiling certain kfuncs to BPF to allow inlining calls to such kfuncs during verification. This RFC explores the idea.

v4: net-next: xdp: a fistful of generic changes (+libeth_xdp)

They are implemented mostly as inlines with inline callback arguments. They will be then uninlined in the drivers with sane function sizes, but without any indirect calls.

v3: bpf-next: bpf, x64: Introduce two tailcall enhancements

This patch set introduces two enhancements aimed at improving tailcall handling in the x64 JIT.

v3: net-next: virtio-net: support AF_XDP zero copy (tx)

v10: bpf-next: bpf: Support private stack for bpf progs

The main motivation for private stack comes from nested scheduler in sched-ext from Tejun.

v3: bpf: Add sk_is_inet and IS_ICSK check in tls_sw_has_ctx_tx/rx

As the introduction of the support for vsock and unix sockets in sockmap, tls_sw_has_ctx_tx/rx cannot presume the socket passed in must be IS_ICSK.

v1: uprobes: Add support to optimize usdt probes on x86_64

The generic approach (optimize all uprobes) is hard due to emulating possible multiple original instructions and its related issues.

[Bpf] RFC 9669: The BPF Instruction Set Architecture

We have some exciting news to share: The IETF BPF Instruction Set Architecture document has officially been published as RFC 9669 [0].

周边技术动态

Qemu

v1: target/riscv: Add Tenstorrent Ascalon CPU

Add a CPU entry for the Tenstorrent Ascalon CPU, a series of 2 wide to 8 wide RV64 cores.

v1: hw/riscv/riscv-iommu.c: Introduce a translation tag for the page table cache

This commit introduces a translation tag to avoid invalidating an entry that should not be invalidated when IOMMU executes invalidation commands.

v1: riscv-to-apply queue

The following changes since commit 63dc36944383f70f1c7a20f6104966d8560300fa: are available in the Git repository at:

v1: for-10.0: hw/riscv: riscv-iommu-sys device

Now that we have merged the base IOMMU support we can re-introduce the riscv-iommu-sys platform device that was taken away from the initial posting.

v5: Support RISC-V CSR read/write in Qtest environment

These patches add functionality for unit testing RISC-V-specific registers. The first patch adds a Qtest backend, and the second implements a simple test.

v3: target/riscv: Add support for Control Transfer Records Ext.

This series enables Control Transfer Records extension support on riscv platform. This extension is similar to Arch LBR in x86 and BRBE in ARM. The Extension has been stable and this series is based on v1.0_rc6 [0]

v3: hw/riscv: Add Microblaze V generic board

Add a basic board with interrupt controller (intc), timer, serial (uartlite), small memory called LMB@0 (128kB) and DDR@0x80000000 (configured via command line eg. -m 2g).

U-Boot

Pull request efi-2025-01-rc2-2

v3: Support OF_UPSTREAM for StarFive JH7110

This patchset add OF_UPSTREAM support for StarFive JH7110 based boards.



Read Album:

Read Related:

Read Latest: