mtd: core: Fix erase area alignment for non power of 2 erasesize
On Thu, Jan 10, 2019 at 09:32:07AM +0100, Sascha Hauer wrote:
> On Wed, Jan 09, 2019 at 12:28:14PM +0100, Ladislav Michl wrote:
> > Devices as AT45DB161 DataFlash uses non power of two page size (528)
> > while present alignment algorithm relies on erasesize being power
> > of 2.
> > Fix that by introducing helper functions rounding to any multiply.
> > Note that logic is sligthly changed to be consistent as ending
> > address is moved forward to include also last byte meant to be
> > erased while previous implementation moved it backward.
> >
> > Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
> > ---
> >  drivers/mtd/core.c     | 28 ++++++++++++++++++++++------
> >  include/linux/kernel.h |  5 +++++
> >  2 files changed, 27 insertions(+), 6 deletions(-)
>
> Applied, thanks

Hi Sascha,

I was searching for paper bag, but was unable to find anything thick
enouh to cover behind :-/ This version is buggy and I noticed right
now when testing on another board. Corrected version follows, which
is also 192 bytes shorter for my ARM target. It seems next branch
at https://git.pengutronix.de/ is not yet updated, so perhaps my fault
won't affect anyone.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
1 parent 8565d5d commit f9cbf973313de4d727d2b3237a5b40b791142429
@Ladislav Michl Ladislav Michl authored on 12 Jan 2019
Sascha Hauer committed on 15 Jan 2019
Showing 1 changed file
View
drivers/mtd/core.c