Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Nest
Forks
U-Boot
Commits
8b77ea90
Commit
8b77ea90
authored
May 06, 2019
by
Tom Rini
Browse files
Merge branch 'master' of
git://git.denx.de/u-boot-spi
- Important spi-mem fix
parents
abad176d
60e2bf46
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
19 deletions
+8
-19
drivers/mtd/spi/spi-nor-core.c
drivers/mtd/spi/spi-nor-core.c
+8
-19
No files found.
drivers/mtd/spi/spi-nor-core.c
View file @
8b77ea90
...
@@ -116,7 +116,6 @@ static ssize_t spi_nor_write_data(struct spi_nor *nor, loff_t to, size_t len,
...
@@ -116,7 +116,6 @@ static ssize_t spi_nor_write_data(struct spi_nor *nor, loff_t to, size_t len,
SPI_MEM_OP_ADDR
(
nor
->
addr_width
,
to
,
1
),
SPI_MEM_OP_ADDR
(
nor
->
addr_width
,
to
,
1
),
SPI_MEM_OP_NO_DUMMY
,
SPI_MEM_OP_NO_DUMMY
,
SPI_MEM_OP_DATA_OUT
(
len
,
buf
,
1
));
SPI_MEM_OP_DATA_OUT
(
len
,
buf
,
1
));
size_t
remaining
=
len
;
int
ret
;
int
ret
;
/* get transfer protocols. */
/* get transfer protocols. */
...
@@ -127,22 +126,16 @@ static ssize_t spi_nor_write_data(struct spi_nor *nor, loff_t to, size_t len,
...
@@ -127,22 +126,16 @@ static ssize_t spi_nor_write_data(struct spi_nor *nor, loff_t to, size_t len,
if
(
nor
->
program_opcode
==
SPINOR_OP_AAI_WP
&&
nor
->
sst_write_second
)
if
(
nor
->
program_opcode
==
SPINOR_OP_AAI_WP
&&
nor
->
sst_write_second
)
op
.
addr
.
nbytes
=
0
;
op
.
addr
.
nbytes
=
0
;
while
(
remaining
)
{
ret
=
spi_mem_adjust_op_size
(
nor
->
spi
,
&
op
);
op
.
data
.
nbytes
=
remaining
<
UINT_MAX
?
remaining
:
UINT_MAX
;
if
(
ret
)
ret
=
spi_mem_adjust_op_size
(
nor
->
spi
,
&
op
);
return
ret
;
if
(
ret
)
op
.
data
.
nbytes
=
len
<
op
.
data
.
nbytes
?
len
:
op
.
data
.
nbytes
;
return
ret
;
ret
=
spi_mem_exec_op
(
nor
->
spi
,
&
op
);
if
(
ret
)
return
ret
;
op
.
addr
.
val
+=
op
.
data
.
nbytes
;
ret
=
spi_mem_exec_op
(
nor
->
spi
,
&
op
);
remaining
-=
op
.
data
.
nbytes
;
if
(
ret
)
op
.
data
.
buf
.
out
+=
op
.
data
.
nbytes
;
return
ret
;
}
return
len
;
return
op
.
data
.
nbytes
;
}
}
/*
/*
...
@@ -1101,10 +1094,6 @@ static int spi_nor_write(struct mtd_info *mtd, loff_t to, size_t len,
...
@@ -1101,10 +1094,6 @@ static int spi_nor_write(struct mtd_info *mtd, loff_t to, size_t len,
goto
write_err
;
goto
write_err
;
*
retlen
+=
written
;
*
retlen
+=
written
;
i
+=
written
;
i
+=
written
;
if
(
written
!=
page_remain
)
{
ret
=
-
EIO
;
goto
write_err
;
}
}
}
write_err:
write_err:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment