Home
last modified time | relevance | path

Searched +full:hart +full:- +full:compatible (Results 1 – 25 of 29) sorted by relevance

12

/openbmc/linux/Documentation/devicetree/bindings/iio/addac/
H A Dadi,ad74115.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Cosmin Tanislav <cosmin.tanislav@analog.com>
13 The AD74115H is a single-channel software configurable input/output
17 chip solution with an SPI interface. The device features a 16-bit ADC and a
18 14-bit DAC.
23 compatible:
25 - adi,ad74115h
30 spi-max-frequency:
[all …]
H A Dadi,ad74413r.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Cosmin Tanislav <cosmin.tanislav@analog.com>
13 The AD74412R and AD74413R are quad-channel software configurable input/output
18 The devices feature a 16-bit ADC and four configurable 13-bit DACs to provide
20 The AD74413R differentiates itself from the AD74412R by being HART-compatible.
25 compatible:
27 - adi,ad74412r
28 - adi,ad74413r
[all …]
/openbmc/linux/Documentation/devicetree/bindings/interrupt-controller/
H A Driscv,cpu-intc.txt1 RISC-V Hart-Level Interrupt Controller (HLIC)
2 ---------------------------------------------
4 RISC-V cores include Control Status Registers (CSRs) which are local to each
5 CPU core (HART in RISC-V terminology) and can be read or written by software.
7 Every interrupt is ultimately routed through a hart's HLIC before it
8 interrupts that hart.
10 The RISC-V supervisor ISA manual specifies three interrupt sources that are
13 timer interrupt comes from an architecturally mandated real-time timer that is
16 via the platform-level interrupt controller (PLIC).
18 All RISC-V systems that conform to the supervisor ISA specification are
[all …]
H A Dsifive,plic-1.0.0.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
4 ---
5 $id: http://devicetree.org/schemas/interrupt-controller/sifive,plic-1.0.0.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
8 title: SiFive Platform-Level Interrupt Controller (PLIC)
11 SiFive SoCs and other RISC-V SoCs include an implementation of the
12 Platform-Level Interrupt Controller (PLIC) high-level specification in
13 the RISC-V Privileged Architecture specification. The PLIC connects all
14 external interrupts in the system to all hart contexts in the system, via
15 the external interrupt source in each hart.
[all …]
/openbmc/linux/Documentation/devicetree/bindings/riscv/
H A Dcpus.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR MIT)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: RISC-V CPUs
10 - Paul Walmsley <paul.walmsley@sifive.com>
11 - Palmer Dabbelt <palmer@sifive.com>
12 - Conor Dooley <conor@kernel.org>
15 This document uses some terminology common to the RISC-V community
18 hart: A hardware execution context, which contains all the state
19 mandated by the RISC-V ISA: a PC and some registers. This
[all …]
H A Dextensions.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR MIT)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: RISC-V ISA extensions
10 - Paul Walmsley <paul.walmsley@sifive.com>
11 - Palmer Dabbelt <palmer@sifive.com>
12 - Conor Dooley <conor@kernel.org>
15 RISC-V has a large number of extensions, some of which are "standard"
16 extensions, meaning they are ratified by RISC-V International, and others
18 This document defines properties that indicate whether a hart supports a
[all …]
/openbmc/u-boot/arch/riscv/lib/
H A Dsifive_clint.c1 // SPDX-License-Identifier: GPL-2.0+
5 * U-Boot syscon driver for SiFive's Core Local Interruptor (CLINT).
6 * The CLINT block holds memory-mapped control and status registers
18 #define MSIP_REG(base, hart) ((ulong)(base) + (hart) * 4) argument
20 #define MTIMECMP_REG(base, hart) ((ulong)(base) + 0x4000 + (hart) * 8) argument
30 if (!gd->arch.clint) { \
34 gd->arch.clint = ret; \
42 *time = readq((void __iomem *)MTIME_REG(gd->arch.clint)); in riscv_get_time()
47 int riscv_set_timecmp(int hart, u64 cmp) in riscv_set_timecmp() argument
51 writeq(cmp, (void __iomem *)MTIMECMP_REG(gd->arch.clint, hart)); in riscv_set_timecmp()
[all …]
/openbmc/linux/arch/riscv/kernel/
H A Dcpu.c1 // SPDX-License-Identifier: GPL-2.0-only
26 * Returns the hart ID of the given device tree node, or -ENODEV if the node
27 * isn't an enabled and valid RISC-V hart node.
29 int riscv_of_processor_hartid(struct device_node *node, unsigned long *hart) in riscv_of_processor_hartid() argument
33 *hart = (unsigned long)of_get_cpu_hwid(node, 0); in riscv_of_processor_hartid()
34 if (*hart == ~0UL) { in riscv_of_processor_hartid()
35 pr_warn("Found CPU without hart ID\n"); in riscv_of_processor_hartid()
36 return -ENODEV; in riscv_of_processor_hartid()
39 cpu = riscv_hartid_to_cpuid(*hart); in riscv_of_processor_hartid()
44 return -ENODEV; in riscv_of_processor_hartid()
[all …]
/openbmc/u-boot/drivers/cpu/
H A Driscv_cpu.c1 // SPDX-License-Identifier: GPL-2.0+
10 #include <dm/device-internal.h>
21 return -ENOSPC; in riscv_cpu_get_desc()
32 dev_read_u32(dev, "clock-frequency", (u32 *)&info->cpu_freq); in riscv_cpu_get_info()
34 mmu = dev_read_string(dev, "mmu-type"); in riscv_cpu_get_info()
36 info->features |= BIT(CPU_FEAT_MMU); in riscv_cpu_get_info()
46 ofnode_for_each_subnode(node, dev_ofnode(dev->parent)) { in riscv_cpu_get_count()
65 /* save the hart id */ in riscv_cpu_bind()
66 plat->cpu_id = dev_read_addr(dev); in riscv_cpu_bind()
68 ret = dev_read_u32(dev, "timebase-frequency", &plat->timebase_freq); in riscv_cpu_bind()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/cpu/
H A Didle-states.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/cpu/idle-states.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
11 - Anup Patel <anup@brainfault.org>
15 1 - Introduction
18 ARM and RISC-V systems contain HW capable of managing power consumption
19 dynamically, where cores can be put in different low-power states (ranging
22 run-time, can be specified through device tree bindings representing the
[all …]
/openbmc/linux/Documentation/devicetree/bindings/timer/
H A Dsifive,clint.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Palmer Dabbelt <palmer@dabbelt.com>
11 - Anup Patel <anup.patel@wdc.com>
14 SiFive (and other RISC-V) SOCs include an implementation of the SiFive
15 Core Local Interruptor (CLINT) for M-mode timer and M-mode inter-processor
16 interrupts. It directly connects to the timer and inter-processor interrupt
17 lines of various HARTs (or CPUs) so RISC-V per-HART (or per-CPU) local
19 The clock frequency of CLINT is specified via "timebase-frequency" DT
[all …]
/openbmc/qemu/docs/system/riscv/
H A Dmicrochip-icicle-kit.rst1 Microchip PolarFire SoC Icicle Kit (``microchip-icicle-kit``)
5 SiFive's E51 plus four U54 cores and many on-chip peripherals and an FPGA.
8 https://www.microsemi.com/product-directory/soc-fpgas/5498-polarfire-soc-fpga
11 https://www.microsemi.com/existing-parts/parts/152514
14 -----------------
16 The ``microchip-icicle-kit`` machine supports the following devices:
21 * Platform-Level Interrupt Controller (PLIC)
22 * L2 Loosely Integrated Memory (L2-LIM)
30 ------------
32 The ``microchip-icicle-kit`` machine can start using the standard -bios
[all …]
H A Dvirt.rst8 real-world hardware.
11 -----------------
17 * Platform-Level Interrupt Controller (PLIC)
19 * 1 NS16550 compatible UART
22 * 8 virtio-mmio transport devices
31 ----------------------------------
34 which it passes to the guest, if there is no ``-dtb`` option. This provides
39 If users want to provide their own DTB, they can use the ``-dtb`` option.
42 * The number of subnodes of the /cpus node should match QEMU's ``-smp`` option
43 * The /memory reg size should match QEMU’s selected ram_size via ``-m``
[all …]
/openbmc/qemu/hw/riscv/
H A Dsifive_u.c2 * QEMU RISC-V Board Compatible with SiFive Freedom U SDK
4 * Copyright (c) 2016-2017 Sagar Karandikar, sagark@eecs.berkeley.edu
8 * Provides a board compatible with the SiFive Freedom U SDK:
15 * 5) OTP (One-Time Programmable) memory with stored serial number
39 #include "qemu/error-report.h"
99 uint64_t mem_size = ms->ram_size; in create_fdt()
111 "sifive,plic-1.0.0", "riscv,plic0" in create_fdt()
114 fdt = ms->fdt = create_device_tree(&s->fdt_size); in create_fdt()
121 qemu_fdt_setprop_string(fdt, "/", "compatible", in create_fdt()
122 "sifive,hifive-unleashed-a00"); in create_fdt()
[all …]
H A Dvirt-acpi-build.c4 * RISC-V virt ACPI generation
6 * Copyright (C) 2008-2010 Kevin O'Connor <kevin@koconnor.net>
10 * Copyright (C) 2021-2023 Ventana Micro Systems Inc
27 #include "hw/acpi/acpi-defs.h"
29 #include "hw/acpi/aml-build.h"
34 #include "hw/pci-host/gpex.h"
37 #include "hw/virtio/virtio-acpi.h"
40 #include "qemu/error-report.h"
69 uint8_t guest_index_bits = imsic_num_bits(s->aia_guests + 1); in riscv_acpi_madt_add_rintc()
70 uint64_t hart_id = arch_ids->cpus[uid].arch_id; in riscv_acpi_madt_add_rintc()
[all …]
H A Dmicrochip_pfsoc.c2 * QEMU RISC-V Board Compatible with Microchip PolarFire SoC Icicle Kit
9 * Provides a board compatible with the Microchip PolarFire SoC Icicle Kit
13 * 2) eNVM (Embedded Non-Volatile Memory)
14 * 3) MMUARTs (Multi-Mode UART)
38 #include "qemu/error-report.h"
58 * The BIOS image used by this machine is called Hart Software Services (HSS).
59 * See https://github.com/polarfire-soc/hart-software-services
76 * https://www.microsemi.com/document-portal/doc_download/
77 * 1244570-ug0880-polarfire-soc-fpga-microprocessor-subsystem-mss-user-guide,
81 * https://www.microsemi.com/document-portal/doc_download/
[all …]
H A Dvirt.c2 * QEMU RISC-V VirtIO Board
6 * RISC-V machine with 16550a UART and VirtIO MMIO
23 #include "qemu/error-report.h"
24 #include "qemu/guest-random.h"
29 #include "hw/qdev-properties.h"
30 #include "hw/char/serial-mm.h"
32 #include "hw/core/sysbus-fdt.h"
45 #include "hw/platform-bus.h"
54 #include "hw/pci-host/gpex.h"
56 #include "hw/acpi/aml-build.h"
[all …]
H A Dspike.c2 * QEMU RISC-V Spike Board
4 * Copyright (c) 2016-2017 Sagar Karandikar, sagark@eecs.berkeley.edu
5 * Copyright (c) 2017-2018 SiFive, Inc.
7 * This provides a RISC-V Board with the following devices:
26 #include "qemu/error-report.h"
68 fdt = ms->fdt = create_device_tree(&fdt_size); in create_fdt()
74 qemu_fdt_setprop_string(fdt, "/", "model", "ucbbar,spike-bare,qemu"); in create_fdt()
75 qemu_fdt_setprop_string(fdt, "/", "compatible", "ucbbar,spike-bare-dev"); in create_fdt()
76 qemu_fdt_setprop_cell(fdt, "/", "#size-cells", 0x2); in create_fdt()
77 qemu_fdt_setprop_cell(fdt, "/", "#address-cells", 0x2); in create_fdt()
[all …]
H A Dopentitan.c2 * QEMU RISC-V Board Compatible with OpenTitan FPGA platform
6 * Provides a board compatible with the OpenTitan FPGA platform:
25 #include "qemu/error-report.h"
85 if (machine->ram_size != mc->default_ram_size) { in opentitan_machine_init()
86 char *sz = size_to_str(mc->default_ram_size); in opentitan_machine_init()
93 object_initialize_child(OBJECT(machine), "soc", &s->soc, in opentitan_machine_init()
95 qdev_realize(DEVICE(&s->soc), NULL, &error_fatal); in opentitan_machine_init()
98 memmap[IBEX_DEV_RAM].base, machine->ram); in opentitan_machine_init()
100 if (machine->firmware) { in opentitan_machine_init()
102 riscv_load_firmware(machine->firmware, &firmware_load_addr, NULL); in opentitan_machine_init()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/iio/temperature/
H A Dadi,ltc2983.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Analog Devices LTC2983, LTC2986, LTM2985 Multi-sensor Temperature system
10 - Nuno Sá <nuno.sa@analog.com>
13 Analog Devices LTC2983, LTC2984, LTC2986, LTM2985 Multi-Sensor Digital
16 https://www.analog.com/media/en/technical-documentation/data-sheets/2983fc.pdf
17 https://www.analog.com/media/en/technical-documentation/data-sheets/2984fb.pdf
18 https://www.analog.com/media/en/technical-documentation/data-sheets/29861fa.pdf
19 https://www.analog.com/media/en/technical-documentation/data-sheets/ltm2985.pdf
[all …]
/openbmc/linux/drivers/cpuidle/
H A Dcpuidle-riscv-sbi.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * RISC-V SBI CPU idle driver.
9 #define pr_fmt(fmt) "cpuidle-riscv-sbi: " fmt
52 data->available = true; in sbi_set_domain_state()
53 data->state = state; in sbi_set_domain_state()
60 return data->state; in sbi_get_domain_state()
67 data->available = false; in sbi_clear_domain_state()
74 return data->available; in sbi_is_domain_state_available()
115 u32 *states = data->states; in __sbi_enter_domain_idle_state()
116 struct device *pd_dev = data->dev; in __sbi_enter_domain_idle_state()
[all …]
/openbmc/linux/arch/riscv/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
4 # see Documentation/kbuild/kconfig-language.rst.
169 # https://github.com/llvm/llvm-project/commit/6ab8927931851bb42b2c93a00801dc499d7d9b1e
176 depends on $(cc-option,-fpatchable-function-entry=8)
186 # VA_BITS - PAGE_SHIFT - 3
199 # set if we are running in S-mode and can use SBI calls
206 bool "MMU-based Paged Memory Management Support"
209 Select if you want MMU-based virtualised addressing space
286 This enables function pointer support for non-standard noncoherent
290 def_bool $(as-instr,.insn r 51$(comma) 0$(comma) 0$(comma) t0$(comma) t0$(comma) zero)
[all …]
/openbmc/linux/drivers/clk/microchip/
H A Dclk-mpfs.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2020-2022 Microchip Technology Inc. All rights reserved.
8 #include <linux/clk-provider.h>
13 #include <dt-bindings/clock/microchip,mpfs-clock.h>
99 void __iomem *mult_addr = msspll_hw->base + msspll_hw->reg_offset; in mpfs_clk_msspll_recalc_rate()
100 void __iomem *ref_div_addr = msspll_hw->base + REG_MSSPLL_REF_CR; in mpfs_clk_msspll_recalc_rate()
101 void __iomem *postdiv_addr = msspll_hw->base + REG_MSSPLL_POSTDIV_CR; in mpfs_clk_msspll_recalc_rate()
117 void __iomem *mult_addr = msspll_hw->base + msspll_hw->reg_offset; in mpfs_clk_msspll_round_rate()
118 void __iomem *ref_div_addr = msspll_hw->base + REG_MSSPLL_REF_CR; in mpfs_clk_msspll_round_rate()
130 msspll_hw->flags); in mpfs_clk_msspll_round_rate()
[all …]
/openbmc/linux/drivers/iio/addac/
H A Dad74413r.c1 // SPDX-License-Identifier: GPL-2.0
26 #include <dt-bindings/iio/addac/adi,ad74413r.h>
64 * Synchronize consecutive operations when doing a one-shot
176 ad74413r_format_reg_write(reg, val, st->reg_tx_buf); in ad74413r_reg_write()
178 return spi_write(st->spi, st->reg_tx_buf, AD74413R_FRAME_SIZE); in ad74413r_reg_write()
186 dev_err(st->dev, "Bad CRC %02x for %02x%02x%02x\n", in ad74413r_crc_check()
188 return -EINVAL; in ad74413r_crc_check()
199 .tx_buf = st->reg_tx_buf, in ad74413r_reg_read()
204 .rx_buf = st->reg_rx_buf, in ad74413r_reg_read()
211 st->reg_tx_buf); in ad74413r_reg_read()
[all …]
/openbmc/linux/drivers/acpi/
H A Dproperty.c1 // SPDX-License-Identifier: GPL-2.0-only
9 * Darren Hart <dvhart@linux.intel.com>
33 /* ACPI _DSD device properties GUID: daffd814-6eba-4d8c-8a91-bc9bbf4aa301 */
36 /* Hotplug in D3 GUID: 6211e2c0-58a3-4af3-90e1-927a4e0c55a4 */
39 /* External facing port GUID: efcc06cc-73ac-4bc3-bff0-76143807c389 */
42 /* Thunderbolt GUID for IMR_VALID: c44d002f-69f9-4e7d-a904-a7baabdf43f7 */
45 /* Thunderbolt GUID for WAKE_SUPPORTED: 6c501103-c189-4296-ba72-9bf5a26ebe5d */
48 /* Storage device needs D3 GUID: 5025030f-842f-4ab4-a561-99a5189762d0 */
53 /* ACPI _DSD data subnodes GUID: dbb8e3e6-5886-4ba6-8795-1319f52a966b */
83 dn->name = link->package.elements[0].string.pointer; in acpi_nondev_subnode_extract()
[all …]

12