Merge tag 'riscv-for-linus-5.2-mw2' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux
Pull RISC-V updates from Palmer Dabbelt: "This contains an assortment of RISC-V related patches that I'd like to target for the 5.2 merge window. Most of the patches are cleanups, but there are a handful of user-visible changes: - The nosmp and nr_cpus command-line arguments are now supported, which work like normal. - The SBI console no longer installs itself as a preferred console, we rely on standard mechanisms (/chosen, command-line, hueristics) instead. - sfence_remove_sfence_vma{,_asid} now pass their arguments along to the SBI call. - Modules now support BUG(). - A missing sfence.vma during boot has been added. This bug only manifests during boot. - The arch/riscv support for SiFive's L2 cache controller has been merged, which should un-block the EDAC framework work. I've only tested this on QEMU again, as I didn't have time to get things running on the Unleashed. The latest master from this morning merges in cleanly and passes the tests as well" * tag 'riscv-for-linus-5.2-mw2' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux: (31 commits) riscv: fix locking violation in page fault handler RISC-V: sifive_l2_cache: Add L2 cache controller driver for SiFive SoCs RISC-V: Add DT documentation for SiFive L2 Cache Controller RISC-V: Avoid using invalid intermediate translations riscv: Support BUG() in kernel module riscv: Add the support for c.ebreak check in is_valid_bugaddr() riscv: support trap-based WARN() riscv: fix sbi_remote_sfence_vma{,_asid}. riscv: move switch_mm to its own file riscv: move flush_icache_{all,mm} to cacheflush.c tty: Don't force RISCV SBI console as preferred console RISC-V: Access CSRs using CSR numbers RISC-V: Add interrupt related SCAUSE defines in asm/csr.h RISC-V: Use tabs to align macro values in asm/csr.h RISC-V: Fix minor checkpatch issues. RISC-V: Support nr_cpus command line option. RISC-V: Implement nosmp commandline option. RISC-V: Add RISC-V specific arch_match_cpu_phys_id riscv: vdso: drop unnecessary cc-ldoption riscv: call pm_power_off from machine_halt / machine_power_off ...
This commit is contained in:
51
Documentation/devicetree/bindings/riscv/sifive-l2-cache.txt
Normal file
51
Documentation/devicetree/bindings/riscv/sifive-l2-cache.txt
Normal file
@@ -0,0 +1,51 @@
|
||||
SiFive L2 Cache Controller
|
||||
--------------------------
|
||||
The SiFive Level 2 Cache Controller is used to provide access to fast copies
|
||||
of memory for masters in a Core Complex. The Level 2 Cache Controller also
|
||||
acts as directory-based coherency manager.
|
||||
All the properties in ePAPR/DeviceTree specification applies for this platform
|
||||
|
||||
Required Properties:
|
||||
--------------------
|
||||
- compatible: Should be "sifive,fu540-c000-ccache" and "cache"
|
||||
|
||||
- cache-block-size: Specifies the block size in bytes of the cache.
|
||||
Should be 64
|
||||
|
||||
- cache-level: Should be set to 2 for a level 2 cache
|
||||
|
||||
- cache-sets: Specifies the number of associativity sets of the cache.
|
||||
Should be 1024
|
||||
|
||||
- cache-size: Specifies the size in bytes of the cache. Should be 2097152
|
||||
|
||||
- cache-unified: Specifies the cache is a unified cache
|
||||
|
||||
- interrupts: Must contain 3 entries (DirError, DataError and DataFail signals)
|
||||
|
||||
- reg: Physical base address and size of L2 cache controller registers map
|
||||
|
||||
Optional Properties:
|
||||
--------------------
|
||||
- next-level-cache: phandle to the next level cache if present.
|
||||
|
||||
- memory-region: reference to the reserved-memory for the L2 Loosely Integrated
|
||||
Memory region. The reserved memory node should be defined as per the bindings
|
||||
in reserved-memory.txt
|
||||
|
||||
|
||||
Example:
|
||||
|
||||
cache-controller@2010000 {
|
||||
compatible = "sifive,fu540-c000-ccache", "cache";
|
||||
cache-block-size = <64>;
|
||||
cache-level = <2>;
|
||||
cache-sets = <1024>;
|
||||
cache-size = <2097152>;
|
||||
cache-unified;
|
||||
interrupt-parent = <&plic0>;
|
||||
interrupts = <1 2 3>;
|
||||
reg = <0x0 0x2010000 0x0 0x1000>;
|
||||
next-level-cache = <&L25 &L40 &L36>;
|
||||
memory-region = <&l2_lim>;
|
||||
};
|
Reference in New Issue
Block a user