Skip to content

Commit f73dc37

Browse files
juhosgbroonie
authored andcommitted
spi: spi-qpic-snand: remove 'qpic_snand_op' structure
The 'qpic_snand_op' structure is used only in the qcom_spi_send_cmdaddr() function as a type of a local variable. Additionally, the sole purpose of that variable is to keep some interim values before those gets passed as arguments for cpu_to_le32() calls. In order to simplify the code, remove the definition of the structure along with the local variable, and use the corresponding values directly as parameters for cpu_to_le32() calls. No functional changes intended. Signed-off-by: Gabor Juhos <j4g8y7@gmail.com> Link: https://patch.msgid.link/20250529-qpic-snand-remove-qpic_snand_op-v1-1-6e42b772d748@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent 6c1ca99 commit f73dc37

1 file changed

Lines changed: 9 additions & 26 deletions

File tree

drivers/spi/spi-qpic-snand.c

Lines changed: 9 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,6 @@
5959
#define OOB_BUF_SIZE 128
6060
#define ecceng_to_qspi(eng) container_of(eng, struct qpic_spi_nand, ecc_eng)
6161

62-
struct qpic_snand_op {
63-
u32 cmd_reg;
64-
u32 addr1_reg;
65-
u32 addr2_reg;
66-
};
67-
6862
struct snandc_read_status {
6963
__le32 snandc_flash;
7064
__le32 snandc_buffer;
@@ -1294,42 +1288,31 @@ static int qcom_spi_write_page(struct qcom_nand_controller *snandc,
12941288
static int qcom_spi_send_cmdaddr(struct qcom_nand_controller *snandc,
12951289
const struct spi_mem_op *op)
12961290
{
1297-
struct qpic_snand_op s_op = {};
12981291
u32 cmd;
12991292
int ret, opcode;
13001293

13011294
ret = qcom_spi_cmd_mapping(snandc, op->cmd.opcode, &cmd);
13021295
if (ret < 0)
13031296
return ret;
13041297

1305-
s_op.cmd_reg = cmd;
1306-
s_op.addr1_reg = op->addr.val;
1307-
s_op.addr2_reg = 0;
1308-
13091298
opcode = op->cmd.opcode;
13101299

13111300
switch (opcode) {
13121301
case SPINAND_WRITE_EN:
13131302
return 0;
13141303
case SPINAND_PROGRAM_EXECUTE:
1315-
s_op.addr1_reg = op->addr.val << 16;
1316-
s_op.addr2_reg = op->addr.val >> 16 & 0xff;
1317-
snandc->qspi->addr1 = cpu_to_le32(s_op.addr1_reg);
1318-
snandc->qspi->addr2 = cpu_to_le32(s_op.addr2_reg);
1304+
snandc->qspi->addr1 = cpu_to_le32(op->addr.val << 16);
1305+
snandc->qspi->addr2 = cpu_to_le32(op->addr.val >> 16 & 0xff);
13191306
snandc->qspi->cmd = cpu_to_le32(cmd);
13201307
return qcom_spi_program_execute(snandc, op);
13211308
case SPINAND_READ:
1322-
s_op.addr1_reg = (op->addr.val << 16);
1323-
s_op.addr2_reg = op->addr.val >> 16 & 0xff;
1324-
snandc->qspi->addr1 = cpu_to_le32(s_op.addr1_reg);
1325-
snandc->qspi->addr2 = cpu_to_le32(s_op.addr2_reg);
1309+
snandc->qspi->addr1 = cpu_to_le32(op->addr.val << 16);
1310+
snandc->qspi->addr2 = cpu_to_le32(op->addr.val >> 16 & 0xff);
13261311
snandc->qspi->cmd = cpu_to_le32(cmd);
13271312
return 0;
13281313
case SPINAND_ERASE:
1329-
s_op.addr2_reg = (op->addr.val >> 16) & 0xffff;
1330-
s_op.addr1_reg = op->addr.val;
1331-
snandc->qspi->addr1 = cpu_to_le32(s_op.addr1_reg << 16);
1332-
snandc->qspi->addr2 = cpu_to_le32(s_op.addr2_reg);
1314+
snandc->qspi->addr1 = cpu_to_le32(op->addr.val << 16);
1315+
snandc->qspi->addr2 = cpu_to_le32(op->addr.val >> 16 & 0xffff);
13331316
snandc->qspi->cmd = cpu_to_le32(cmd);
13341317
return qcom_spi_block_erase(snandc);
13351318
default:
@@ -1341,10 +1324,10 @@ static int qcom_spi_send_cmdaddr(struct qcom_nand_controller *snandc,
13411324
qcom_clear_read_regs(snandc);
13421325
qcom_clear_bam_transaction(snandc);
13431326

1344-
snandc->regs->cmd = cpu_to_le32(s_op.cmd_reg);
1327+
snandc->regs->cmd = cpu_to_le32(cmd);
13451328
snandc->regs->exec = cpu_to_le32(1);
1346-
snandc->regs->addr0 = cpu_to_le32(s_op.addr1_reg);
1347-
snandc->regs->addr1 = cpu_to_le32(s_op.addr2_reg);
1329+
snandc->regs->addr0 = cpu_to_le32(op->addr.val);
1330+
snandc->regs->addr1 = cpu_to_le32(0);
13481331

13491332
qcom_write_reg_dma(snandc, &snandc->regs->cmd, NAND_FLASH_CMD, 3, NAND_BAM_NEXT_SGL);
13501333
qcom_write_reg_dma(snandc, &snandc->regs->exec, NAND_EXEC_CMD, 1, NAND_BAM_NEXT_SGL);

0 commit comments

Comments
 (0)