@@ -13,22 +13,22 @@ LOG_MODULE_REGISTER(spi_litex_litespi);
13
13
#include <zephyr/sys/byteorder.h>
14
14
#include "spi_litex_common.h"
15
15
16
- #define SPIFLASH_CORE_MASTER_PHYCONFIG_LEN_OFFSET 0x0
17
- #define SPIFLASH_CORE_MASTER_PHYCONFIG_WIDTH_OFFSET 0x1
18
- #define SPIFLASH_CORE_MASTER_PHYCONFIG_MASK_OFFSET 0x2
16
+ #define SPIFLASH_MASTER_PHYCONFIG_LEN_OFFSET 0x0
17
+ #define SPIFLASH_MASTER_PHYCONFIG_WIDTH_OFFSET 0x1
18
+ #define SPIFLASH_MASTER_PHYCONFIG_MASK_OFFSET 0x2
19
19
20
- #define SPIFLASH_CORE_MASTER_STATUS_TX_READY_OFFSET 0x0
21
- #define SPIFLASH_CORE_MASTER_STATUS_RX_READY_OFFSET 0x1
20
+ #define SPIFLASH_MASTER_STATUS_TX_READY_OFFSET 0x0
21
+ #define SPIFLASH_MASTER_STATUS_RX_READY_OFFSET 0x1
22
22
23
23
#define SPI_MAX_WORD_SIZE 32
24
24
#define SPI_MAX_CS_SIZE 32
25
25
26
26
struct spi_litex_dev_config {
27
- uint32_t core_master_cs_addr ;
28
- uint32_t core_master_phyconfig_addr ;
29
- uint32_t core_master_rxtx_addr ;
30
- uint32_t core_master_rxtx_size ;
31
- uint32_t core_master_status_addr ;
27
+ uint32_t master_cs_addr ;
28
+ uint32_t master_phyconfig_addr ;
29
+ uint32_t master_rxtx_addr ;
30
+ uint32_t master_rxtx_size ;
31
+ uint32_t master_status_addr ;
32
32
uint32_t phy_clk_divisor_addr ;
33
33
bool phy_clk_divisor_exists ;
34
34
};
@@ -123,12 +123,12 @@ static void spiflash_len_mask_width_write(uint32_t len, uint32_t width, uint32_t
123
123
uint32_t addr )
124
124
{
125
125
uint32_t tmp = len & BIT_MASK (8 );
126
- uint32_t word = tmp << (SPIFLASH_CORE_MASTER_PHYCONFIG_LEN_OFFSET * 8 );
126
+ uint32_t word = tmp << (SPIFLASH_MASTER_PHYCONFIG_LEN_OFFSET * 8 );
127
127
128
128
tmp = width & BIT_MASK (8 );
129
- word |= tmp << (SPIFLASH_CORE_MASTER_PHYCONFIG_WIDTH_OFFSET * 8 );
129
+ word |= tmp << (SPIFLASH_MASTER_PHYCONFIG_WIDTH_OFFSET * 8 );
130
130
tmp = mask & BIT_MASK (8 );
131
- word |= tmp << (SPIFLASH_CORE_MASTER_PHYCONFIG_MASK_OFFSET * 8 );
131
+ word |= tmp << (SPIFLASH_MASTER_PHYCONFIG_MASK_OFFSET * 8 );
132
132
litex_write32 (word , addr );
133
133
}
134
134
@@ -145,22 +145,22 @@ static int spi_litex_xfer(const struct device *dev, const struct spi_config *con
145
145
uint8_t width = BIT (0 ); /* SPI Xfer width*/
146
146
uint8_t mask = BIT (0 ); /* SPI Xfer mask*/
147
147
148
- spiflash_len_mask_width_write (len * 8 , width , mask , dev_config -> core_master_phyconfig_addr );
148
+ spiflash_len_mask_width_write (len * 8 , width , mask , dev_config -> master_phyconfig_addr );
149
149
150
- litex_write32 (BIT (config -> slave ), dev_config -> core_master_cs_addr );
150
+ litex_write32 (BIT (config -> slave ), dev_config -> master_cs_addr );
151
151
152
152
/* Flush RX buffer */
153
- while ((litex_read8 (dev_config -> core_master_status_addr ) &
154
- BIT (SPIFLASH_CORE_MASTER_STATUS_RX_READY_OFFSET ))) {
155
- rxd = litex_read32 (dev_config -> core_master_rxtx_addr );
153
+ while ((litex_read8 (dev_config -> master_status_addr ) &
154
+ BIT (SPIFLASH_MASTER_STATUS_RX_READY_OFFSET ))) {
155
+ rxd = litex_read32 (dev_config -> master_rxtx_addr );
156
156
LOG_DBG ("flushed rxd: 0x%x" , rxd );
157
157
}
158
158
159
159
do {
160
- len = MIN (spi_context_max_continuous_chunk (ctx ), dev_config -> core_master_rxtx_size );
160
+ len = MIN (spi_context_max_continuous_chunk (ctx ), dev_config -> master_rxtx_size );
161
161
if (len != old_len ) {
162
162
spiflash_len_mask_width_write (len * 8 , width , mask ,
163
- dev_config -> core_master_phyconfig_addr );
163
+ dev_config -> master_phyconfig_addr );
164
164
old_len = len ;
165
165
}
166
166
@@ -170,22 +170,22 @@ static int spi_litex_xfer(const struct device *dev, const struct spi_config *con
170
170
txd = 0U ;
171
171
}
172
172
173
- while (!(litex_read8 (dev_config -> core_master_status_addr ) &
174
- BIT (SPIFLASH_CORE_MASTER_STATUS_TX_READY_OFFSET ))) {
173
+ while (!(litex_read8 (dev_config -> master_status_addr ) &
174
+ BIT (SPIFLASH_MASTER_STATUS_TX_READY_OFFSET ))) {
175
175
;
176
176
}
177
177
178
178
LOG_DBG ("txd: 0x%x" , txd );
179
- litex_write32 (txd , dev_config -> core_master_rxtx_addr );
179
+ litex_write32 (txd , dev_config -> master_rxtx_addr );
180
180
181
181
spi_context_update_tx (ctx , data -> dfs , len / data -> dfs );
182
182
183
- while (!(litex_read8 (dev_config -> core_master_status_addr ) &
184
- BIT (SPIFLASH_CORE_MASTER_STATUS_RX_READY_OFFSET ))) {
183
+ while (!(litex_read8 (dev_config -> master_status_addr ) &
184
+ BIT (SPIFLASH_MASTER_STATUS_RX_READY_OFFSET ))) {
185
185
;
186
186
}
187
187
188
- rxd = litex_read32 (dev_config -> core_master_rxtx_addr );
188
+ rxd = litex_read32 (dev_config -> master_rxtx_addr );
189
189
LOG_DBG ("rxd: 0x%x" , rxd );
190
190
191
191
if (spi_context_rx_buf_on (ctx )) {
@@ -196,7 +196,7 @@ static int spi_litex_xfer(const struct device *dev, const struct spi_config *con
196
196
197
197
} while (spi_context_tx_on (ctx ) || spi_context_rx_on (ctx ));
198
198
199
- litex_write32 (0 , dev_config -> core_master_cs_addr );
199
+ litex_write32 (0 , dev_config -> master_cs_addr );
200
200
201
201
spi_context_complete (ctx , dev , 0 );
202
202
@@ -260,11 +260,11 @@ static DEVICE_API(spi, spi_litex_api) = {
260
260
SPI_CONTEXT_INIT_SYNC(spi_litex_data_##n, ctx), \
261
261
}; \
262
262
static struct spi_litex_dev_config spi_litex_cfg_##n = { \
263
- .core_master_cs_addr = DT_INST_REG_ADDR_BY_NAME(n, core_master_cs), \
264
- .core_master_phyconfig_addr = DT_INST_REG_ADDR_BY_NAME(n, core_master_phyconfig), \
265
- .core_master_rxtx_addr = DT_INST_REG_ADDR_BY_NAME(n, core_master_rxtx), \
266
- .core_master_rxtx_size = DT_INST_REG_SIZE_BY_NAME(n, core_master_rxtx), \
267
- .core_master_status_addr = DT_INST_REG_ADDR_BY_NAME(n, core_master_status), \
263
+ .master_cs_addr = DT_INST_REG_ADDR_BY_NAME(n, master_cs), \
264
+ .master_phyconfig_addr = DT_INST_REG_ADDR_BY_NAME(n, master_phyconfig), \
265
+ .master_rxtx_addr = DT_INST_REG_ADDR_BY_NAME(n, master_rxtx), \
266
+ .master_rxtx_size = DT_INST_REG_SIZE_BY_NAME(n, master_rxtx), \
267
+ .master_status_addr = DT_INST_REG_ADDR_BY_NAME(n, master_status), \
268
268
.phy_clk_divisor_exists = DT_INST_REG_HAS_NAME(n, phy_clk_divisor), \
269
269
.phy_clk_divisor_addr = DT_INST_REG_ADDR_BY_NAME_OR(n, phy_clk_divisor, 0) \
270
270
\
0 commit comments