added 2 changesets to branch 'refs/remotes/axeld-github/trim' old head: afa3eeb15daba77f272aa62a285fa25451c87434 new head: 9982007e56fd9607d4769535c84842db76dbab03 overview: https://github.com/axeld/haiku/compare/afa3eeb...9982007 ---------------------------------------------------------------------------- 0bffa3b: ahci: Fixed braindead variable naming. * Again, thanks Marcus! 9982007: ahci: Minor coding style cleanup. * Renamed some methods to camel case. * Replaced coding error panics with ASSERTs. [ Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> ] ---------------------------------------------------------------------------- 3 files changed, 93 insertions(+), 90 deletions(-) .../kernel/busses/scsi/ahci/ahci_port.cpp | 60 +++++++-------- .../kernel/busses/scsi/ahci/sata_request.cpp | 44 +++++------ .../kernel/busses/scsi/ahci/sata_request.h | 79 ++++++++++---------- ############################################################################ Commit: 0bffa3bb9e453c5833f5f6a420e08bda42980064 Author: Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> Date: Tue Oct 29 21:53:24 2013 UTC ahci: Fixed braindead variable naming. * Again, thanks Marcus! ---------------------------------------------------------------------------- diff --git a/src/add-ons/kernel/busses/scsi/ahci/ahci_port.cpp b/src/add-ons/kernel/busses/scsi/ahci/ahci_port.cpp index 00f17eb..e170d33 100644 --- a/src/add-ons/kernel/busses/scsi/ahci/ahci_port.cpp +++ b/src/add-ons/kernel/busses/scsi/ahci/ahci_port.cpp @@ -830,14 +830,14 @@ AHCIPort::ScsiUnmap(scsi_ccb* request, scsi_unmap_parameter_list* unmapBlocks) for (uint32 i = 0, scsiIndex = 0; scsiIndex < scsiRangeCount; scsiIndex++) { uint64 lba = (uint64)B_BENDIAN_TO_HOST_INT64( unmapBlocks->blocks[scsiIndex].lba); - uint64 bytesLeft = (uint32)B_BENDIAN_TO_HOST_INT32( + uint64 blocksLeft = (uint32)B_BENDIAN_TO_HOST_INT32( unmapBlocks->blocks[scsiIndex].block_count); - while (bytesLeft > 0) { - uint16 blocks = bytesLeft > 65535 ? 65535 : (uint16)bytesLeft; + while (blocksLeft > 0) { + uint16 blocks = blocksLeft > 65535 ? 65535 : (uint16)blocksLeft; lbaRanges[i++] = B_HOST_TO_LENDIAN_INT64( ((uint64)blocks << 48) | lba); lba += blocks; - bytesLeft -= blocks; + blocksLeft -= blocks; } } ############################################################################ Commit: 9982007e56fd9607d4769535c84842db76dbab03 Author: Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> Date: Tue Oct 29 22:29:06 2013 UTC ahci: Minor coding style cleanup. * Renamed some methods to camel case. * Replaced coding error panics with ASSERTs. ---------------------------------------------------------------------------- diff --git a/src/add-ons/kernel/busses/scsi/ahci/ahci_port.cpp b/src/add-ons/kernel/busses/scsi/ahci/ahci_port.cpp index e170d33..652f153 100644 --- a/src/add-ons/kernel/busses/scsi/ahci/ahci_port.cpp +++ b/src/add-ons/kernel/busses/scsi/ahci/ahci_port.cpp @@ -571,13 +571,13 @@ AHCIPort::ScsiInquiry(scsi_ccb* request) } sata_request sreq; - sreq.set_data(&ataData, sizeof(ataData)); - sreq.set_ata_cmd(fIsATAPI + sreq.SetData(&ataData, sizeof(ataData)); + sreq.SetATACommand(fIsATAPI ? ATA_COMMAND_IDENTIFY_PACKET_DEVICE : ATA_COMMAND_IDENTIFY_DEVICE); ExecuteSataRequest(&sreq); - sreq.wait_for_completion(); + sreq.WaitForCompletion(); - if (sreq.completion_status() & ATA_ERR) { + if ((sreq.CompletionStatus() & ATA_ERR) != 0) { TRACE("identify device failed\n"); request->subsys_status = SCSI_REQ_CMP_ERR; gSCSI->finished(request, 1); @@ -585,7 +585,7 @@ AHCIPort::ScsiInquiry(scsi_ccb* request) } /* - uint8* data = (uint8*) &ataData; + uint8* data = (uint8*)&ataData; for (int i = 0; i < 512; i += 8) { TRACE(" %02x %02x %02x %02x %02x %02x %02x %02x\n", data[i], data[i+1], data[i+2], data[i+3], data[i+4], data[i+5], data[i+6], data[i+7]); @@ -681,7 +681,7 @@ AHCIPort::ScsiSynchronizeCache(scsi_ccb* request) return; } - sreq->set_ata_cmd(fUse48BitCommands + sreq->SetATACommand(fUse48BitCommands ? ATA_COMMAND_FLUSH_CACHE_EXT : ATA_COMMAND_FLUSH_CACHE); ExecuteSataRequest(sreq); } @@ -782,7 +782,7 @@ AHCIPort::ScsiReadWrite(scsi_ccb* request, uint64 lba, size_t sectorCount, } if (lba > MAX_SECTOR_LBA_48) panic("achi: ScsiReadWrite position too large for 48-bit LBA\n"); - sreq->set_ata48_cmd( + sreq->SetATA48Command( isWrite ? ATA_COMMAND_WRITE_DMA_EXT : ATA_COMMAND_READ_DMA_EXT, lba, sectorCount); } else { @@ -792,7 +792,7 @@ AHCIPort::ScsiReadWrite(scsi_ccb* request, uint64 lba, size_t sectorCount, } if (lba > MAX_SECTOR_LBA_28) panic("achi: ScsiReadWrite position too large for normal LBA\n"); - sreq->set_ata28_cmd(isWrite + sreq->SetATA28Command(isWrite ? ATA_COMMAND_WRITE_DMA : ATA_COMMAND_READ_DMA, lba, sectorCount); } @@ -842,15 +842,15 @@ AHCIPort::ScsiUnmap(scsi_ccb* request, scsi_unmap_parameter_list* unmapBlocks) } sata_request sreq; - sreq.set_ata48_cmd(ATA_COMMAND_DATA_SET_MANAGEMENT, 0, + sreq.SetATA48Command(ATA_COMMAND_DATA_SET_MANAGEMENT, 0, (lbaRangesSize + 511) / 512); sreq.SetFeature(1); - sreq.set_data(lbaRanges, lbaRangesSize); + sreq.SetData(lbaRanges, lbaRangesSize); ExecuteSataRequest(&sreq); - sreq.wait_for_completion(); + sreq.WaitForCompletion(); - if ((sreq.completion_status() & ATA_ERR) != 0) { + if ((sreq.CompletionStatus() & ATA_ERR) != 0) { TRACE("trim failed (%" B_PRIu32 " ranges)!", lbaRangeCount); request->subsys_status = SCSI_REQ_CMP_ERR; } else @@ -871,13 +871,13 @@ AHCIPort::ExecuteSataRequest(sata_request* request, bool isWrite) int prdEntrys; - if (request->ccb() && request->ccb()->data_length) { + if (request->CCB() && request->CCB()->data_length) { FillPrdTable(fPRDTable, &prdEntrys, PRD_TABLE_ENTRY_COUNT, - request->ccb()->sg_list, request->ccb()->sg_count, - request->ccb()->data_length); - } else if (request->data() && request->size()) { + request->CCB()->sg_list, request->CCB()->sg_count, + request->CCB()->data_length); + } else if (request->Data() && request->Size()) { FillPrdTable(fPRDTable, &prdEntrys, PRD_TABLE_ENTRY_COUNT, - request->data(), request->size()); + request->Data(), request->Size()); } else prdEntrys = 0; @@ -885,14 +885,14 @@ AHCIPort::ExecuteSataRequest(sata_request* request, bool isWrite) fCommandList->prdtl_flags_cfl = 0; fCommandList->cfl = 5; // 20 bytes, length in DWORDS - memcpy((char*)fCommandTable->cfis, request->fis(), 20); + memcpy((char*)fCommandTable->cfis, request->FIS(), 20); - fTestUnitReadyActive = request->is_test_unit_ready(); - if (request->is_atapi()) { + fTestUnitReadyActive = request->IsTestUnitReady(); + if (request->IsATAPI()) { // ATAPI PACKET is a 12 or 16 byte SCSI command memset((char*)fCommandTable->acmd, 0, 32); - memcpy((char*)fCommandTable->acmd, request->ccb()->cdb, - request->ccb()->cdb_length); + memcpy((char*)fCommandTable->acmd, request->CCB()->cdb, + request->CCB()->cdb_length); fCommandList->a = 1; } @@ -905,7 +905,7 @@ AHCIPort::ExecuteSataRequest(sata_request* request, bool isWrite) TRACE("ExecuteAtaRequest port %d: device is busy\n", fIndex); ResetPort(); FinishTransfer(); - request->abort(); + request->Abort(); return; } @@ -949,11 +949,11 @@ AHCIPort::ExecuteSataRequest(sata_request* request, bool isWrite) if (status == B_TIMED_OUT) { TRACE("ExecuteAtaRequest port %d: device timeout\n", fIndex); - request->abort(); + request->Abort(); return; } - request->finish(tfd, bytesTransfered); + request->Finish(tfd, bytesTransfered); } @@ -989,7 +989,7 @@ AHCIPort::ScsiExecuteRequest(scsi_ccb* request) return; } - sreq->set_atapi_cmd(request->data_length); + sreq->SetATAPICommand(request->data_length); // uint8* data = (uint8*) sreq->ccb()->cdb; // for (int i = 0; i < 16; i += 8) { // TRACE(" %02x %02x %02x %02x %02x %02x %02x %02x\n", data[i], data[i+1], data[i+2], data[i+3], data[i+4], data[i+5], data[i+6], data[i+7]); diff --git a/src/add-ons/kernel/busses/scsi/ahci/sata_request.cpp b/src/add-ons/kernel/busses/scsi/ahci/sata_request.cpp index 2fe8b21..9114978 100644 --- a/src/add-ons/kernel/busses/scsi/ahci/sata_request.cpp +++ b/src/add-ons/kernel/busses/scsi/ahci/sata_request.cpp @@ -25,7 +25,7 @@ sata_request::sata_request() } -sata_request::sata_request(scsi_ccb *ccb) +sata_request::sata_request(scsi_ccb* ccb) : fCcb(ccb), fIsATAPI(false), @@ -45,16 +45,16 @@ sata_request::~sata_request() void -sata_request::set_data(void *data, size_t dataSize) +sata_request::SetData(void* data, size_t dataSize) { - if (fCcb) panic("wrong usage"); - fData = data; - fDataSize = dataSize; + ASSERT(fCcb == NULL); + fData = data; + fDataSize = dataSize; } void -sata_request::set_ata_cmd(uint8 command) +sata_request::SetATACommand(uint8 command) { memset(fFis, 0, sizeof(fFis)); fFis[0] = FIS_TYPE_REGISTER_HOST_TO_DEVICE; @@ -65,9 +65,9 @@ sata_request::set_ata_cmd(uint8 command) void -sata_request::set_ata28_cmd(uint8 command, uint32 lba, uint8 sectorCount) +sata_request::SetATA28Command(uint8 command, uint32 lba, uint8 sectorCount) { - set_ata_cmd(command); + SetATACommand(command); fFis[4] = lba & 0xff; fFis[5] = (lba >> 8) & 0xff; fFis[6] = (lba >> 16) & 0xff; @@ -78,9 +78,9 @@ sata_request::set_ata28_cmd(uint8 command, uint32 lba, uint8 sectorCount) void -sata_request::set_ata48_cmd(uint8 command, uint64 lba, uint16 sectorCount) +sata_request::SetATA48Command(uint8 command, uint64 lba, uint16 sectorCount) { - set_ata_cmd(command); + SetATACommand(command); fFis[4] = lba & 0xff; fFis[5] = (lba >> 8) & 0xff; fFis[6] = (lba >> 16) & 0xff; @@ -103,10 +103,10 @@ sata_request::SetFeature(uint16 feature) void -sata_request::set_atapi_cmd(size_t transferLength) +sata_request::SetATAPICommand(size_t transferLength) { fIsATAPI = true; - set_ata_cmd(0xa0); + SetATACommand(0xa0); if (1 /* isPIO */) { if (transferLength == 0) transferLength = 2; @@ -119,13 +119,13 @@ sata_request::set_atapi_cmd(size_t transferLength) void -sata_request::finish(int tfd, size_t bytesTransfered) +sata_request::Finish(int tfd, size_t bytesTransfered) { - if (tfd & (ATA_ERR | ATA_DF)) { + if ((tfd & (ATA_ERR | ATA_DF)) != 0) { uint8 status = tfd & 0xff; uint8 error = (tfd >> 8) & 0xff; - if (!is_test_unit_ready()) { + if (!IsTestUnitReady()) { dprintf("ahci: sata_request::finish ATA command 0x%02x failed\n", fFis[2]); dprintf("ahci: sata_request::finish status 0x%02x, error 0x%02x\n", @@ -140,7 +140,7 @@ sata_request::finish(int tfd, size_t bytesTransfered) if (tfd & (ATA_ERR | ATA_DF)) { fCcb->subsys_status = SCSI_REQ_CMP_ERR; if (fIsATAPI) { - if (!is_test_unit_ready()) { + if (!IsTestUnitReady()) { dprintf("ahci: sata_request::finish ATAPI packet %02x %02x " "%02x %02x %02x %02x %02x %02x %02x %02x %02x %02x " "%02x %02x %02x %02x (len %d)\n", @@ -181,10 +181,10 @@ sata_request::finish(int tfd, size_t bytesTransfered) void -sata_request::abort() +sata_request::Abort() { dprintf("ahci: sata_request::abort called for command 0x%02x\n", fFis[2]); - if (fCcb) { + if (fCcb != NULL) { fCcb->subsys_status = SCSI_REQ_ABORTED; gSCSI->finished(fCcb, 1); delete this; @@ -196,16 +196,16 @@ sata_request::abort() void -sata_request::wait_for_completion() +sata_request::WaitForCompletion() { - if (fCcb) panic("wrong usage"); + ASSERT(fCcb == NULL); acquire_sem(fCompletionSem); } int -sata_request::completion_status() +sata_request::CompletionStatus() { - if (fCcb) panic("wrong usage"); + ASSERT(fCcb == NULL); return fCompletionStatus; } diff --git a/src/add-ons/kernel/busses/scsi/ahci/sata_request.h b/src/add-ons/kernel/busses/scsi/ahci/sata_request.h index 61191be..5686530 100644 --- a/src/add-ons/kernel/busses/scsi/ahci/sata_request.h +++ b/src/add-ons/kernel/busses/scsi/ahci/sata_request.h @@ -5,88 +5,91 @@ #ifndef _SATA_REQUEST_H #define _SATA_REQUEST_H + #include "ahci_defs.h" #include "scsi_cmds.h" -class sata_request -{ + +class sata_request { public: - sata_request(); - sata_request(scsi_ccb *ccb); - ~sata_request(); + sata_request(); + sata_request(scsi_ccb* ccb); + ~sata_request(); - void set_data(void *data, size_t dataSize); + void SetData(void* data, size_t dataSize); - void set_ata_cmd(uint8 command); - void set_ata28_cmd(uint8 command, uint32 lba, uint8 sectorCount); - void set_ata48_cmd(uint8 command, uint64 lba, uint16 sectorCount); - void SetFeature(uint16 feature); + void SetATACommand(uint8 command); + void SetATA28Command(uint8 command, uint32 lba, + uint8 sectorCount); + void SetATA48Command(uint8 command, uint64 lba, + uint16 sectorCount); + void SetFeature(uint16 feature); - void set_atapi_cmd(size_t transferLength); - bool is_atapi(); - bool is_test_unit_ready(); + void SetATAPICommand(size_t transferLength); + bool IsATAPI(); + bool IsTestUnitReady(); - scsi_ccb * ccb(); - const void * fis(); - void * data(); - int size(); - void finish(int tfd, size_t bytesTransfered); - void abort(); + scsi_ccb* CCB(); + const void* FIS(); + void* Data(); + int Size(); + void Finish(int tfd, size_t bytesTransfered); + void Abort(); - void wait_for_completion(); - int completion_status(); + void WaitForCompletion(); + int CompletionStatus(); private: - scsi_ccb * fCcb; - uint8 fFis[20]; - bool fIsATAPI; - sem_id fCompletionSem; - int fCompletionStatus; - void * fData; - size_t fDataSize; + scsi_ccb* fCcb; + uint8 fFis[20]; + bool fIsATAPI; + sem_id fCompletionSem; + int fCompletionStatus; + void* fData; + size_t fDataSize; }; -inline scsi_ccb * -sata_request::ccb() +inline scsi_ccb* +sata_request::CCB() { return fCcb; } -inline const void * -sata_request::fis() +inline const void* +sata_request::FIS() { return fFis; } inline bool -sata_request::is_atapi() +sata_request::IsATAPI() { return fIsATAPI; } inline bool -sata_request::is_test_unit_ready() +sata_request::IsTestUnitReady() { return fIsATAPI && fCcb != NULL && fCcb->cdb[0] == SCSI_OP_TEST_UNIT_READY; } -inline void * -sata_request::data() +inline void* +sata_request::Data() { return fData; } inline int -sata_request::size() +sata_request::Size() { return fDataSize; } -#endif +#endif /* _SATA_REQUEST_H */