[flashrom] [PATCH 6/8] use getpagesize() to determine physmap's length in nicintel_spi.c

Stefan Tauner stefan.tauner at student.tuwien.ac.at
Sun May 29 06:17:15 CEST 2011


On Thu, 31 Mar 2011 22:31:17 +0200
Stefan Tauner <stefan.tauner at student.tuwien.ac.at> wrote:

> On Thu, 31 Mar 2011 13:03:54 +0200
> Stefan Tauner <stefan.tauner at student.tuwien.ac.at> wrote:
> 
> > On Thu, 31 Mar 2011 08:45:39 +0200
> > Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net> wrote:
> > 
> > > Could you patch physmap instead to round down the requested address
> > > and round up the end of the range? Then we could just request the
> > > amount we need without having to care in each programmer driver
> > > about page size. I think somewhere in flashrom we even have
> > > rounding code for physmap, it just needs to be moved from a driver
> > > to the generic physmap.
> > 
> > oh. steep learning curve there. :)
> > not because the rounding is complicated, but because i am not sure i
> > am aware of all side effects.
> > i guess the existing rounding code you was referring to is that in
> > sb600spi.c?
> > 
> > what i can do/propose for now:
> > change physmap_common as follows:
> > instead of the two check including getpagesize():
> > - round down the physical address requested later from phys_to_virt to
> >   the nearest getpagesize()-aligned address
> > - round up the length requested later accordingly i.e. request a
> >   physical window that is aligned to pages and includes at least the
> >   memory described by phys_addr + len
> > - return virt_addr after adding the offset from rounding down the
> >   physical address
> > - change nicintel_spi.c accordingly
> 
> we also need something similar for physunmap(...).
> would the same rounding be sufficient?
> how should we implement that? a function void getWindow(*addr, *len)
> that sets the addr and len and will be called by physmap and physunmap?
> or is that too complicated?

carldani: ping!
i have started to mimic what the mei kernel driver does and i think i
cant continue due to unaligned memory mappings. so it would be a good
moment to push for what you have suggested. even if that is not the
problem i currently face, i would like to work on this sometimes so
please comment my proposal above.
-- 
Kind regards/Mit freundlichen Grüßen, Stefan Tauner




More information about the flashrom mailing list