Skip to content
Snippets Groups Projects
  1. Sep 07, 2022
    • Bin Meng's avatar
      roms/opensbi: Upgrade from v1.0 to v1.1 · 780bb81b
      Bin Meng authored
      
      Upgrade OpenSBI from v1.0 to v1.1 and the pre-built bios images.
      
      The v1.1 release includes the following commits:
      
      5b99603 lib: utils/ipi: Fix size check in aclint_mswi_cold_init()
      6dde435 lib: utils/sys: Extend HTIF library to allow custom base address
      8257262 platform: sifive_fu740: do not use a global in da9063_reset/shutdown
      fb688d9 platform: sifive_fu740: fix reset when watchdog is running
      5d025eb lib: fix pointer of type 'void *' used in arithmetic
      632f593 lib: sbi: Map only the counters enabled in hardware
      3b7c204 lib: sbi: Disable interrupt during config matching
      a26dc60 lib: sbi: Disable interrupt and inhibit counting in M-mode during init
      5d53b55 Makefile: fix build with binutils 2.38
      6ad8917 lib: fix compilation when strings.h is included
      ce4c018 lib: utils/serial: Round UART8250 baud rate divisor to nearest integer
      01250d0 include: sbi: Add AIA related CSR defines
      8f96070 lib: sbi: Detect AIA CSRs at boot-time
      65b4c7c lib: sbi: Use AIA CSRs for local interrupts when available
      222132f lib: sbi: Add sbi_trap_set_external_irqfn() API
      5f56314 lib: utils/irqchip: Allow multiple FDT irqchip drivers
      1050940 include: sbi: Introduce nascent_init() platform callback
      55e79f8 lib: sbi: Enable mie.MEIE bit for IPIs based on external interrupts.
      9f73669 lib: utils/irqchip: Add IMSIC library
      811da5c lib: utils/irqchip: Add FDT based driver for IMSIC
      7127aaa lib: utils: Disable appropriate IMSIC DT nodes in fdt_fixups()
      9979265 lib: utils/irqchip: Add APLIC initialization library
      3461219 lib: utils/irqchip: Add FDT based driver for APLIC
      8e2ef4f lib: utils: Disable appropriate APLIC DT nodes in fdt_fixups()
      3a69cc1 lib: sbi: fix typo in is_region_subset
      f2ccf2f lib: sbi: verbose sbi_domain_root_add_memregion
      f3f4604 lib: sbi: Add a simple external interrupt handling framework
      4998a71 lib: utils: serial: Initial commit of xlnx-uartlite
      2dfbd3c lib: pmp_set/pmp_get moved errors from runtime to compile time
      b6b7220 firmware: Fix code for accessing hart_count and stack_size
      d552fc8 lib: Add error messages via conditional compilation for the future
      555bdb1 include: Use static asserts for SBI_PLATFORM_xxx_OFFSET defines
      1b42d3a include: Use static asserts for SBI_SCRATCH_xxx_OFFSET defines
      7924a0b include: Use static asserts for FW_DYNAMIC_INFO_xxx_OFFSET defines
      722f80d include: Add defines for [m|h|s]envcfg CSRs
      31fecad lib: sbi: Detect menvcfg CSR at boot time
      47d6765 lib: sbi: Enable Zicbo[m|z] extensions in the menvcfg CSR
      794986f lib: sbi: Enable Svpbmt extension in the menvcfg CSR
      499601a lib: sbi: Add Smstateen extension defines
      d44568a lib: sbi: Detect Smstateen CSRs at boot-time
      3383d6a lib: irqchip/imsic: configure mstateen
      5c5cbb5 lib: utils/serial: support 'reg-offset' property
      c1e47d0 include: correct the definition of MSTATUS_VS
      9cd95e1 lib: sbi/hart: preserve csr validation value
      4035ae9 docs: pmu: Improve the PMU DT bindings
      d62f6da lib: sbi: Implement Sstc extension
      474a9d4 lib: sbi: Fix mstatus_init() for RV32 when Sscofpmf is not available
      e576b3e include: sbi: Define SBI_PMU_HW_EVENT_MAX to 256
      b0c9df5 lib: sbi: Fix mhpmeventh access for rv32 in absence of sscofpmf
      1a754bb lib: sbi: Detect and print privileged spec version
      5a6be99 lib: sbi: Remove 's' and 'u' from misa_string() output
      5b8b377 lib: sbi: Update the name of ISA string printed at boot time
      d4b563c lib: sbi: Remove MCOUNTEREN and SCOUNTEREN hart features
      dbc3d8f lib: sbi: Remove MCOUNTINHIBT hart feature
      97a17c2 lib: sbi: Remove MENVCFG hart feature
      a6ab94f lib: sbi: Fix AIA feature detection
      cad6c91 lib: sbi: Convert hart features into hart extensions
      be4903a lib: sbi: Detect hart features only once for each hart
      994ace3 lib: sbi: Add sbi_hart_update_extension() function
      023f0ad lib: sbi_platform: Add callback to populate HART extensions
      f726f2d Makefile: Allow generated C source to be anywhere in build directory
      7fb474b Makefile: Add support for generating C array at compile time
      73cf511 lib: utils/reset: Generate FDT reset driver list at compile-time
      1e62705 lib: utils/serial: Generate FDT serial driver list at compile-time
      bfeb305 lib: utils/timer: Generate FDT timer driver list at compile-time
      3a69d12 lib: utils/irqchip: Generate FDT irqchip driver list at compile-time
      4ee0c57 lib: utils/ipi: Generate FDT ipi driver list at compile-time
      998ed43 lib: utils/i2c: Generate FDT i2c adapter driver list at compile-time
      4eacd82 lib: utils/gpio: Generate FDT gpio driver list at compile-time
      a3a3c60 platform: generic: Generate platform override module list at compile-time
      9a7a677 platform: generic: Move Sifive platform overrides into own directory
      851c14d lib: utils/irqchip: fix typo when checking for CPU node
      90a9dd2 lib: utils/fdt: introduce fdt_node_is_enabled()
      616da52 lib: utils: check if CPU node is enabled
      575bb4e platform: generic: check if CPU node is enabled
      1bc67db lib: utils/fdt: rename fdt_parse_max_hart_id
      f067bb8 lib: sbi: fix system_opcode_insn
      fab0379 lib: utils/fdt: Require match data to be const
      295e5f3 lib: sbi_timer: Drop unnecessary get_platform_ticks wrapper
      ff65bfe lib: sbi_illegal_insn: Constify illegal_insn_table
      cb8271c lib: sbi_illegal_insn: Add emulation for fence.tso
      adc3388 lib: sbi_trap: Redirect exception based on hedeleg
      ce1d618 platform: generic: add overrides for vendor extensions
      b20ed9f lib: sbi_hsm: Call a device hook during hart resume
      79e42eb lib: sbi_hsm: Assume a consistent resume address
      2ea7799 lib: irqchip/plic: Constify plic_data pointers
      8c362e7 lib: irqchip/plic: Factor out a context init function
      415ecf2 lib: irqchip/plic: Add context save/restore helpers
      2b79b69 lib: irqchip/plic: Add priority save/restore helpers
      69be3df lib: utils/irqchip: Add FDT wrappers for PLIC save/restore functions
      5e56758 lib: utils/irqchip: Add wrapper for T-HEAD PLIC delegation
      9dc5ec5 platform: Add HSM implementation for Allwinner D1
      551c70c include: sbi: Add mtinst/htinst psuedoinstructions
      187127f lib: sbi: Fixup tinst for exceptions in sbi_misaligned_*()
      a07402a lib: sbi: Fix tval and tinst for sbi_get_insn()
      c653001 lib: utils: Remove CSRs that set/clear an IMSIC interrupt file bits
      7738345 lib: utils/timer: Add a separate compatible for the D1 CLINT
      d76a196 lib: irqchip/plic: fix typo in plic_warm_irqchip_init
      6f1fe98 lib: utils/timer: Remove Allwinner D1 CLINT compatibles
      c6fdbcf include: sbi: Change spec version to 1.0
      3f66465 lib: pmu: allow to use the highest available counter
      4489876 include: Bump-up version to 1.1
      
      Signed-off-by: default avatarBin Meng <bmeng.cn@gmail.com>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Message-Id: <20220713090613.204046-1-bmeng.cn@gmail.com>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      780bb81b
    • Weiwei Li's avatar
      target/riscv: Simplify the check in hmode to reuse the check in riscv_csrrw_check · 5de12453
      Weiwei Li authored
      
      Just add 1 to the effective privledge level when in HS mode, then reuse
      the check of 'effective_priv < csr_priv' in riscv_csrrw_check to replace
      the privilege level related check in hmode. Then, hmode will only check
      whether H extension is supported.
      
      When accessing Hypervior CSRs:
         1) If accessing from M privilege level, the check of
      'effective_priv< csr_priv' passes, returns hmode(...) which will return
      RISCV_EXCP_ILLEGAL_INST when H extension is not supported and return
      RISCV_EXCP_NONE otherwise.
         2) If accessing from HS privilege level, effective_priv will add 1,
      the check passes and also returns hmode(...) too.
         3) If accessing from VS/VU privilege level, the check fails, and
      returns RISCV_EXCP_VIRT_INSTRUCTION_FAULT
         4) If accessing from U privilege level, the check fails, and returns
      RISCV_EXCP_ILLEGAL_INST
      
      Signed-off-by: default avatarWeiwei Li <liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarJunqiang Wang <wangjunqiang@iscas.ac.cn>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Reviewed-by: default avatarAndrew Jones <ajones@ventanamicro.com>
      Message-Id: <20220718130955.11899-7-liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      5de12453
    • Weiwei Li's avatar
      target/riscv: Fix checks in hmode/hmode32 · 62a09b9b
      Weiwei Li authored
      
      Add check for the implicit dependence between H and S
      
      Csrs only existed in RV32 will not trigger virtual instruction fault
      when not in RV32 based on section 8.6.1 of riscv-privileged spec
      (draft-20220717)
      
      Signed-off-by: default avatarWeiwei Li <liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarJunqiang Wang <wangjunqiang@iscas.ac.cn>
      Reviewed-by: default avatarAndrew Jones <ajones@ventanamicro.com>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Message-Id: <20220718130955.11899-6-liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      62a09b9b
    • Weiwei Li's avatar
      target/riscv: Add check for csrs existed with U extension · c126f83c
      Weiwei Li authored
      
      Add umode/umode32 predicate for mcounteren, menvcfg/menvcfgh
      
      Signed-off-by: default avatarWeiwei Li <liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarJunqiang Wang <wangjunqiang@iscas.ac.cn>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Reviewed-by: default avatarAndrew Jones <ajones@ventanamicro.com>
      Message-Id: <20220718130955.11899-5-liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      c126f83c
    • Weiwei Li's avatar
      target/riscv: Fix checkpatch warning may triggered in csr_ops table · 108c4f26
      Weiwei Li authored
      
      Fix the lines with over 80 characters
      
      Fix the lines which are obviously misalgined with other lines in the
      same group
      
      Signed-off-by: default avatarWeiwei Li <liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarJunqiang Wang <wangjunqiang@iscas.ac.cn>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Reviewed-by: default avatarAndrew Jones <ajones@ventanamicro.com>
      Message-Id: <20220718130955.11899-4-liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      108c4f26
    • Weiwei Li's avatar
      target/riscv: H extension depends on I extension · 756b0374
      Weiwei Li authored
      
      Add check for "H depends on an I base integer ISA with 32 x registers"
      which is stated at the beginning of chapter 8 of the riscv-privileged
      spec(draft-20220717)
      
      Signed-off-by: default avatarWeiwei Li <liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarJunqiang Wang <wangjunqiang@iscas.ac.cn>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Reviewed-by: default avatarAndrew Jones <ajones@ventanamicro.com>
      Message-Id: <20220718130955.11899-3-liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      756b0374
    • Weiwei Li's avatar
      target/riscv: Add check for supported privilege mode combinations · 0b572c81
      Weiwei Li authored
      
      There are 3 suggested privilege mode combinations listed in section 1.2
      of the riscv-privileged spec(draft-20220717):
      1) M, 2) M, U 3) M, S, U
      
      Signed-off-by: default avatarWeiwei Li <liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarJunqiang Wang <wangjunqiang@iscas.ac.cn>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Reviewed-by: default avatarAndrew Jones <ajones@ventanamicro.com>
      Message-Id: <20220718130955.11899-2-liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      0b572c81
    • Jason A. Donenfeld's avatar
      hw/riscv: virt: pass random seed to fdt · e4b4f0b7
      Jason A. Donenfeld authored
      
      If the FDT contains /chosen/rng-seed, then the Linux RNG will use it to
      initialize early. Set this using the usual guest random number
      generation function. This is confirmed to successfully initialize the
      RNG on Linux 5.19-rc2.
      
      Cc: Alistair Francis <alistair.francis@wdc.com>
      Signed-off-by: default avatarJason A. Donenfeld <Jason@zx2c4.com>
      Reviewed-by: default avatarBin Meng <bmeng.cn@gmail.com>
      Message-Id: <20220613115810.178210-1-Jason@zx2c4.com>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      e4b4f0b7
    • Weiwei Li's avatar
      target/riscv: move zmmul out of the experimental properties · 6d00ffad
      Weiwei Li authored
      
      - Zmmul is ratified and is now version 1.0
      
      Signed-off-by: default avatarWeiwei Li <liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarJunqiang Wang <wangjunqiang@iscas.ac.cn>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Message-Id: <20220710101546.3907-1-liweiwei@iscas.ac.cn>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      6d00ffad
    • Frédéric Pétrot's avatar
      target/riscv: fix shifts shamt value for rv128c · 33632775
      Frédéric Pétrot authored
      
      For rv128c shifts, a shamt of 0 is a shamt of 64, while for rv32c/rv64c
      it stays 0 and is a hint instruction that does not change processor state.
      For rv128c right shifts, the 6-bit shamt is in addition sign extended to
      7 bits.
      
      Signed-off-by: default avatarFrédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
      Reviewed-by: default avatarWeiwei Li <liweiwei@iscas.ac.cn>
      Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
      Message-Id: <20220710110451.245567-1-frederic.petrot@univ-grenoble-alpes.fr>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      33632775
    • Anup Patel's avatar
      target/riscv: Force disable extensions if priv spec version does not match · 9a1f054d
      Anup Patel authored
      
      We should disable extensions in riscv_cpu_realize() if minimum required
      priv spec version is not satisfied. This also ensures that machines with
      priv spec v1.11 (or lower) cannot enable H, V, and various multi-letter
      extensions.
      
      Fixes: a775398b ("target/riscv: Add isa extenstion strings to the device tree")
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Signed-off-by: default avatarAnup Patel <apatel@ventanamicro.com>
      Signed-off-by: default avatarRahul Pathak <rpathak@ventanamicro.com>
      Message-Id: <20220630061150.905174-3-apatel@ventanamicro.com>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      9a1f054d
    • Anup Patel's avatar
      target/riscv: Update [m|h]tinst CSR in riscv_cpu_do_interrupt() · 8e2aa21b
      Anup Patel authored
      
      We should write transformed instruction encoding of the trapped
      instruction in [m|h]tinst CSR at time of taking trap as defined
      by the RISC-V privileged specification v1.12.
      
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Signed-off-by: default avatarAnup Patel <apatel@ventanamicro.com>
      Acked-by: default avatardramforever <dramforever@live.com>
      Message-Id: <20220630061150.905174-2-apatel@ventanamicro.com>
      Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      8e2aa21b
  2. Sep 06, 2022
  3. Sep 05, 2022
    • Samuel Thibault's avatar
      usb-braille: Better explain that one also has to create a chardev backend · 3e01455e
      Samuel Thibault authored
      
      Users have reported not to understand the documentation. This completes
      it to give an explicit example how one is supposed to set up a virtual
      braille USB device.
      
      Signed-off-by: default avatarSamuel Thibault <samuel.thibault@ens-lyon.org>
      3e01455e
    • Stefan Hajnoczi's avatar
      Merge tag 'pull-or1k-20220904' of https://github.com/stffrdhrn/qemu into staging · fd28528e
      Stefan Hajnoczi authored
      OpenRISC updates for 7.2.0
      
      Updates to add the OpenRISC virt plaform to QEMU. Highlights
      include:
      
      - New virt plaform with, virtio and pci bus support
      - OpenRISC support for MTTCG
      - Goldfish RTC device endianness is configurable now
      
      # -----BEGIN PGP SIGNATURE-----
      #
      # iQIzBAABCAAdFiEE2cRzVK74bBA6Je/xw7McLV5mJ+QFAmMURl4ACgkQw7McLV5m
      # J+TAVg/6A1HFazEBDzyVvg5BWfusvPMv1gWyAXQVbZDdoEVP5ilJq3Xz2vlOWu+Q
      # 46WHAncQH8KGWlS7x4Qk9X1tOU+9LCTa0aBqa1ARAle/wGKJeQ2QkmQM7lnAAtFt
      # ON9pDOrj85cNVp7ly/rZqmOkYorUtSblKllOigPaxZozfSA2FuoYwc7vLxy/ICk0
      # 6RbRUKiIvqvNxhT0q13buIiqhtQAOLC2/Rrlp/CqUm+nrNlSVQIMC57ddNoopUFN
      # I6jb5UxyHtQSlWX6zsLjvho9hlZCuA9IIG7B4qS4/kyC7XJGmOICb3A7QSmfaUxy
      # HtEsaImjjhCUnJs8fhDHqyYnUu6JcXMRv61hIr7GNK/g3enpBzG1Otu5jsyHgzEX
      # SaachdFUibLJSj/+K4YOaT9luAc0Yvx9vArnXD+2wGg3kHTSDUNv2nFdyLyn5PNM
      # sZ9gx6gTEFI7iaeHEZM/doKdlHubddA/GH4DLy2fwZN7EyIsbll9TDJ8icqu1UBT
      # KpQdN55VeVqdOEvKUSXxsAK8aRtTjlEErKinufz1yyrg5Lw9XgH1xtTft+rJyXPu
      # Lw0hMHYqeaWhNUgnli/ByTY7yd+wC/ukNFQLUlMiDte337Lx9H//MOVvyl6Y5ARE
      # jIWt1JlTyuhj+txJrGZMvBrc2ZQ6fF/4HXc/xyGK7eJnEWZIzkY=
      # =BzgX
      # -----END PGP SIGNATURE-----
      # gpg: Signature made Sun 04 Sep 2022 02:31:58 EDT
      # gpg:                using RSA key D9C47354AEF86C103A25EFF1C3B31C2D5E6627E4
      # gpg: Good signature from "Stafford Horne <shorne@gmail.com>" [unknown]
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: D9C4 7354 AEF8 6C10 3A25  EFF1 C3B3 1C2D 5E66 27E4
      
      * tag 'pull-or1k-20220904' of https://github.com/stffrdhrn/qemu
      
      :
        docs/system: openrisc: Add OpenRISC documentation
        hw/openrisc: virt: pass random seed to fdt
        target/openrisc: Interrupt handling fixes
        target/openrisc: Enable MTTCG
        target/openrisc: Add interrupted CPU to log
        hw/openrisc: Initialize timer time at startup
        hw/openrisc: Add PCI bus support to virt
        hw/openrisc: Add the OpenRISC virtual machine
        goldfish_rtc: Add big-endian property
        target/openrisc: Fix memory reading in debugger
        hw/openrisc: Split re-usable boot time apis out to boot.c
      
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      fd28528e
  4. Sep 04, 2022
Loading