summaryrefslogtreecommitdiffstats
path: root/vidix
diff options
context:
space:
mode:
authorfaust3 <faust3@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-09-03 10:27:22 +0000
committerfaust3 <faust3@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-09-03 10:27:22 +0000
commitf3952d762c7dcfcba4c8f4e7818d62ee81020b9b (patch)
tree2b00988b5a093482092695f93ba63995b076e348 /vidix
parentdea63be70cf6336f9bffa4da7cafba98509410b8 (diff)
downloadmpv-f3952d762c7dcfcba4c8f4e7818d62ee81020b9b.tar.bz2
mpv-f3952d762c7dcfcba4c8f4e7818d62ee81020b9b.tar.xz
initial endianess fixes
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16372 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'vidix')
-rw-r--r--vidix/drivers/nvidia_vid.c20
1 files changed, 4 insertions, 16 deletions
diff --git a/vidix/drivers/nvidia_vid.c b/vidix/drivers/nvidia_vid.c
index 2f2c5d678d..6cb237116e 100644
--- a/vidix/drivers/nvidia_vid.c
+++ b/vidix/drivers/nvidia_vid.c
@@ -193,16 +193,6 @@ int vixProbe(int verbose, int force){
/*
* PCI-Memory IO access macros.
*/
-#define VID_WR08(p,i,val) (((uint8_t *)(p))[(i)]=(val))
-#define VID_RD08(p,i) (((uint8_t *)(p))[(i)])
-
-#define VID_WR32(p,i,val) (((uint32_t *)(p))[(i)/4]=(val))
-#define VID_RD32(p,i) (((uint32_t *)(p))[(i)/4])
-
-#ifndef USE_RMW_CYCLES
-/*
- * Can be used to inhibit READ-MODIFY-WRITE cycles. On by default.
- */
#define MEM_BARRIER() __asm__ __volatile__ ("" : : : "memory")
@@ -212,10 +202,9 @@ int vixProbe(int verbose, int force){
#define VID_RD08(p,i) ({ MEM_BARRIER(); ((uint8_t *)(p))[(i)]; })
#undef VID_WR32
-#define VID_WR32(p,i,val) ({ MEM_BARRIER(); ((uint32_t *)(p))[(i)/4]=(val); })
+#define VID_WR32(p,i,val) ({ MEM_BARRIER(); ((uint32_t *)(p))[(i)/4]=le2me_32(val); })
#undef VID_RD32
-#define VID_RD32(p,i) ({ MEM_BARRIER(); ((uint32_t *)(p))[(i)/4]; })
-#endif /* USE_RMW_CYCLES */
+#define VID_RD32(p,i) ({ MEM_BARRIER(); le2me_32(((uint32_t *)(p))[(i)/4]); })
#define VID_AND32(p,i,val) VID_WR32(p,i,VID_RD32(p,i)&(val))
#define VID_OR32(p,i,val) VID_WR32(p,i,VID_RD32(p,i)|(val))
@@ -288,7 +277,7 @@ static unsigned long rivatv_fbsize_nv03 (struct rivatv_chip *chip){
}
else {
/* SGRAM 128. */
- switch (chip->PFB[0x00000000] & 0x00000003) {
+ switch (VID_RD32(chip->PFB, 0) & 0x00000003) {
case 0:
return 1024 * 1024 * 8;
break;
@@ -482,7 +471,7 @@ static void nv_getscreenproperties(struct rivatv_info *info){
VID_WR08(info->chip.PCIO, 0x03D4,0x28);
bpp = VID_RD08(info->chip.PCIO,0x03D5)&0x3;
if(bpp==3)bpp=4;
- if((bpp == 2) && (info->chip.PVIDEO[0x00000600/4] & 0x00001000) == 0x0)info->depth=15;
+ if((bpp == 2) && (VID_RD32(info->chip.PVIDEO,0x600) & 0x00001000) == 0x0)info->depth=15;
else info->depth = bpp*8;
info->bps=bpp;
/*get screen width*/
@@ -509,7 +498,6 @@ void rivatv_overlay_start (struct rivatv_info *info,int bufno){
uint32_t value;
int x=info->wx, y=info->wy;
int lwidth=info->d_width, lheight=info->d_height;
- int i;
size = info->buffer_size;
base = info->picture_offset;