#define DRIVER_NAME "kmjpeg"
+
#define AHBADD 0xa0000000
#define RDYADD 0xa0000200
#define APBADD 0x80000c00
if((tmp & 0x80000000) == 0x80000000)break;
for(i=0;i<800;i++);
}
- *hdata = datawrite.pixeldata;
- // for(i=0;i<256;i++){
- // *hdata = data4b.fourbdata[i];
- // for(j=0;j<100000;j++);
- // }
+ // *hdata = datawrite.pixeldata;
+ for(i=0;i<128;i++){
+ *hdata = datawrite.fourbdata[i];
+ }
break;
case IOCTL_REGSET :
#include <linux/ioctl.h>
struct ioctl_cmdwrite{
- unsigned int pixeldata;
- // unsigned int fourbdata[256];
+ // unsigned int pixeldata;
+ unsigned int fourbdata[128];
};
struct ioctl_cmdreg{
unsigned int fb;
#include "kmjpeg.h"
static int call_num = 0;
+static int pixel_num = 0;
}*/
/*LEON-motionJPEG prj for hard IP : yccrgbs*/
pixcoldata =(unsigned int)( y <<16 | cb <<8 | cr);
- writedata.pixeldata = pixcoldata;
- ioctl(cinfo->dev_fd, IOCTL_WRITE, &writedata);
+ writedata.fourbdata[pixel_num] = pixcoldata;
+ pixel_num++;
+ if(pixel_num == 128){
+ ioctl(cinfo->dev_fd, IOCTL_WRITE, &writedata);
+ pixel_num = 0;
+ }
outptr += RGB_PIXELSIZE;
}
}
/*V1 LEON-mjpeg project */
call_num = 0;
+ pixel_num = 0;
}