Use symbolic constants in more places.

merge-requests/1/head
Jan Hauffa 2011-03-13 15:15:47 +01:00 zatwierdzone przez m. allan noah
rodzic 3c87b646b5
commit b43f0688db
2 zmienionych plików z 25 dodań i 25 usunięć

Wyświetl plik

@ -223,7 +223,7 @@ static STATUS
Mustek_DMARead (PAsic chip, unsigned int size, SANE_Byte * lpData) Mustek_DMARead (PAsic chip, unsigned int size, SANE_Byte * lpData)
{ {
STATUS status; STATUS status;
size_t read_size, cur_read_size; size_t cur_read_size;
DBG (DBG_ASIC, "Mustek_DMARead: Enter. size=%d\n", size); DBG (DBG_ASIC, "Mustek_DMARead: Enter. size=%d\n", size);
@ -231,10 +231,9 @@ Mustek_DMARead (PAsic chip, unsigned int size, SANE_Byte * lpData)
if (status != STATUS_GOOD) if (status != STATUS_GOOD)
return status; return status;
read_size = 32 * 1024;
while (size > 0) while (size > 0)
{ {
cur_read_size = (read_size <= size) ? read_size : size; cur_read_size = (size > DMA_BLOCK_SIZE) ? DMA_BLOCK_SIZE : size;
status = SetRWSize (chip, READ_RAM, cur_read_size); status = SetRWSize (chip, READ_RAM, cur_read_size);
if (status != STATUS_GOOD) if (status != STATUS_GOOD)
@ -255,7 +254,7 @@ Mustek_DMARead (PAsic chip, unsigned int size, SANE_Byte * lpData)
lpData += cur_read_size; lpData += cur_read_size;
} }
if (cur_read_size < read_size) if (cur_read_size < DMA_BLOCK_SIZE)
usleep (20000); usleep (20000);
DBG (DBG_ASIC, "Mustek_DMARead: Exit\n"); DBG (DBG_ASIC, "Mustek_DMARead: Exit\n");
@ -266,7 +265,7 @@ static STATUS
Mustek_DMAWrite (PAsic chip, unsigned int size, SANE_Byte * lpData) Mustek_DMAWrite (PAsic chip, unsigned int size, SANE_Byte * lpData)
{ {
STATUS status; STATUS status;
size_t write_size, cur_write_size; size_t cur_write_size;
DBG (DBG_ASIC, "Mustek_DMAWrite: Enter. size=%d\n", size); DBG (DBG_ASIC, "Mustek_DMAWrite: Enter. size=%d\n", size);
@ -274,10 +273,9 @@ Mustek_DMAWrite (PAsic chip, unsigned int size, SANE_Byte * lpData)
if (status != STATUS_GOOD) if (status != STATUS_GOOD)
return status; return status;
write_size = 32 * 1024;
while (size > 0) while (size > 0)
{ {
cur_write_size = (write_size <= size) ? write_size : size; cur_write_size = (size > DMA_BLOCK_SIZE) ? DMA_BLOCK_SIZE : size;
status = SetRWSize (chip, WRITE_RAM, cur_write_size); status = SetRWSize (chip, WRITE_RAM, cur_write_size);
if (status != STATUS_GOOD) if (status != STATUS_GOOD)
@ -1016,8 +1014,8 @@ InitTiming (PAsic chip)
chip->Timing.CCD_PHCP_Timing = 0x0000f000; chip->Timing.CCD_PHCP_Timing = 0x0000f000;
chip->Timing.CCD_PH1_Timing = 0xfff00000; chip->Timing.CCD_PH1_Timing = 0xfff00000;
chip->Timing.wCCDPixelNumber_1200 = 11250; chip->Timing.wCCDPixelNumber_Full = 11250;
chip->Timing.wCCDPixelNumber_600 = 7500; chip->Timing.wCCDPixelNumber_Half = 7500;
DBG (DBG_ASIC, "InitTiming: Exit\n"); DBG (DBG_ASIC, "InitTiming: Exit\n");
} }
@ -1755,7 +1753,7 @@ SetExtraSetting (PAsic chip, unsigned short wXResolution,
DBG (DBG_ASIC, "ChannelR_StartPixel=%d,ChannelR_EndPixel=%d\n", DBG (DBG_ASIC, "ChannelR_StartPixel=%d,ChannelR_EndPixel=%d\n",
chip->Timing.ChannelR_StartPixel, chip->Timing.ChannelR_EndPixel); chip->Timing.ChannelR_StartPixel, chip->Timing.ChannelR_EndPixel);
if (wXResolution == 1200) if (wXResolution == SENSOR_DPI)
Mustek_SendData (chip, ES01_DE_CCD_SETUP_REGISTER, EVEN_ODD_ENABLE_ES01); Mustek_SendData (chip, ES01_DE_CCD_SETUP_REGISTER, EVEN_ODD_ENABLE_ES01);
else else
Mustek_SendData (chip, ES01_DE_CCD_SETUP_REGISTER, 0); Mustek_SendData (chip, ES01_DE_CCD_SETUP_REGISTER, 0);
@ -2188,18 +2186,18 @@ Asic_SetWindow (PAsic chip, SANE_Byte bScanType, SANE_Byte bScanBits,
if (chip->lsLightSource == LS_REFLECTIVE) if (chip->lsLightSource == LS_REFLECTIVE)
{ {
if (wXResolution > (SENSOR_DPI / 2)) if (wXResolution > (SENSOR_DPI / 2))
{ /* full CCD resolution 1200 dpi */ {
wThinkCCDResolution = SENSOR_DPI; wThinkCCDResolution = SENSOR_DPI;
Mustek_SendData (chip, ES01_98_GPIOControl8_15, 0x01); Mustek_SendData (chip, ES01_98_GPIOControl8_15, 0x01);
Mustek_SendData (chip, ES01_96_GPIOValue8_15, 0x01); Mustek_SendData (chip, ES01_96_GPIOValue8_15, 0x01);
wCCD_PixelNumber = chip->Timing.wCCDPixelNumber_1200; wCCD_PixelNumber = chip->Timing.wCCDPixelNumber_Full;
} }
else else
{ /* 600 dpi */ {
wThinkCCDResolution = SENSOR_DPI / 2; wThinkCCDResolution = SENSOR_DPI / 2;
Mustek_SendData (chip, ES01_98_GPIOControl8_15, 0x01); Mustek_SendData (chip, ES01_98_GPIOControl8_15, 0x01);
Mustek_SendData (chip, ES01_96_GPIOValue8_15, 0x00); Mustek_SendData (chip, ES01_96_GPIOValue8_15, 0x00);
wCCD_PixelNumber = chip->Timing.wCCDPixelNumber_600; wCCD_PixelNumber = chip->Timing.wCCDPixelNumber_Half;
} }
} }
else else
@ -2224,7 +2222,7 @@ Asic_SetWindow (PAsic chip, SANE_Byte bScanType, SANE_Byte bScanBits,
} }
SetLineTimeAndExposure (chip); SetLineTimeAndExposure (chip);
if ((bScanType == SCAN_TYPE_NORMAL) || (wYResolution == 600)) if ((bScanType == SCAN_TYPE_NORMAL) || (wYResolution == (SENSOR_DPI / 2)))
Mustek_SendData (chip, ES01_CB_CCDDummyCycleNumber, bDummyCycleNum); Mustek_SendData (chip, ES01_CB_CCDDummyCycleNumber, bDummyCycleNum);
SetLEDTime (chip); SetLEDTime (chip);
@ -2270,7 +2268,7 @@ Asic_SetWindow (PAsic chip, SANE_Byte bScanType, SANE_Byte bScanBits,
SPEED_UNIT_1_PIXEL_TIME | MOTOR_SYNC_UNIT_1_PIXEL_TIME); SPEED_UNIT_1_PIXEL_TIME | MOTOR_SYNC_UNIT_1_PIXEL_TIME);
/* set motor movement type */ /* set motor movement type */
if ((bScanType == SCAN_TYPE_NORMAL) && (wYResolution >= 1200)) if ((bScanType == SCAN_TYPE_NORMAL) && (wYResolution >= SENSOR_DPI))
bMotorMoveType = _8_TABLE_SPACE_FOR_1_DIV_2_STEP; bMotorMoveType = _8_TABLE_SPACE_FOR_1_DIV_2_STEP;
switch (bMotorMoveType) switch (bMotorMoveType)
@ -2368,7 +2366,7 @@ Asic_SetWindow (PAsic chip, SANE_Byte bScanType, SANE_Byte bScanBits,
else else
{ {
/* TODO: this is equivalent to the above, except in TA mode */ /* TODO: this is equivalent to the above, except in TA mode */
if (wXResolution > 600) if (wXResolution > (SENSOR_DPI / 2))
StartSpeed = EndSpeed; StartSpeed = EndSpeed;
else else
StartSpeed = EndSpeed + 3500; StartSpeed = EndSpeed + 3500;
@ -2435,10 +2433,10 @@ Asic_SetWindow (PAsic chip, SANE_Byte bScanType, SANE_Byte bScanBits,
>> TABLE_OFFSET_BASE) << TABLE_OFFSET_BASE); >> TABLE_OFFSET_BASE) << TABLE_OFFSET_BASE);
dwEndAddr = dwShadingTableAddr - 1; dwEndAddr = dwShadingTableAddr - 1;
if (wXResolution > 600) if (wXResolution > (SENSOR_DPI / 2))
dbXRatioAdderDouble = 1200 / wXResolution; dbXRatioAdderDouble = SENSOR_DPI / wXResolution;
else else
dbXRatioAdderDouble = 600 / wXResolution; dbXRatioAdderDouble = (SENSOR_DPI / 2) / wXResolution;
RamAccess.ReadWrite = WRITE_RAM; RamAccess.ReadWrite = WRITE_RAM;
RamAccess.IsOnChipGamma = EXTERNAL_RAM; RamAccess.IsOnChipGamma = EXTERNAL_RAM;
@ -2878,10 +2876,10 @@ Asic_SetShadingTable (PAsic chip, unsigned short * lpWhiteShading,
return STATUS_INVAL; return STATUS_INVAL;
} }
if (wXResolution > 600) if (wXResolution > (SENSOR_DPI / 2))
dbXRatioAdderDouble = 1200 / wXResolution; dbXRatioAdderDouble = SENSOR_DPI / wXResolution;
else else
dbXRatioAdderDouble = 600 / wXResolution; dbXRatioAdderDouble = (SENSOR_DPI / 2) / wXResolution;
wValidPixelNumber = (unsigned short) ((wWidth + 4) * dbXRatioAdderDouble); wValidPixelNumber = (unsigned short) ((wWidth + 4) * dbXRatioAdderDouble);
DBG (DBG_ASIC, "wValidPixelNumber = %d\n", wValidPixelNumber); DBG (DBG_ASIC, "wValidPixelNumber = %d\n", wValidPixelNumber);

Wyświetl plik

@ -115,8 +115,8 @@ typedef struct
unsigned int CCD_PH1_Timing; unsigned int CCD_PH1_Timing;
unsigned int CCD_PH2_Timing; unsigned int CCD_PH2_Timing;
unsigned short wCCDPixelNumber_1200; unsigned short wCCDPixelNumber_Full;
unsigned short wCCDPixelNumber_600; unsigned short wCCDPixelNumber_Half;
} Timings; } Timings;
typedef struct typedef struct
@ -177,6 +177,8 @@ typedef enum
#define DBG_DBG 10 /* useful only for tracing bugs */ #define DBG_DBG 10 /* useful only for tracing bugs */
#define DMA_BLOCK_SIZE (32 * 1024)
#define DRAM_TEST_SIZE 64 #define DRAM_TEST_SIZE 64
#define DRAM_1Mx16_SIZE (1024*1024) /* unit: word */ #define DRAM_1Mx16_SIZE (1024*1024) /* unit: word */
#define PackAreaStartAddress ((DRAM_1Mx16_SIZE/4)*3) #define PackAreaStartAddress ((DRAM_1Mx16_SIZE/4)*3)