mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
riscv: dts: spacemit: Use symbolic PDMA request numbers on K1
The PDMA request numbers (DRQ) are fixed values specific to the SoC from a hardware perspective. The detailed definition can be found in K1 User Manual [1], Chapter 9.4.3 DMA Connectivity & Assignments. Add a DTS header file to define the symbolic names for the DRQs of non-secure DMA peripherals. Convert the K1 SPI3 node to these macros. Link: https://www.spacemit.com/community/document/info?lang=en&nodepath=hardware/key_stone/k1/k1_docs/k1_usermanual/9.Top_System.md [1] Signed-off-by: Guodong Xu <docular.xu@gmail.com> Reviewed-by: Yixun Lan <dlan@kernel.org> Link: https://patch.msgid.link/20260620-b4-k1-pdma-req-macros-v4-1-3cf77d0bd0d6@gmail.com Signed-off-by: Yixun Lan <dlan@kernel.org>
This commit is contained in:
parent
dc59e4fea9
commit
d3cfc81d95
56
arch/riscv/boot/dts/spacemit/k1-pdma.h
Normal file
56
arch/riscv/boot/dts/spacemit/k1-pdma.h
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
|
||||
/*
|
||||
* DMA request number (DRQ) definitions for non-secure peripherals of
|
||||
* the SpacemiT K1 PDMA.
|
||||
*
|
||||
* Copyright (c) 2026 Guodong Xu <docular.xu@gmail.com>
|
||||
*/
|
||||
|
||||
#ifndef _DTS_SPACEMIT_K1_PDMA_H
|
||||
#define _DTS_SPACEMIT_K1_PDMA_H
|
||||
|
||||
#define K1_PDMA_UART0_TX 3
|
||||
#define K1_PDMA_UART0_RX 4
|
||||
#define K1_PDMA_UART2_TX 5
|
||||
#define K1_PDMA_UART2_RX 6
|
||||
#define K1_PDMA_UART3_TX 7
|
||||
#define K1_PDMA_UART3_RX 8
|
||||
#define K1_PDMA_UART4_TX 9
|
||||
#define K1_PDMA_UART4_RX 10
|
||||
#define K1_PDMA_I2C0_TX 11
|
||||
#define K1_PDMA_I2C0_RX 12
|
||||
#define K1_PDMA_I2C1_TX 13
|
||||
#define K1_PDMA_I2C1_RX 14
|
||||
#define K1_PDMA_I2C2_TX 15
|
||||
#define K1_PDMA_I2C2_RX 16
|
||||
#define K1_PDMA_I2C4_TX 17
|
||||
#define K1_PDMA_I2C4_RX 18
|
||||
#define K1_PDMA_SPI3_TX 19
|
||||
#define K1_PDMA_SPI3_RX 20
|
||||
#define K1_PDMA_I2S0_TX 21
|
||||
#define K1_PDMA_I2S0_RX 22
|
||||
#define K1_PDMA_I2S1_TX 23
|
||||
#define K1_PDMA_I2S1_RX 24
|
||||
#define K1_PDMA_UART5_TX 25
|
||||
#define K1_PDMA_UART5_RX 26
|
||||
#define K1_PDMA_UART6_TX 27
|
||||
#define K1_PDMA_UART6_RX 28
|
||||
#define K1_PDMA_UART7_TX 29
|
||||
#define K1_PDMA_UART7_RX 30
|
||||
#define K1_PDMA_UART8_TX 31
|
||||
#define K1_PDMA_UART8_RX 32
|
||||
#define K1_PDMA_UART9_TX 33
|
||||
#define K1_PDMA_UART9_RX 34
|
||||
#define K1_PDMA_I2C5_TX 35
|
||||
#define K1_PDMA_I2C5_RX 36
|
||||
#define K1_PDMA_I2C6_TX 37
|
||||
#define K1_PDMA_I2C6_RX 38
|
||||
#define K1_PDMA_I2C7_TX 39
|
||||
#define K1_PDMA_I2C7_RX 40
|
||||
#define K1_PDMA_I2C8_TX 41
|
||||
#define K1_PDMA_I2C8_RX 42
|
||||
#define K1_PDMA_CAN0_RX 43
|
||||
#define K1_PDMA_QSPI_RX 44
|
||||
#define K1_PDMA_QSPI_TX 45
|
||||
|
||||
#endif /* _DTS_SPACEMIT_K1_PDMA_H */
|
||||
|
|
@ -6,6 +6,8 @@
|
|||
#include <dt-bindings/clock/spacemit,k1-syscon.h>
|
||||
#include <dt-bindings/phy/phy.h>
|
||||
|
||||
#include "k1-pdma.h"
|
||||
|
||||
/dts-v1/;
|
||||
/ {
|
||||
#address-cells = <2>;
|
||||
|
|
@ -1094,7 +1096,7 @@ spi3: spi@d401c000 {
|
|||
clock-names = "core", "bus";
|
||||
resets = <&syscon_apbc RESET_SSP3>;
|
||||
interrupts = <55>;
|
||||
dmas = <&pdma 20>, <&pdma 19>;
|
||||
dmas = <&pdma K1_PDMA_SPI3_RX>, <&pdma K1_PDMA_SPI3_TX>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user