Message ID | 1331777784-8528-7-git-send-email-sjg@chromium.org |
---|---|
State | Deferred, archived |
Headers | show |
On 03/14/2012 09:16 PM, Simon Glass wrote: > These are available on other architectures, so add them on ppc. > > Signed-off-by: Simon Glass <sjg@chromium.org> > --- > > arch/powerpc/include/asm/io.h | 8 ++++++++ > 1 files changed, 8 insertions(+), 0 deletions(-) > > diff --git a/arch/powerpc/include/asm/io.h b/arch/powerpc/include/asm/io.h > index 56ac9fe..d246fd8 100644 > --- a/arch/powerpc/include/asm/io.h > +++ b/arch/powerpc/include/asm/io.h > @@ -318,4 +318,12 @@ static inline phys_addr_t virt_to_phys(void * vaddr) > #endif > } > > +/* > + * TODO: The kernel offers some more advanced versions of barriers, it might > + * have some advantages to use them instead of the simple one here. > + */ > +#define dmb() __asm__ __volatile__ ("" : : : "memory") > +#define __iormb() dmb() > +#define __iowmb() dmb() What are the semantics of these (they are not the standard Linux barriers), and how is a simple compiler barrier adequate? -Scott
diff --git a/arch/powerpc/include/asm/io.h b/arch/powerpc/include/asm/io.h index 56ac9fe..d246fd8 100644 --- a/arch/powerpc/include/asm/io.h +++ b/arch/powerpc/include/asm/io.h @@ -318,4 +318,12 @@ static inline phys_addr_t virt_to_phys(void * vaddr) #endif } +/* + * TODO: The kernel offers some more advanced versions of barriers, it might + * have some advantages to use them instead of the simple one here. + */ +#define dmb() __asm__ __volatile__ ("" : : : "memory") +#define __iormb() dmb() +#define __iowmb() dmb() + #endif
These are available on other architectures, so add them on ppc. Signed-off-by: Simon Glass <sjg@chromium.org> --- arch/powerpc/include/asm/io.h | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-)