[RFC V2] fbdev/riva:change to use generice function to implement reverse_order()
This change to use swab32(bitrev32()) to implement reverse_order() function, have better performance on some platforms. Signed-off-by: yalin wang --- drivers/video/fbdev/riva/fbdev.c | 7 ++- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/video/fbdev/riva/fbdev.c b/drivers/video/fbdev/riva/fbdev.c index f1ad274..ccf0f82 100644 --- a/drivers/video/fbdev/riva/fbdev.c +++ b/drivers/video/fbdev/riva/fbdev.c @@ -40,6 +40,7 @@ #include #include #include +#include #include #ifdef CONFIG_PMAC_BACKLIGHT #include @@ -453,11 +454,7 @@ static inline unsigned char MISCin(struct riva_par *par) static inline void reverse_order(u32 *l) { - u8 *a = (u8 *)l; - a[0] = bitrev8(a[0]); - a[1] = bitrev8(a[1]); - a[2] = bitrev8(a[2]); - a[3] = bitrev8(a[3]); + *l = swab32(bitrev32(*l)); } /* - * -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[RFC V2] fbdev/riva:change to use generice function to implement reverse_order()
This change to use swab32(bitrev32()) to implement reverse_order() function, have better performance on some platforms. Signed-off-by: yalin wang yalin.wang2...@gmail.com --- drivers/video/fbdev/riva/fbdev.c | 7 ++- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/video/fbdev/riva/fbdev.c b/drivers/video/fbdev/riva/fbdev.c index f1ad274..ccf0f82 100644 --- a/drivers/video/fbdev/riva/fbdev.c +++ b/drivers/video/fbdev/riva/fbdev.c @@ -40,6 +40,7 @@ #include linux/init.h #include linux/pci.h #include linux/backlight.h +#include linux/swab.h #include linux/bitrev.h #ifdef CONFIG_PMAC_BACKLIGHT #include asm/machdep.h @@ -453,11 +454,7 @@ static inline unsigned char MISCin(struct riva_par *par) static inline void reverse_order(u32 *l) { - u8 *a = (u8 *)l; - a[0] = bitrev8(a[0]); - a[1] = bitrev8(a[1]); - a[2] = bitrev8(a[2]); - a[3] = bitrev8(a[3]); + *l = swab32(bitrev32(*l)); } /* - * -- 1.9.1 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/