Author: dgorbachev Date: Sun Jan 4 08:27:04 2009 New Revision: 38563
URL: http://svn.reactos.org/svn/reactos?rev=38563&view=rev Log: Silence GCC 4.4.0 warnings.
Modified: trunk/reactos/drivers/storage/ide/uniata/atapi.h trunk/reactos/drivers/storage/ide/uniata/bm_devs.h trunk/reactos/drivers/storage/ide/uniata/bsmaster.h trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp trunk/reactos/drivers/storage/ide/uniata/id_dma.cpp trunk/reactos/drivers/storage/ide/uniata/id_probe.cpp trunk/reactos/drivers/storage/ide/uniata/ntddk_ex.h trunk/reactos/drivers/storage/ide/uniata/warningfixes.diff
Modified: trunk/reactos/drivers/storage/ide/uniata/atapi.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/... ============================================================================== --- trunk/reactos/drivers/storage/ide/uniata/atapi.h [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/atapi.h [iso-8859-1] Sun Jan 4 08:27:04 2009 @@ -1067,8 +1067,8 @@
ULONG AtapiParseArgumentString( - IN PCHAR String, - IN PCHAR KeyWord + IN PCCH String, + IN PCCH KeyWord );
BOOLEAN @@ -1206,15 +1206,15 @@ IN PVOID HwDeviceExtension, IN ULONG chan, IN ULONG dev, - IN PWSTR Name, + IN PCWSTR Name, IN ULONG Default );
extern ULONG AtapiRegCheckParameterValue( IN PVOID HwDeviceExtension, - IN PWSTR PathSuffix, - IN PWSTR Name, + IN PCWSTR PathSuffix, + IN PCWSTR Name, IN ULONG Default );
@@ -1224,7 +1224,7 @@ VOID _cdecl _PrintNtConsole( - PCHAR DebugMessage, + PCCH DebugMessage, ... );
Modified: trunk/reactos/drivers/storage/ide/uniata/bm_devs.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/... ============================================================================== --- trunk/reactos/drivers/storage/ide/uniata/bm_devs.h [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/bm_devs.h [iso-8859-1] Sun Jan 4 08:27:04 2009 @@ -482,7 +482,7 @@ { #idlo, 4, 0x##idlo, #idhi, 4, 0x##idhi, rev, mode, name, flags} #else #define PCI_DEV_HW_SPEC_BM(idhi, idlo, rev, mode, name, flags) \ - { #idlo, 4, 0x##idlo, #idhi, 4, 0x##idhi, rev, mode, NULL, flags} + { (PCHAR) #idlo, 4, 0x##idlo, (PCHAR) #idhi, 4, 0x##idhi, rev, mode, NULL, flags} #endif
#define BMLIST_TERMINATOR (0xffffffffL)
Modified: trunk/reactos/drivers/storage/ide/uniata/bsmaster.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/... ============================================================================== --- trunk/reactos/drivers/storage/ide/uniata/bsmaster.h [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/bsmaster.h [iso-8859-1] Sun Jan 4 08:27:04 2009 @@ -987,7 +987,7 @@ BOOLEAN opt_AtapiDmaRawRead; // default TRUE BOOLEAN opt_AtapiDmaReadWrite; // default TRUE
- PCHAR FullDevName; + PCCH FullDevName;
} HW_DEVICE_EXTENSION, *PHW_DEVICE_EXTENSION;
@@ -1172,9 +1172,9 @@ IN ULONG DeviceNumber, IN ULONG lChannel, // logical channel, // is always 0 except simplex-only controllers - IN CHAR apiomode, - IN CHAR wdmamode, - IN CHAR udmamode + IN SCHAR apiomode, + IN SCHAR wdmamode, + IN SCHAR udmamode );
extern BOOLEAN NTAPI
Modified: trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/... ============================================================================== --- trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp [iso-8859-1] Sun Jan 4 08:27:04 2009 @@ -2861,12 +2861,12 @@ --*/ ULONG AtapiParseArgumentString( - IN PCHAR String, - IN PCHAR KeyWord + IN PCCH String, + IN PCCH KeyWord ) { - PCHAR cptr; - PCHAR kptr; + PCCH cptr; + PCCH kptr; ULONG value; ULONG stringLength = 0; ULONG keyWordLength = 0; @@ -2879,24 +2879,15 @@ return 0; }
- // Calculate the string length and lower case all characters. + // Calculate the string length. cptr = String; - while (*cptr) { - if (*cptr >= 'A' && *cptr <= 'Z') { - *cptr = *cptr + ('a' - 'A'); - } - cptr++; + while (*cptr++) { stringLength++; }
- // Calculate the keyword length and lower case all characters. - cptr = KeyWord; - while (*cptr) { - - if (*cptr >= 'A' && *cptr <= 'Z') { - *cptr = *cptr + ('a' - 'A'); - } - cptr++; + // Calculate the keyword length. + kptr = KeyWord; + while (*kptr++) { keyWordLength++; }
@@ -2922,18 +2913,21 @@ }
kptr = KeyWord; - while (*cptr++ == *kptr++) { - - if (*(cptr - 1) == '\0') { + while ((*cptr == *kptr) || + (*cptr <= 'Z' && *cptr + ('a' - 'A') == *kptr) || + (*cptr >= 'a' && *cptr - ('a' - 'A') == *kptr)) { + cptr++; + kptr++; + + if (*cptr == '\0') { // end of string return 0; } }
- if (*(kptr - 1) == '\0') { + if (*kptr == '\0') {
// May have a match backup and check for blank or equals. - cptr--; while (*cptr == ' ' || *cptr == '\t') { cptr++; } @@ -2969,7 +2963,7 @@ }
value = 0; - if ((*cptr == '0') && (*(cptr + 1) == 'x')) { + if ((*cptr == '0') && ((*(cptr + 1) == 'x') || (*(cptr + 1) == 'X'))) { // Value is in Hex. Skip the "0x" cptr += 2; for (index = 0; *(cptr + index); index++) { @@ -2985,6 +2979,8 @@ } else { if ((*(cptr + index) >= 'a') && (*(cptr + index) <= 'f')) { value = (16 * value) + (*(cptr + index) - 'a' + 10); + } else if ((*(cptr + index) >= 'A') && (*(cptr + index) <= 'F')) { + value = (16 * value) + (*(cptr + index) - 'A' + 10); } else { // Syntax error, return not found. return 0; @@ -8754,10 +8750,10 @@ ULONG AtapiRegCheckDevLunValue( IN PVOID HwDeviceExtension, - IN PWCHAR NamePrefix, + IN PCWCH NamePrefix, IN ULONG chan, IN ULONG dev, - IN PWSTR Name, + IN PCWSTR Name, IN ULONG Default ) { @@ -8824,7 +8820,7 @@ IN PVOID HwDeviceExtension, IN ULONG chan, IN ULONG dev, - IN PWSTR Name, + IN PCWSTR Name, IN ULONG Default ) { @@ -8942,8 +8938,8 @@ ULONG AtapiRegCheckParameterValue( IN PVOID HwDeviceExtension, - IN PWSTR PathSuffix, - IN PWSTR Name, + IN PCWSTR PathSuffix, + IN PCWSTR Name, IN ULONG Default ) { @@ -9110,7 +9106,7 @@ VOID _cdecl _PrintNtConsole( - PCHAR DebugMessage, + PCCH DebugMessage, ... ) {
Modified: trunk/reactos/drivers/storage/ide/uniata/id_dma.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/... ============================================================================== --- trunk/reactos/drivers/storage/ide/uniata/id_dma.cpp [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/id_dma.cpp [iso-8859-1] Sun Jan 4 08:27:04 2009 @@ -281,7 +281,7 @@ if(!dma_count || ((LONG)(dma_base) == -1)) { KdPrint2((PRINT_PREFIX "AtapiDmaSetup: No 1st block\n" )); //AtaReq->dma_base = NULL; - AtaReq->ahci_base64 = (ULONGLONG)NULL; + AtaReq->ahci_base64 = 0; return FALSE; }
@@ -303,7 +303,7 @@ if (i >= max_entries) { KdPrint2((PRINT_PREFIX "too many segments in DMA table\n" )); //AtaReq->dma_base = NULL; - AtaReq->ahci_base64 = (ULONGLONG)NULL; + AtaReq->ahci_base64 = 0; return FALSE; } KdPrint2((PRINT_PREFIX " get Phys(data[n]=%x)\n", data )); @@ -321,7 +321,7 @@ } else if(!dma_count || !dma_base || ((LONG)(dma_base) == -1)) { //AtaReq->dma_base = NULL; - AtaReq->ahci_base64 = (ULONGLONG)NULL; + AtaReq->ahci_base64 = 0; KdPrint2((PRINT_PREFIX "AtapiDmaSetup: No NEXT block\n" )); return FALSE; } @@ -596,7 +596,7 @@ ) { PHW_LU_EXTENSION LunExt = &(deviceExtension->lun[ldev]); - CHAR apiomode; + SCHAR apiomode;
apiomode = (CHAR)AtaPioMode(&(LunExt->IdentifyData));
@@ -754,9 +754,9 @@ IN ULONG DeviceNumber, IN ULONG lChannel, // logical channel, // is always 0 except simplex-only controllers - IN CHAR apiomode, - IN CHAR wdmamode, - IN CHAR udmamode + IN SCHAR apiomode, + IN SCHAR wdmamode, + IN SCHAR udmamode ) { PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; @@ -1046,7 +1046,7 @@ /* set PIO mode timings */ AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode); if((apiomode >= 0) && (ChipType != VIA133)) { - SetPciConfig1(reg-0x08, via_pio[(UCHAR)apiomode]); + SetPciConfig1(reg-0x08, via_pio[apiomode]); } via82c_timing(deviceExtension, dev, ATA_PIO0 + apiomode); AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode); @@ -1067,18 +1067,18 @@ apiomode = 4; for(i=udmamode; i>=0; i--) { if(AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_UDMA0 + i)) { - AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_udmatiming[(UCHAR)udmamode]); + AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_udmatiming[udmamode]); return; } } for(i=wdmamode; i>=0; i--) { if(AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_WDMA0 + i)) { - AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_wdmatiming[(UCHAR)wdmamode]); + AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_wdmatiming[wdmamode]); return; } } if(AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode)) { - AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_piotiming[(UCHAR)apiomode]); + AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_piotiming[apiomode]); return; } return; @@ -1113,7 +1113,7 @@ } if(AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode)) { ChangePciConfig4(0x44 + (dev * 8), a | 0x80000000); - SetPciConfig4(0x40 + (dev * 8), nat_piotiming[(UCHAR)apiomode]); + SetPciConfig4(0x40 + (dev * 8), nat_piotiming[apiomode]); return; } /* Use GENERIC PIO */ @@ -1413,7 +1413,7 @@ // 44 GetPciConfig4(0x44, reg44); reg44 = (reg44 & ~(0xff << bit_offset)) | - (sw_dma_modes[(UCHAR)wdmamode] << bit_offset); + (sw_dma_modes[wdmamode] << bit_offset); SetPciConfig4(0x44, reg44); // 40 GetPciConfig4(0x40, reg40); @@ -1439,7 +1439,7 @@ // 40 GetPciConfig4(0x40, reg40); reg40 = (reg40 & ~(0xff << bit_offset)) | - (sw_pio_modes[(UCHAR)apiomode] << bit_offset); + (sw_pio_modes[apiomode] << bit_offset); SetPciConfig4(0x40, reg40); return; break; } @@ -1488,7 +1488,7 @@ AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode);
SetPciConfig1(mreg, mode | (mask & 0x11)); - SetPciConfig2(ureg - 0x8, sil_pio_modes[i]); + SetPciConfig2(ureg - 0x8, sil_pio_modes[apiomode]); return;
} else { @@ -1527,7 +1527,7 @@ /* set PIO mode timings */ AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode);
- SetPciConfig1(treg, cmd_pio_modes[(UCHAR)apiomode]); + SetPciConfig1(treg, cmd_pio_modes[apiomode]); ChangePciConfig1(Channel ? 0x7b : 0x73, a & ~(!(DeviceNumber & 1) ? 0x35 : 0xca)); return;
@@ -1731,8 +1731,8 @@ AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode); ChangePciConfig1(0x50, a | (1 << (dev + 3)) ); GetPciConfig1(0x54 + offset, reg54); - if(reg54 < chtiming[i]) { - SetPciConfig1(0x54 + offset, chtiming[i]); + if(reg54 < chtiming[apiomode]) { + SetPciConfig1(0x54 + offset, chtiming[apiomode]); } return; }
Modified: trunk/reactos/drivers/storage/ide/uniata/id_probe.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/... ============================================================================== --- trunk/reactos/drivers/storage/ide/uniata/id_probe.cpp [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/id_probe.cpp [iso-8859-1] Sun Jan 4 08:27:04 2009 @@ -503,8 +503,8 @@ /* if(known) { RtlCopyMemory(newBMListPtr, (PVOID)&(BusMasterAdapters[i]), sizeof(BUSMASTER_CONTROLLER_INFORMATION)); } else {*/ - sprintf((PCHAR)vendorStrPtr, "%4.4x", (UINT32)VendorID); - sprintf((PCHAR)deviceStrPtr, "%4.4x", (UINT32)DeviceID); + sprintf((PCHAR)vendorStrPtr, "%4.4lx", VendorID); + sprintf((PCHAR)deviceStrPtr, "%4.4lx", DeviceID);
RtlCopyMemory(&(newBMListPtr->VendorIdStr), (PCHAR)vendorStrPtr, 4); RtlCopyMemory(&(newBMListPtr->DeviceIdStr), (PCHAR)deviceStrPtr, 4);
Modified: trunk/reactos/drivers/storage/ide/uniata/ntddk_ex.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/... ============================================================================== --- trunk/reactos/drivers/storage/ide/uniata/ntddk_ex.h [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/ntddk_ex.h [iso-8859-1] Sun Jan 4 08:27:04 2009 @@ -1,15 +1,11 @@ #ifndef __NTDDK_EX__H__ #define __NTDDK_EX__H__
-#ifndef __REACTOS__ +#ifdef ASSERT #undef ASSERT -#define ASSERT -#else -#undef ASSERT -//#define ASSERT //(x) if (!(x)) {RtlAssert("#x",__FILE__,__LINE__, ""); } -#define ASSERT(x) // FIXME: WTF! -#endif //__REACTOS__ - +#define ASSERT(x) ((void)0) +// #define ASSERT(x) if (!(x)) { RtlAssert("#x",__FILE__,__LINE__, ""); } +#endif
#ifndef FILE_CHARACTERISTIC_PNP_DEVICE // DDK 2003
Modified: trunk/reactos/drivers/storage/ide/uniata/warningfixes.diff URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/... ============================================================================== --- trunk/reactos/drivers/storage/ide/uniata/warningfixes.diff [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/warningfixes.diff [iso-8859-1] Sun Jan 4 08:27:04 2009 @@ -1,8 +1,8 @@ -Index: atapi.h -=================================================================== ---- atapi.h (revision 38425) -+++ atapi.h (working copy) -@@ -138,6 +138,10 @@ +Index: atapi.h +=================================================================== +--- atapi.h (revision 38451) ++++ atapi.h (working copy) +@@ -138,6 +138,10 @@
#else // _DEBUG
@@ -13,41 +13,96 @@ #define PRINT_PREFIX "UniATA: "
//#define KdPrint3(_x_) {if(LOG_ON_RAISED_IRQL_W2K || MajorVersion < 0x05 || KeGetCurrentIrql() <= 2){/*DbgPrint("%x: ", PsGetCurrentThread()) ;*/ DbgPrint _x_ ; if(g_LogToDisplay){ PrintNtConsole _x_ ;} }} -Index: id_ata.cpp -=================================================================== ---- id_ata.cpp (revision 38425) -+++ id_ata.cpp (working copy) -@@ -1864,7 +1864,9 @@ - ULONG slotNumber = deviceExtension->slotNumber; - ULONG SystemIoBusNumber = deviceExtension->SystemIoBusNumber; - ULONG VendorID = deviceExtension->DevID & 0xffff; -+#ifdef _DEBUG - ULONG DeviceID = (deviceExtension->DevID >> 16) & 0xffff; -+#endif - //ULONG RevID = deviceExtension->RevID; - ULONG ChipFlags = deviceExtension->HwFlags & CHIPFLAG_MASK; - UCHAR tmp8; -Index: id_badblock.cpp -=================================================================== ---- id_badblock.cpp (revision 38425) -+++ id_badblock.cpp (working copy) -@@ -159,7 +159,11 @@ - L"UniATA\Parameters\BadBlocks", - QueryTable, 0, 0); - -+#ifdef _DEBUG - KdPrint(( "InitBadBlocks returned: %#x\n", status)); -+#else -+ UNREFERENCED_PARAMETER(status); -+#endif - } else { - - KdPrint(( "InitBadBlocks local\n")); -Index: id_dma.cpp -=================================================================== ---- id_dma.cpp (revision 38425) -+++ id_dma.cpp (working copy) -@@ -219,7 +219,7 @@ +@@ -1063,8 +1067,8 @@ + + ULONG + AtapiParseArgumentString( +- IN PCHAR String, +- IN PCHAR KeyWord ++ IN PCCH String, ++ IN PCCH KeyWord + ); + + BOOLEAN +@@ -1202,15 +1206,15 @@ + IN PVOID HwDeviceExtension, + IN ULONG chan, + IN ULONG dev, +- IN PWSTR Name, ++ IN PCWSTR Name, + IN ULONG Default + ); + + extern ULONG + AtapiRegCheckParameterValue( + IN PVOID HwDeviceExtension, +- IN PWSTR PathSuffix, +- IN PWSTR Name, ++ IN PCWSTR PathSuffix, ++ IN PCWSTR Name, + IN ULONG Default + ); + +@@ -1220,7 +1224,7 @@ + VOID + _cdecl + _PrintNtConsole( +- PCHAR DebugMessage, ++ PCCH DebugMessage, + ... + ); + +Index: id_sata.cpp +=================================================================== +--- id_sata.cpp (revision 38451) ++++ id_sata.cpp (working copy) +@@ -7,7 +7,7 @@ + ) + { + PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; +- ULONG Channel = deviceExtension->Channel + lChannel; ++ //ULONG Channel = deviceExtension->Channel + lChannel; + PHW_CHANNEL chan = &deviceExtension->chan[lChannel]; + SATA_SSTATUS_REG SStatus; + ULONG i; +@@ -126,7 +126,7 @@ + { + PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; + PHW_CHANNEL chan = &deviceExtension->chan[lChannel]; +- ULONG ChipFlags = deviceExtension->HwFlags & CHIPFLAG_MASK; ++ //ULONG ChipFlags = deviceExtension->HwFlags & CHIPFLAG_MASK; + SATA_SSTATUS_REG SStatus; + SATA_SERROR_REG SError; + +Index: ntddk_ex.h +=================================================================== +--- ntddk_ex.h (revision 38451) ++++ ntddk_ex.h (working copy) +@@ -1,15 +1,12 @@ + #ifndef __NTDDK_EX__H__ + #define __NTDDK_EX__H__ + +-#ifndef __REACTOS__ ++#ifdef ASSERT + #undef ASSERT +-#define ASSERT +-#else +-#undef ASSERT +-#define ASSERT //(x) if (!(x)) {RtlAssert("#x",__FILE__,__LINE__, ""); } +-#endif //__REACTOS__ ++#define ASSERT(x) ((void)0) ++// #define ASSERT(x) if (!(x)) { RtlAssert("#x",__FILE__,__LINE__, ""); } ++#endif + +- + #ifndef FILE_CHARACTERISTIC_PNP_DEVICE // DDK 2003 + + #define FILE_CHARACTERISTIC_PNP_DEVICE 0x00000800 +Index: id_dma.cpp +=================================================================== +--- id_dma.cpp (revision 38451) ++++ id_dma.cpp (working copy) +@@ -219,7 +219,7 @@ PHW_CHANNEL chan = &(deviceExtension->chan[lChannel]); PATA_REQ AtaReq = (PATA_REQ)(Srb->SrbExtension); BOOLEAN use_DB_IO = FALSE; @@ -56,34 +111,43 @@ ULONG orig_count = count; ULONG max_entries = (deviceExtension->HwFlags & UNIATA_AHCI) ? ATA_AHCI_DMA_ENTRIES : ATA_DMA_ENTRIES;
-@@ -281,7 +281,7 @@ +@@ -281,7 +281,7 @@ if(!dma_count || ((LONG)(dma_base) == -1)) { KdPrint2((PRINT_PREFIX "AtapiDmaSetup: No 1st block\n" )); //AtaReq->dma_base = NULL; - AtaReq->ahci_base64 = NULL; -+ AtaReq->ahci_base64 = (ULONGLONG)NULL; ++ AtaReq->ahci_base64 = 0; return FALSE; }
-@@ -303,7 +303,7 @@ +@@ -303,7 +303,7 @@ if (i >= max_entries) { KdPrint2((PRINT_PREFIX "too many segments in DMA table\n" )); //AtaReq->dma_base = NULL; - AtaReq->ahci_base64 = NULL; -+ AtaReq->ahci_base64 = (ULONGLONG)NULL; ++ AtaReq->ahci_base64 = 0; return FALSE; } KdPrint2((PRINT_PREFIX " get Phys(data[n]=%x)\n", data )); -@@ -321,7 +321,7 @@ +@@ -321,7 +321,7 @@ } else if(!dma_count || !dma_base || ((LONG)(dma_base) == -1)) { //AtaReq->dma_base = NULL; - AtaReq->ahci_base64 = NULL; -+ AtaReq->ahci_base64 = (ULONGLONG)NULL; ++ AtaReq->ahci_base64 = 0; KdPrint2((PRINT_PREFIX "AtapiDmaSetup: No NEXT block\n" )); return FALSE; } -@@ -612,7 +612,7 @@ +@@ -596,7 +596,7 @@ + ) + { + PHW_LU_EXTENSION LunExt = &(deviceExtension->lun[ldev]); +- CHAR apiomode; ++ SCHAR apiomode; + + apiomode = (CHAR)AtaPioMode(&(LunExt->IdentifyData)); + +@@ -612,7 +612,7 @@ }
if((deviceExtension->HbaCtrlFlags & HBAFLAGS_DMA_DISABLED_LBA48) && @@ -92,7 +156,7 @@ (LunExt->TransferMode > ATA_PIO5) ) { KdPrint2((PRINT_PREFIX "AtapiDmaReinit: FORCE_DOWNRATE on Device %d for LBA48\n", ldev & 1)); -@@ -623,7 +623,7 @@ +@@ -623,7 +623,7 @@ if(AtaReq->Flags & REQ_FLAG_FORCE_DOWNRATE) { KdPrint2((PRINT_PREFIX "AtapiDmaReinit: FORCE_DOWNRATE on Device %d\n", ldev & 1)); @@ -101,74 +165,29 @@ limit_lba48: LunExt->DeviceFlags |= REQ_FLAG_FORCE_DOWNRATE_LBA48; limit_pio: -@@ -1046,7 +1046,7 @@ - /* set PIO mode timings */ - AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode); - if((apiomode >= 0) && (ChipType != VIA133)) { -- SetPciConfig1(reg-0x08, via_pio[apiomode]); -+ SetPciConfig1(reg-0x08, via_pio[(UCHAR)apiomode]); - } - via82c_timing(deviceExtension, dev, ATA_PIO0 + apiomode); - AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode); -@@ -1067,18 +1067,18 @@ - apiomode = 4; - for(i=udmamode; i>=0; i--) { - if(AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_UDMA0 + i)) { -- AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_udmatiming[udmamode]); -+ AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_udmatiming[(UCHAR)udmamode]); - return; - } - } - for(i=wdmamode; i>=0; i--) { - if(AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_WDMA0 + i)) { -- AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_wdmatiming[wdmamode]); -+ AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_wdmatiming[(UCHAR)wdmamode]); - return; - } - } - if(AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode)) { -- AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_piotiming[apiomode]); -+ AtapiWritePortEx4(chan, (ULONG)(&deviceExtension->BaseIoAddressBM_0), mode_reg, cyr_piotiming[(UCHAR)apiomode]); +@@ -754,9 +754,9 @@ + IN ULONG DeviceNumber, + IN ULONG lChannel, // logical channel, + // is always 0 except simplex-only controllers +- IN CHAR apiomode, +- IN CHAR wdmamode, +- IN CHAR udmamode ++ IN SCHAR apiomode, ++ IN SCHAR wdmamode, ++ IN SCHAR udmamode + ) + { + PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; +@@ -1488,7 +1488,7 @@ + AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode); + + SetPciConfig1(mreg, mode | (mask & 0x11)); +- SetPciConfig2(ureg - 0x8, sil_pio_modes[i]); ++ SetPciConfig2(ureg - 0x8, sil_pio_modes[apiomode]); return; - } - return; -@@ -1113,7 +1113,7 @@ - } - if(AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode)) { - ChangePciConfig4(0x44 + (dev * 8), a | 0x80000000); -- SetPciConfig4(0x40 + (dev * 8), nat_piotiming[apiomode]); -+ SetPciConfig4(0x40 + (dev * 8), nat_piotiming[(UCHAR)apiomode]); - return; - } - /* Use GENERIC PIO */ -@@ -1413,7 +1413,7 @@ - // 44 - GetPciConfig4(0x44, reg44); - reg44 = (reg44 & ~(0xff << bit_offset)) | -- (sw_dma_modes[wdmamode] << bit_offset); -+ (sw_dma_modes[(UCHAR)wdmamode] << bit_offset); - SetPciConfig4(0x44, reg44); - // 40 - GetPciConfig4(0x40, reg40); -@@ -1439,7 +1439,7 @@ - // 40 - GetPciConfig4(0x40, reg40); - reg40 = (reg40 & ~(0xff << bit_offset)) | -- (sw_pio_modes[apiomode] << bit_offset); -+ (sw_pio_modes[(UCHAR)apiomode] << bit_offset); - SetPciConfig4(0x40, reg40); - return; - break; } -@@ -1527,7 +1527,7 @@ - /* set PIO mode timings */ - AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode); - -- SetPciConfig1(treg, cmd_pio_modes[apiomode]); -+ SetPciConfig1(treg, cmd_pio_modes[(UCHAR)apiomode]); - ChangePciConfig1(Channel ? 0x7b : 0x73, a & ~(!(DeviceNumber & 1) ? 0x35 : 0xca)); - return; - -@@ -1538,7 +1538,7 @@ + + } else { +@@ -1538,7 +1538,7 @@ /*******/ /* SiS */ /*******/ @@ -177,7 +196,7 @@ static const ULONG sis_modes_new133[] = { 0x28269008, 0x0c266008, 0x04263008, 0x0c0a3008, 0x05093008, 0x22196008, 0x0c0a3008, 0x05093008, 0x050939fc, 0x050936ac, -@@ -1553,9 +1553,9 @@ +@@ -1553,9 +1553,9 @@ { 0x00cb, 0x0067, 0x0044, 0x0033, 0x0031, 0x0044, 0x0033, 0x0031, 0x8b31, 0x8731, 0x8531, 0x8431, 0x8231, 0x8131 };
@@ -189,7 +208,18 @@ ULONG offs;
switch(ChipType) { -@@ -1901,7 +1901,7 @@ +@@ -1731,8 +1731,8 @@ + AtaSetTransferMode(deviceExtension, DeviceNumber, lChannel, LunExt, ATA_PIO0 + apiomode); + ChangePciConfig1(0x50, a | (1 << (dev + 3)) ); + GetPciConfig1(0x54 + offset, reg54); +- if(reg54 < chtiming[i]) { +- SetPciConfig1(0x54 + offset, chtiming[i]); ++ if(reg54 < chtiming[apiomode]) { ++ SetPciConfig1(0x54 + offset, chtiming[apiomode]); + } + return; + } +@@ -1901,7 +1901,7 @@ ULONG ChipType = deviceExtension->HwFlags & CHIPTYPE_MASK; //ULONG ChipFlags = deviceExtension->HwFlags & CHIPFLAG_MASK;
@@ -198,11 +228,27 @@
if(mode == ATA_PIO5) mode = ATA_PIO4; -Index: id_init.cpp -=================================================================== ---- id_init.cpp (revision 38425) -+++ id_init.cpp (working copy) -@@ -52,11 +52,11 @@ +Index: id_badblock.cpp +=================================================================== +--- id_badblock.cpp (revision 38451) ++++ id_badblock.cpp (working copy) +@@ -159,7 +159,11 @@ + L"UniATA\Parameters\BadBlocks", + QueryTable, 0, 0); + ++#ifdef _DEBUG + KdPrint(( "InitBadBlocks returned: %#x\n", status)); ++#else ++ UNREFERENCED_PARAMETER(status); ++#endif + } else { + + KdPrint(( "InitBadBlocks local\n")); +Index: id_init.cpp +=================================================================== +--- id_init.cpp (revision 38451) ++++ id_init.cpp (working copy) +@@ -52,11 +52,11 @@ ) { PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; @@ -218,7 +264,7 @@ ULONG ChipType = deviceExtension->HwFlags & CHIPTYPE_MASK; ULONG ChipFlags= deviceExtension->HwFlags & CHIPFLAG_MASK;
-@@ -216,7 +216,7 @@ +@@ -216,7 +216,7 @@ PCI_DEV_HW_SPEC_BM( 0730, 1039, 0x00, ATA_UDMA5, "SiS 730" , SIS100OLD ),
PCI_DEV_HW_SPEC_BM( 0646, 1039, 0x00, ATA_UDMA6, "SiS 645DX", SIS133NEW ), @@ -227,7 +273,7 @@ /* PCI_DEV_HW_SPEC_BM( 0640, 1039, 0x00, ATA_UDMA4, "SiS 640" , SIS_SOUTH ),*/ PCI_DEV_HW_SPEC_BM( 0635, 1039, 0x00, ATA_UDMA5, "SiS 635" , SIS100NEW ), PCI_DEV_HW_SPEC_BM( 0633, 1039, 0x00, ATA_UDMA5, "SiS 633" , SIS100NEW ), -@@ -419,7 +419,7 @@ +@@ -419,7 +419,7 @@ BaseIoAddressBM = AtapiGetIoRange(HwDeviceExtension, ConfigInfo, pciData, SystemIoBusNumber, 4, 0, deviceExtension->NumberChannels*sizeof(IDE_BUSMASTER_REGISTERS)); for(c=0; c<deviceExtension->NumberChannels; c++) { @@ -236,7 +282,7 @@ ULONG unit10 = (c & 2); chan = &deviceExtension->chan[c];
-@@ -987,7 +987,7 @@ +@@ -987,7 +987,7 @@ IN ULONG slotNumber ) { @@ -245,7 +291,7 @@ PCI_COMMON_CONFIG pciData; ULONG funcNumber; ULONG busDataRead; -@@ -1039,7 +1039,7 @@ +@@ -1039,7 +1039,7 @@ IN ULONG c ) { @@ -254,7 +300,7 @@ PCI_COMMON_CONFIG pciData; ULONG funcNumber; ULONG busDataRead; -@@ -1174,7 +1174,7 @@ +@@ -1174,7 +1174,7 @@ ULONG slotNumber = deviceExtension->slotNumber; ULONG SystemIoBusNumber = deviceExtension->SystemIoBusNumber;
@@ -263,7 +309,7 @@ PHW_CHANNEL chan; ULONG c; // logical channel (for Compatible Mode controllers) UCHAR tmp8; -@@ -1332,7 +1332,9 @@ +@@ -1332,7 +1332,9 @@ ULONG slotNumber = deviceExtension->slotNumber; ULONG SystemIoBusNumber = deviceExtension->SystemIoBusNumber; ULONG VendorID = deviceExtension->DevID & 0xffff; @@ -273,11 +319,158 @@ ULONG RevID = deviceExtension->RevID; // ULONG i; // BUSMASTER_CONTROLLER_INFORMATION* DevTypeInfo; -Index: id_probe.cpp -=================================================================== ---- id_probe.cpp (revision 38425) -+++ id_probe.cpp (working copy) -@@ -76,7 +76,6 @@ +Index: id_ata.cpp +=================================================================== +--- id_ata.cpp (revision 38451) ++++ id_ata.cpp (working copy) +@@ -1864,7 +1864,9 @@ + ULONG slotNumber = deviceExtension->slotNumber; + ULONG SystemIoBusNumber = deviceExtension->SystemIoBusNumber; + ULONG VendorID = deviceExtension->DevID & 0xffff; ++#ifdef _DEBUG + ULONG DeviceID = (deviceExtension->DevID >> 16) & 0xffff; ++#endif + //ULONG RevID = deviceExtension->RevID; + ULONG ChipFlags = deviceExtension->HwFlags & CHIPFLAG_MASK; + UCHAR tmp8; +@@ -2859,12 +2861,12 @@ + --*/ + ULONG + AtapiParseArgumentString( +- IN PCHAR String, +- IN PCHAR KeyWord ++ IN PCCH String, ++ IN PCCH KeyWord + ) + { +- PCHAR cptr; +- PCHAR kptr; ++ PCCH cptr; ++ PCCH kptr; + ULONG value; + ULONG stringLength = 0; + ULONG keyWordLength = 0; +@@ -2877,24 +2879,15 @@ + return 0; + } + +- // Calculate the string length and lower case all characters. ++ // Calculate the string length. + cptr = String; +- while (*cptr) { +- if (*cptr >= 'A' && *cptr <= 'Z') { +- *cptr = *cptr + ('a' - 'A'); +- } +- cptr++; ++ while (*cptr++) { + stringLength++; + } + +- // Calculate the keyword length and lower case all characters. +- cptr = KeyWord; +- while (*cptr) { +- +- if (*cptr >= 'A' && *cptr <= 'Z') { +- *cptr = *cptr + ('a' - 'A'); +- } +- cptr++; ++ // Calculate the keyword length. ++ kptr = KeyWord; ++ while (*kptr++) { + keyWordLength++; + } + +@@ -2920,18 +2913,21 @@ + } + + kptr = KeyWord; +- while (*cptr++ == *kptr++) { ++ while ((*cptr == *kptr) || ++ (*cptr <= 'Z' && *cptr + ('a' - 'A') == *kptr) || ++ (*cptr >= 'a' && *cptr - ('a' - 'A') == *kptr)) { ++ cptr++; ++ kptr++; + +- if (*(cptr - 1) == '\0') { ++ if (*cptr == '\0') { + // end of string + return 0; + } + } + +- if (*(kptr - 1) == '\0') { ++ if (*kptr == '\0') { + + // May have a match backup and check for blank or equals. +- cptr--; + while (*cptr == ' ' || *cptr == '\t') { + cptr++; + } +@@ -2967,7 +2963,7 @@ + } + + value = 0; +- if ((*cptr == '0') && (*(cptr + 1) == 'x')) { ++ if ((*cptr == '0') && ((*(cptr + 1) == 'x') || (*(cptr + 1) == 'X'))) { + // Value is in Hex. Skip the "0x" + cptr += 2; + for (index = 0; *(cptr + index); index++) { +@@ -2983,6 +2979,8 @@ + } else { + if ((*(cptr + index) >= 'a') && (*(cptr + index) <= 'f')) { + value = (16 * value) + (*(cptr + index) - 'a' + 10); ++ } else if ((*(cptr + index) >= 'A') && (*(cptr + index) <= 'F')) { ++ value = (16 * value) + (*(cptr + index) - 'A' + 10); + } else { + // Syntax error, return not found. + return 0; +@@ -8752,10 +8750,10 @@ + ULONG + AtapiRegCheckDevLunValue( + IN PVOID HwDeviceExtension, +- IN PWCHAR NamePrefix, ++ IN PCWCH NamePrefix, + IN ULONG chan, + IN ULONG dev, +- IN PWSTR Name, ++ IN PCWSTR Name, + IN ULONG Default + ) + { +@@ -8822,7 +8820,7 @@ + IN PVOID HwDeviceExtension, + IN ULONG chan, + IN ULONG dev, +- IN PWSTR Name, ++ IN PCWSTR Name, + IN ULONG Default + ) + { +@@ -8940,8 +8938,8 @@ + ULONG + AtapiRegCheckParameterValue( + IN PVOID HwDeviceExtension, +- IN PWSTR PathSuffix, +- IN PWSTR Name, ++ IN PCWSTR PathSuffix, ++ IN PCWSTR Name, + IN ULONG Default + ) + { +@@ -9108,7 +9106,7 @@ + VOID + _cdecl + _PrintNtConsole( +- PCHAR DebugMessage, ++ PCCH DebugMessage, + ... + ) + { +Index: id_probe.cpp +=================================================================== +--- id_probe.cpp (revision 38451) ++++ id_probe.cpp (working copy) +@@ -76,7 +76,6 @@ VOID AtapiDoNothing(VOID) { @@ -285,18 +478,18 @@ return; } // end AtapiDoNothing()
-@@ -504,8 +503,8 @@ +@@ -504,8 +503,8 @@ /* if(known) { RtlCopyMemory(newBMListPtr, (PVOID)&(BusMasterAdapters[i]), sizeof(BUSMASTER_CONTROLLER_INFORMATION)); } else {*/ - sprintf((PCHAR)vendorStrPtr, "%4.4x", VendorID); - sprintf((PCHAR)deviceStrPtr, "%4.4x", DeviceID); -+ sprintf((PCHAR)vendorStrPtr, "%4.4x", (UINT32)VendorID); -+ sprintf((PCHAR)deviceStrPtr, "%4.4x", (UINT32)DeviceID); ++ sprintf((PCHAR)vendorStrPtr, "%4.4lx", VendorID); ++ sprintf((PCHAR)deviceStrPtr, "%4.4lx", DeviceID);
RtlCopyMemory(&(newBMListPtr->VendorIdStr), (PCHAR)vendorStrPtr, 4); RtlCopyMemory(&(newBMListPtr->DeviceIdStr), (PCHAR)deviceStrPtr, 4); -@@ -874,7 +873,11 @@ +@@ -874,7 +873,11 @@ BOOLEAN found = FALSE; BOOLEAN MasterDev; BOOLEAN simplexOnly = FALSE; @@ -308,7 +501,7 @@ BOOLEAN AltInit = FALSE;
SCSI_PHYSICAL_ADDRESS IoBasePort1; -@@ -1712,7 +1715,7 @@ +@@ -1712,7 +1715,7 @@ ) { PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; @@ -317,7 +510,7 @@ // this buffer must be global for UNIATA_CORE build PCI_COMMON_CONFIG pciData;
-@@ -1743,8 +1746,8 @@ +@@ -1743,8 +1746,8 @@ BOOLEAN found = FALSE; BOOLEAN MasterDev; BOOLEAN simplexOnly = FALSE; @@ -328,7 +521,7 @@
PIDE_BUSMASTER_REGISTERS BaseIoAddressBM_0 = NULL;
-@@ -1797,7 +1800,7 @@ +@@ -1797,7 +1800,7 @@ &pciData, PCI_COMMON_HDR_LENGTH);
@@ -337,7 +530,7 @@ KdPrint2((PRINT_PREFIX "busDataRead < PCI_COMMON_HDR_LENGTH => SP_RETURN_ERROR\n")); goto exit_error; } -@@ -2207,7 +2210,7 @@ +@@ -2207,7 +2210,7 @@ PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; PHW_CHANNEL chan; PULONG adapterCount = (PULONG)Context; @@ -346,7 +539,7 @@ ULONG i; ULONG irq=0; ULONG portBase; -@@ -2217,7 +2220,7 @@ +@@ -2217,7 +2220,7 @@ BOOLEAN preConfig = FALSE; // PIDE_REGISTERS_1 BaseIoAddress1; @@ -355,39 +548,42 @@
// The following table specifies the ports to be checked when searching for // an IDE controller. A zero entry terminates the search. -Index: id_sata.cpp -=================================================================== ---- id_sata.cpp (revision 38425) -+++ id_sata.cpp (working copy) -@@ -7,7 +7,7 @@ - ) - { - PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; -- ULONG Channel = deviceExtension->Channel + lChannel; -+ //ULONG Channel = deviceExtension->Channel + lChannel; - PHW_CHANNEL chan = &deviceExtension->chan[lChannel]; - SATA_SSTATUS_REG SStatus; - ULONG i; -@@ -126,7 +126,7 @@ - { - PHW_DEVICE_EXTENSION deviceExtension = (PHW_DEVICE_EXTENSION)HwDeviceExtension; - PHW_CHANNEL chan = &deviceExtension->chan[lChannel]; -- ULONG ChipFlags = deviceExtension->HwFlags & CHIPFLAG_MASK; -+ //ULONG ChipFlags = deviceExtension->HwFlags & CHIPFLAG_MASK; - SATA_SSTATUS_REG SStatus; - SATA_SERROR_REG SError; - -Index: ntddk_ex.h -=================================================================== ---- ntddk_ex.h (revision 38425) -+++ ntddk_ex.h (working copy) -@@ -6,7 +6,8 @@ - #define ASSERT +Index: bm_devs.h +=================================================================== +--- bm_devs.h (revision 38451) ++++ bm_devs.h (working copy) +@@ -482,7 +482,7 @@ + { #idlo, 4, 0x##idlo, #idhi, 4, 0x##idhi, rev, mode, name, flags} #else - #undef ASSERT --#define ASSERT //(x) if (!(x)) {RtlAssert("#x",__FILE__,__LINE__, ""); } -+//#define ASSERT //(x) if (!(x)) {RtlAssert("#x",__FILE__,__LINE__, ""); } -+#define ASSERT(x) // FIXME: WTF! - #endif //__REACTOS__ - - + #define PCI_DEV_HW_SPEC_BM(idhi, idlo, rev, mode, name, flags) \ +- { #idlo, 4, 0x##idlo, #idhi, 4, 0x##idhi, rev, mode, NULL, flags} ++ { (PCHAR) #idlo, 4, 0x##idlo, (PCHAR) #idhi, 4, 0x##idhi, rev, mode, NULL, flags} + #endif + + #define BMLIST_TERMINATOR (0xffffffffL) +Index: bsmaster.h +=================================================================== +--- bsmaster.h (revision 38451) ++++ bsmaster.h (working copy) +@@ -987,7 +987,7 @@ + BOOLEAN opt_AtapiDmaRawRead; // default TRUE + BOOLEAN opt_AtapiDmaReadWrite; // default TRUE + +- PCHAR FullDevName; ++ PCCH FullDevName; + + } HW_DEVICE_EXTENSION, *PHW_DEVICE_EXTENSION; + +@@ -1172,9 +1172,9 @@ + IN ULONG DeviceNumber, + IN ULONG lChannel, // logical channel, + // is always 0 except simplex-only controllers +- IN CHAR apiomode, +- IN CHAR wdmamode, +- IN CHAR udmamode ++ IN SCHAR apiomode, ++ IN SCHAR wdmamode, ++ IN SCHAR udmamode + ); + + extern BOOLEAN NTAPI