diff --git a/drivers/mfd/rockchip-flexbus.c b/drivers/mfd/rockchip-flexbus.c index 485c1d6a3d51..4109a7112c9f 100644 --- a/drivers/mfd/rockchip-flexbus.c +++ b/drivers/mfd/rockchip-flexbus.c @@ -21,13 +21,6 @@ #include #include -enum rockchip_flexbus_tx_rx_mode { - FLEXBUS_TX_AND_RX = 0x0, - FLEXBUS_TX_ONLY = 0x1, - FLEXBUS_RX_ONLY = 0x2, - FLEXBUS_TX_THEN_RX = 0x3, -}; - unsigned int rockchip_flexbus_readl(struct rockchip_flexbus *rkfb, unsigned int reg) { return readl_relaxed(rkfb->base + reg); diff --git a/include/linux/mfd/rockchip-flexbus.h b/include/linux/mfd/rockchip-flexbus.h index fb92a63a1440..3af9cb19ef89 100644 --- a/include/linux/mfd/rockchip-flexbus.h +++ b/include/linux/mfd/rockchip-flexbus.h @@ -21,6 +21,9 @@ #define FLEXBUS_TX_NUM 0x044 #define FLEXBUS_TXWAT_START 0x048 #define FLEXBUS_TXFIFO_DNUM 0x04C +#define FLEXBUS_TX_CMD_LEN 0x058 +#define FLEXBUS_TX_CMD0 0x05C +#define FLEXBUS_TX_CMD1 0x060 #define FLEXBUS_RX_CTL 0x080 #define FLEXBUS_RX_NUM 0x084 #define FLEXBUS_RXFIFO_DNUM 0x088 @@ -60,11 +63,20 @@ #define FLEXBUS_RX_FREE_MODE (BIT(16 + 1) | BIT(1)) #define FLEXBUS_TX_FREE_MODE (BIT(16) | BIT(0)) +/* Bit fields in COM_CTL */ +#define FLEXBUS_TX_AND_RX 0x0 +#define FLEXBUS_TX_ONLY 0x1 +#define FLEXBUS_RX_ONLY 0x2 +#define FLEXBUS_TX_THEN_RX 0x3 +#define FLEXBUS_SCLK_SHARE BIT(2) +#define FLEXBUS_TX_USE_RX BIT(3) + /* Bit fields in SLAVE_MODE */ #define FLEXBUS_DVP_SEL BIT(1) #define FLEXBUS_CLK1_IN BIT(0) /* Bit fields in TX_CTL and RX_CTL */ +#define FLEXBUS_MSB BIT(15) #define FLEXBUS_CONTINUE_MODE BIT(4) #define FLEXBUS_CPOL BIT(3) #define FLEXBUS_CPHA BIT(2) @@ -72,6 +84,7 @@ /* Bit fields in RX_CTL */ #define FLEXBUS_AUTOPAD BIT(14) +#define FLEXBUS_RXD_DY BIT(5) /* Bit fields in DMA_WAT_INT */ #define FLEXBUS_SRC_WAT_LVL_MASK 0x3