/linux/arch/riscv/boot/dts/sifive/ |
H A D | fu540-c000.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 2 /* Copyright (c) 2018-2019 SiFive, Inc */ 4 /dts-v1/; 6 #include <dt-bindings/clock/sifive-fu540-prci.h> 9 #address-cells = <2>; 10 #size-cells = <2>; 11 compatible = "sifive,fu540-c000", "sifive,fu540"; 23 #address-cells = <1>; 24 #size-cells = <0>; 28 i-cache-block-size = <64>; [all …]
|
H A D | hifive-unleashed-a00.dts | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 2 /* Copyright (c) 2018-2019 SiFive, Inc */ 4 #include "fu540-c000.dtsi" 5 #include <dt-bindings/gpio/gpio.h> 6 #include <dt-bindings/leds/common.h> 7 #include <dt-bindings/pwm/pwm.h> 14 compatible = "sifive,hifive-unleashed-a00", "sifive,fu540-c000", 15 "sifive,fu540"; 18 stdout-path = "serial0"; 22 timebase-frequency = <RTCCLK_FREQ>; [all …]
|
H A D | fu740-c000.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 4 /dts-v1/; 6 #include <dt-bindings/clock/sifive-fu740-prci.h> 9 #address-cells = <2>; 10 #size-cells = <2>; 11 compatible = "sifive,fu740-c000", "sifive,fu740"; 23 #address-cells = <1>; 24 #size-cells = <0>; 28 i-cache-block-size = <64>; 29 i-cache-sets = <128>; [all …]
|
/linux/Documentation/devicetree/bindings/pwm/ |
H A D | pwm-sifive.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/pwm/pwm-sifive.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Paul Walmsley <paul.walmsley@sifive.com> 19 numbers can be found here - 21 https://github.com/sifive/sifive-blocks/tree/master/src/main/scala/devices/pwm 24 - $ref: pwm.yaml# 29 - enum: 30 - sifive,fu540-c000-pwm [all …]
|
/linux/Documentation/devicetree/bindings/gpio/ |
H A D | sifive,gpio.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Paul Walmsley <paul.walmsley@sifive.com> 15 - enum: 16 - sifive,fu540-c000-gpio 17 - sifive,fu740-c000-gpio 18 - canaan,k210-gpiohs 19 - const: sifive,gpio0 30 interrupt-controller: true [all …]
|
/linux/Documentation/devicetree/bindings/cache/ |
H A D | sifive,ccache0.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 4 --- 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Paul Walmsley <paul.walmsley@sifive.com> 16 acts as directory-based coherency manager. 24 - sifive,ccache0 25 - sifive,fu540-c000-ccache 26 - sifive,fu740-c000-ccache 29 - compatible 34 - items: [all …]
|
/linux/Documentation/devicetree/bindings/spi/ |
H A D | spi-sifive.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/spi/spi-sifive.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Pragnesh Patel <pragnesh.patel@sifive.com> 11 - Paul Walmsley <paul.walmsley@sifive.com> 12 - Palmer Dabbelt <palmer@sifive.com> 15 - $ref: spi-controller.yaml# 20 - enum: 21 - sifive,fu540-c000-spi [all …]
|
/linux/Documentation/devicetree/bindings/clock/sifive/ |
H A D | fu540-prci.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/clock/sifive/fu540-prci.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: SiFive FU540 Power Reset Clock Interrupt Controller (PRCI) 11 - Paul Walmsley <paul.walmsley@sifive.com> 14 On the FU540 family of SoCs, most system-wide clock and reset integration 17 macros defined in include/dt-bindings/clock/sifive-fu540-prci.h. 26 const: sifive,fu540-c000-prci 33 - description: high frequency clock. [all …]
|
/linux/Documentation/devicetree/bindings/serial/ |
H A D | sifive-serial.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/serial/sifive-serial.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Pragnesh Patel <pragnesh.patel@sifive.com> 11 - Paul Walmsley <paul.walmsley@sifive.com> 12 - Palmer Dabbelt <palmer@sifive.com> 15 - $ref: serial.yaml# 20 - enum: 21 - sifive,fu540-c000-uart [all …]
|
/linux/drivers/clk/sifive/ |
H A D | fu540-prci.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Copyright (C) 2018-2021 SiFive, Inc. 4 * Copyright (C) 2018-2019 Wesley Terpstra 5 * Copyright (C) 2018-2019 Paul Walmsley 6 * Copyright (C) 2020-2021 Zong Li 8 * The FU540 PRCI implements clock and reset control for the SiFive 9 * FU540-C000 chip. This driver assumes that it has sole control 13 * https://github.com/riscv/riscv-linux/commit/999529edf517ed75b56659d456d221b2ee56bb60 16 * - SiFive FU540-C000 manual v1p0, Chapter 7 "Clocking and Reset" 25 #include <dt-bindings/clock/sifive-fu540-prci.h> [all …]
|
H A D | sifive-prci.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #include "sifive-prci.h" 12 #include "fu540-prci.h" 13 #include "fu740-prci.h" 20 * __prci_readl() - read from a PRCI register 34 return readl_relaxed(pd->va + offs); in __prci_readl() 39 writel_relaxed(v, pd->va + offs); in __prci_writel() 42 /* WRPLL-related private functions */ 45 * __prci_wrpll_unpack() - unpack WRPLL configuration registers into parameters 64 c->divr = v; in __prci_wrpll_unpack() [all …]
|
/linux/Documentation/devicetree/bindings/net/ |
H A D | cdns,macb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Nicolas Ferre <nicolas.ferre@microchip.com> 11 - Claudiu Beznea <claudiu.beznea@microchip.com> 16 - items: 17 - enum: 18 - cdns,at91rm9200-emac # Atmel at91rm9200 SoC 19 - const: cdns,emac # Generic 21 - items: [all …]
|
/linux/Documentation/devicetree/bindings/riscv/ |
H A D | sifive.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR MIT) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: SiFive SoC-based boards 10 - Paul Walmsley <paul.walmsley@sifive.com> 11 - Palmer Dabbelt <palmer@sifive.com> 14 SiFive SoC-based boards 21 - items: 22 - enum: 23 - sifive,hifive-unleashed-a00 [all …]
|
/linux/Documentation/devicetree/bindings/i2c/ |
H A D | opencores,i2c-ocores.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/i2c/opencores,i2c-ocores.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Peter Korsgaard <peter@korsgaard.com> 11 - Andrew Lunn <andrew@lunn.ch> 14 - $ref: /schemas/i2c/i2c-controller.yaml# 19 - items: 20 - enum: 21 - sifive,fu740-c000-i2c # Opencore based IP block FU740-C000 SoC [all …]
|
/linux/drivers/dma/sf-pdma/ |
H A D | sf-pdma.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * SiFive FU540 Platform DMA driver 7 * - drivers/dma/fsl-edma.c 8 * - drivers/dma/dw-edma/ 9 * - drivers/dma/pxa-dma.c 12 * - Chapter 12 "Platform DMA Engine (PDMA)" of 13 * SiFive FU540-C000 v1.0 14 * https://static.dev.sifive.com/FU540-C000-v1.0.pdf 20 #include <linux/dma-direction.h> 23 #include "../virt-dma.h" [all …]
|
/linux/Documentation/devicetree/bindings/sifive/ |
H A D | sifive-blocks-ip-versioning.txt | 1 DT compatible string versioning for SiFive open-source IP blocks 4 strings for open-source SiFive IP blocks. HDL for these IP blocks 7 https://github.com/sifive/sifive-blocks 9 IP block-specific DT compatible strings are contained within the HDL, 10 in the form "sifive,<ip-block-name><integer version number>". 14 https://github.com/sifive/sifive-blocks/blob/v1.0/src/main/scala/devices/uart/UART.scala#L43 17 auto-discovery, the maintainers of these IP blocks intend to increment 25 upstream sifive-blocks commits. It is expected that most drivers will 26 match on these IP block-specific compatible strings. 29 continue to specify an SoC-specific compatible string value, such as [all …]
|
/linux/arch/riscv/boot/dts/microchip/ |
H A D | mpfs.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 2 /* Copyright (c) 2020-2021 Microchip Technology Inc */ 4 /dts-v1/; 5 #include "dt-bindings/clock/microchip,mpfs-clock.h" 8 #address-cells = <2>; 9 #size-cells = <2>; 14 #address-cells = <1>; 15 #size-cells = <0>; 16 timebase-frequency = <1000000>; 21 i-cache-block-size = <64>; [all …]
|
/linux/drivers/cache/ |
H A D | sifive_ccache.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2018-2022 SiFive, Inc. 22 #include <asm/dma-noncoherent.h> 82 return -EINVAL; in ccache_write() 86 return -EINVAL; in ccache_write() 121 { .compatible = "sifive,fu540-c000-ccache" }, 122 { .compatible = "sifive,fu740-c000-ccache" }, 123 { .compatible = "starfive,jh7100-ccache", 198 if (this_leaf->level == level) in ccache_get_priv_group() 254 struct device *dev = &pdev->dev; in sifive_ccache_probe() [all …]
|
/linux/drivers/gpio/ |
H A D | gpio-sifive.c | 1 // SPDX-License-Identifier: GPL-2.0 47 raw_spin_lock_irqsave(&chip->gc.bgpio_lock, flags); in sifive_gpio_set_ie() 48 trigger = (chip->irq_state & BIT(offset)) ? chip->trigger[offset] : 0; in sifive_gpio_set_ie() 49 regmap_update_bits(chip->regs, SIFIVE_GPIO_RISE_IE, BIT(offset), in sifive_gpio_set_ie() 51 regmap_update_bits(chip->regs, SIFIVE_GPIO_FALL_IE, BIT(offset), in sifive_gpio_set_ie() 53 regmap_update_bits(chip->regs, SIFIVE_GPIO_HIGH_IE, BIT(offset), in sifive_gpio_set_ie() 55 regmap_update_bits(chip->regs, SIFIVE_GPIO_LOW_IE, BIT(offset), in sifive_gpio_set_ie() 57 raw_spin_unlock_irqrestore(&chip->gc.bgpio_lock, flags); in sifive_gpio_set_ie() 66 if (offset < 0 || offset >= gc->ngpio) in sifive_gpio_irq_set_type() 67 return -EINVAL; in sifive_gpio_irq_set_type() [all …]
|
/linux/drivers/pwm/ |
H A D | pwm-sifive.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2017-2018 SiFive 5 * Reference Manual : https://static.dev.sifive.com/FU540-C000-v1.0.pdf 8 * - When changing both duty cycle and period, we cannot prevent in 11 * - The hardware cannot generate a 100% duty cycle. 12 * - The hardware generates only inverted output. 64 mutex_lock(&ddata->lock); in pwm_sifive_request() 65 ddata->user_count++; in pwm_sifive_request() 66 mutex_unlock(&ddata->lock); in pwm_sifive_request() 75 mutex_lock(&ddata->lock); in pwm_sifive_free() [all …]
|
/linux/drivers/tty/serial/ |
H A D | sifive.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (C) 2018-2019 SiFive 8 * - drivers/tty/serial/pxa.c 9 * - drivers/tty/serial/amba-pl011.c 10 * - drivers/tty/serial/uartlite.c 11 * - drivers/tty/serial/omap-serial.c 12 * - drivers/pwm/pwm-sifive.c 15 * - Chapter 19 "Universal Asynchronous Receiver/Transmitter (UART)" of 16 * SiFive FE310-G000 v2p3 17 * - The tree/master/src/main/scala/devices/uart directory of [all …]
|
/linux/drivers/net/ethernet/cadence/ |
H A D | macb_main.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2004-2006 Atmel Corporation 10 #include <linux/clk-provider.h> 25 #include <linux/dma-mapping.h> 40 #include <linux/firmware/xlnx-zynqmp.h> 44 /* This structure is only used for MACB on SiFive FU540 devices */ 58 * (bp)->rx_ring_size) 64 * (bp)->tx_ring_size) 67 #define MACB_TX_WAKEUP_THRESH(bp) (3 * (bp)->tx_ring_size / 4) 78 …MAX_TX_LEN ((unsigned int)((1 << MACB_TX_FRMLEN_SIZE) - 1) & ~((unsigned int)(MACB_TX_LEN_ALIGN -… [all …]
|