From 928f6d46717520959c785dc53dbdbfb8f80bcab9 Mon Sep 17 00:00:00 2001 From: Void NV Date: Fri, 1 May 2020 15:32:38 -0500 Subject: [PATCH] AHCI Identify, Added ST_FALSE_TRUE --- ...o => Zenith-latest-2020-05-01-15_31_17.iso | Bin 34289664 -> 34297856 bytes src/Home/ahci.CC | 259 ++++++++++++++++++ src/Kernel/KDefine.CC | 6 +- src/Kernel/KernelA.HH | 25 +- src/Kernel/KernelB.HH | 18 +- 5 files changed, 294 insertions(+), 14 deletions(-) rename Zenith-latest-2020-04-29-17_41_28.iso => Zenith-latest-2020-05-01-15_31_17.iso (99%) create mode 100644 src/Home/ahci.CC diff --git a/Zenith-latest-2020-04-29-17_41_28.iso b/Zenith-latest-2020-05-01-15_31_17.iso similarity index 99% rename from Zenith-latest-2020-04-29-17_41_28.iso rename to Zenith-latest-2020-05-01-15_31_17.iso index aed7cb9aa8cbc70c715a5b187eb77ec6ad61073e..2bb5a6aa11893c85de8c50106ad45422b3dbec53 100644 GIT binary patch delta 162023 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�c5)fZ~P23yd=lsw+`RBB>Ouzlfa}N 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%0A9f1W9b~Kc4>k!NG}sj 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 | port->cmd_issue; + + for (i = 0; i < blkdev.cmd_slot_count; i++) + { + if (!(slots & 1)) + return i; + slots >>= 1; + } + return -1; +} + +Bool AHCIPortIsIdle(CAHCIPort *port) +{//Check if the command engine is running on port. + return !(port->command & (AHCI_PxCMDF_ST | AHCI_PxCMDF_CR | AHCI_PxCMDF_FR | AHCI_PxCMDF_FRE)); +} + +U0 AHCIPortCmdStop(CAHCIPort *port) +{//Stop command engine on port. + Btr(&port->command, AHCI_PxCMDf_ST); + Btr(&port->command, AHCI_PxCMDf_FRE); +// while (port->command & (AHCI_PxCMDF_CR | AHCI_PxCMDF_FR)); + while (Bt(&port->command, AHCI_PxCMDf_CR) || Bt(&port->command, AHCI_PxCMDf_FR)); +} + +U0 AHCIPortCmdStart(CAHCIPort *port) +{//Start command engine on port. + while (Bt(&port->command, AHCI_PxCMDf_CR)); + Bts(&port->command, AHCI_PxCMDf_FRE); + Bts(&port->command, AHCI_PxCMDf_ST); +} + +Bool AHCIPortWait(CAHCIPort *port, F64 timeout) +{//Wait until DRQ & BSY are clear in port task file. + do + { + if (!(port->task_file_data & (ATAS_DRQ | ATAS_BSY))) + return TRUE; + } + while (timeout > tS); + return FALSE; +} + +U0 AHCIPortReset(CAHCIPort *port) +{//Software reset of port. Port command engine must be started after this. + //If port is not responsive we do a full reset. + AHCIPortCmdStop(port); + port->interrupt_status = port->interrupt_status; //Acknowledge all interrupt statuses. + + if (!AHCIPortWait(port, tS + 1)) + {//Perform 'more intrusive' HBA<->Port comm reset (sec. 10.4.2 of spec). + port->sata_ctrl = AHCI_PxSCTLF_DET_INIT; + Sleep(2); //Spec says 1 millisecond + port->sata_ctrl = 0; + } + while (port->sata_status & 0xF != AHCI_PxSSTSF_DET_PRESENT); + port->sata_error = ~0; //Write all 1s to sata error register. +} + +U0 AHCIPortIdentify(CBlkDev *bd) +{ + CHBACmdHeader *cmd_header; + CHBACmdTable *cmd_table; + CFisH2D *cmd_fis; + U16 *dev_id_record; + CAHCIPort *port = bd->ahci_port; + I64 *slot = AHCIPortCmdSlotGet(port); + + if (slot < 0) + { + ZenithErr("No empty command slots."); + throw('AHCI'); + } + + //Sticking with code heap for this alloc because we don't want to deal with 64 bit buffer address shit. + dev_id_record = CAlloc(512, Fs->code_heap); + + port->interrupt_status = port->interrupt_status; //Ackowledge all interrupt statuses???? is this needed? + + cmd_header = *&port->cmd_list_base(I64 *); //Read full 64-bit cmd_list_base value. + cmd_header += slot; //Move up pointer to the slot we have in the command list. + + //Setting Command FIS Length, bits 4:0, takes size in U32s. + cmd_header->desc = (cmd_header->desc & ~0x1F) + sizeof(CFisH2D) / sizeof(U32); + Btr(&cmd_header->desc, AHCI_CH_DESCf_W); //Disable 'write' bit. + + cmd_table = *&cmd_header->cmd_table_base(I64 *); //Read full 64-bit cmd_table_base value. + MemSet(cmd_table, 0, sizeof(CHBACmdTable)); + cmd_table->prdt[0].data_base = dev_id_record; + cmd_table->prdt[0].data_base_upper = 0; + cmd_table->prdt[0].data_byte_count = 512 - 1; + cmd_header->prdt_len = 1; //1 PRD, descrived above, which contains the address to put the ID record. + + cmd_fis = &cmd_table->command_fis; + MemSet(cmd_fis, 0, sizeof(CFisH2D)); + cmd_fis->type = FISt_H2D; + cmd_fis->command = ATA_IDENTIFY; + cmd_fis->device = 0; //No bits need to be set in the device register. + Bts(&cmd_fis->desc, AHCI_CF_DESCf_C); //Set cmd_fis->c to 1 (Command bit). + + if (!AHCIPortWait(port, tS + 2)) + { + ZenithErr("AHCI: Port %d hung!\n", bd->port_num); + throw('AHCI'); + } + + Bts(&port->cmd_issue, slot); + + while (TRUE) + { + if (!Bt(&port->cmd_issue, slot)) + break; + + if (Bt(&port->interrupt_status, AHCI_PxIf_TFE)) //tfe = task file error + { +oof: + ZenithErr("AHCI: Port %d: Identify command failed!\n", bd->port_num); + throw('AHCI'); + } + } + + if (Bt(&port->interrupt_status, AHCI_PxIf_TFE)) //Second safety check + goto oof; + + bd->max_blk = AHCILBA48CapacityGet(dev_id_record); + "%X\n", bd->max_blk; + Free(bd->dev_id_record); + bd->dev_id_record = dev_id_record; +} + +U0 AHCIPortInit(CBlkDev *bd, CAHCIPort *port, I64 port_num) +{ + CHBACmdHeader *cmd_header; + I64 i, addr = 0; + + bd->ahci_port = port; + bd->port_num = port_num; + + AHCIPortReset(port); + AHCIPortCmdStart(port); + + //Spin up, power on device. If the capability isn't suppport the bits will be read-only and this won't do anything. + port->command |= AHCI_PxCMDF_POD | AHCI_PxCMDF_SUD; + Sleep(100);//Why? + AHCIPortCmdStop(port); + + if (blkdev.ahci64) + { + //'1K-byte' align as per SATA spec. + addr = CAllocAligned(sizeof(CHBACmdHeader) * blkdev.cmd_slot_count, 1024); + port->cmd_list_base = addr.u32[0]; + port->cmd_list_base_upper = addr.u32[1]; + + //Alloc where received FISes will be copied to. '256-byte' align as per spec. + addr = CAllocAligned(sizeof(CFisReceived), 256); + port->fis_base = addr.u32[0]; + port->fis_base_upper = addr.u32[1]; + } + else + {//Code Heap is always under 4 GB in address space, so we can use that instead. + port->cmd_list_base = CAllocAligned(sizeof(CHBACmdHeader) * blkdev.cmd_slot_count, 1024, Fs->code_heap); + port->cmd_list_base_upper = 0; + + port->fis_base = CAllocAligned(sizeof(CFisReceived), 256, Fs->code_heap); + port->fis_base_upper = 0; + } + + for (i = 0; i < blkdev.cmd_slot_count; i++) + { + cmd_header = &port->cmd_list_base(CHBACmdHeader *)[i]; + cmd_header->prdt_len = 8; //TODO: reason + + if (blkdev.ahci64) + { + //'128-byte' align as per SATA spec, minus 1 since length is 1-based. + addr = CAllocAligned(sizeof(CHBACmdTable) + sizeof(CPrdtEntry) * (cmd_header->prdt_len - 1), 128); + cmd_header->cmd_table_base = addr.u32[0]; + cmd_header->cmd_table_base_upper = addr.u32[1]; + } + else + { + cmd_header->cmd_table_base = CAllocAligned(sizeof(CHBACmdTable) + sizeof(CPrdtEntry) * + (cmd_header->prdt_len - 1), 128, Fs->code_heap); + cmd_header->cmd_table_base_upper = 0; + + } + } + AHCIPortCmdStart(port); + AHCIPortIdentify(bd); +} + +U0 AHCIInit() +{ + CAHCIHba *hba; + CAHCIPort *port; + I64 i, bdf = PCIClassFind(PCIC_STORAGE << 16 | PCISC_AHCI << 8 + 1, 0); //0x010601, last byte prog_if, AHCI version 1.0 + + if (bdf == -1) + { + "No AHCI controller found.\n"; + return; + } + + hba = dev.uncached_alias + PCIReadU32(bdf.u8[2], bdf.u8[1], bdf.u8[0], PCIR_BASE5) & ~0x1F; //Last 4 bits not part of addr. + + Bts(&hba->ghc, AHCI_GHCf_HBA_RESET); + while (Bt(&hba->ghc, AHCI_GHCf_HBA_RESET)); + + Bts(&hba->ghc, AHCI_GHCf_AHCI_ENABLE); + + //Transferring ownership from BIOS if supported. + if (Bt(&hba->caps_ext, AHCI_CAPSEXTf_BOH)) + { + Bt(&hba->bohc, AHCI_BOHCf_OOS); + while (Bt(&hba->bohc, AHCI_BOHCf_BOS)); + Sleep(25); + if (Bt(&hba->bohc, AHCI_BOHCf_BB)) //if Bios Busy is still set after 25 mS, wait 2 seconds. + Sleep(2000); + } + + blkdev.ahci64 = Bt(&hba->caps, AHCI_CAPSf_S64A); + blkdev.cmd_slot_count = (hba->caps & 0x1F00) >> 8; + blkdev.ahci_hba = hba; +// blkdev.ahci64 = 0; + + "ahci64: %Z\n", blkdev.ahci64, "ST_FALSE_TRUE"; + + for (i = 0; i < AHCI_MAX_PORTS; i++) + { + if (Bt(&hba->ports_implemented, i)) + { + port = &hba->ports[i]; + if (port->signature == AHCI_PxSIG_ATA || port->signature == AHCI_PxSIG_ATAPI) + { + "Port on %d\n", i; + if (port->signature == AHCI_PxSIG_ATAPI) + Bts(&port->command, AHCI_PxCMDf_ATAPI); + + if (!AHCIPortIsIdle(port)) + { + "Port not idle\n"; + AHCIPortCmdStop(port); + } + AHCIPortInit(BlkDevNextFreeSlot('G', BDT_ATA), port, i); //gay + } + } + } +} + +AHCIInit; \ No newline at end of file diff --git a/src/Kernel/KDefine.CC b/src/Kernel/KDefine.CC index 53d5ebfc..cd2f9135 100755 --- a/src/Kernel/KDefine.CC +++ b/src/Kernel/KDefine.CC @@ -98,7 +98,11 @@ U0 SysDefinesLoad() { DefineListLoad("ST_OFF_ON", "Off\0" - "On\0"); + "On"); + + DefineListLoad("ST_FALSE_TRUE", + "False\0" + "True"); DefineListLoad("ST_HTT_TYPES", "ExportSysSym\0" diff --git a/src/Kernel/KernelA.HH b/src/Kernel/KernelA.HH index 461ab7fe..478c18b4 100755 --- a/src/Kernel/KernelA.HH +++ b/src/Kernel/KernelA.HH @@ -2763,6 +2763,16 @@ public class CATARep #define AHCI_PxSIG_SEMB 0xC33C0101 //Enclosure Management Bridge... rare to encounter in wild. #define AHCI_PxSIG_PM 0x96690101 //Port multiplier... not relevant to PC-type systems. +//Interrupt flags (same in PxIE and PxIS) +#define AHCI_PxIf_TFE 30 //Task File Error, see $LK,"ATAS_ERR",A="MN:ATAS_ERR"$. + +//COMRESET flags +//SATA Control register flags +#define AHCI_PxSCTLf_DET_INIT 1 +#define AHCI_PxSCTLF_DET_INIT (1 << AHCI_PxSCTLf_DET_INIT) +//SATA Status register flags +#define AHCI_PxSSTSF_DET_PRESENT 3 + class CAHCIPort {//Port register layout U32 cmd_list_base, @@ -2827,6 +2837,19 @@ class CFisH2D U32 reserved; }; +class CFisReceived +{ + U8 dma_fis[28], + reserved[4], + pio_fis[20], + reserved[12], + r_fis[20], + reserved[4], + devbits_fis[8], + unknown_fis[64], + reserved[96]; +}; + class CPrdtEntry { U32 data_base, @@ -3243,7 +3266,7 @@ public class CBlkDev init_root_dir_blks, max_blk, locked_flags, - port_number; + port_num; U16 *dev_id_record; F64 last_time; }; diff --git a/src/Kernel/KernelB.HH b/src/Kernel/KernelB.HH index 95abe524..2602a427 100755 --- a/src/Kernel/KernelB.HH +++ b/src/Kernel/KernelB.HH @@ -136,8 +136,7 @@ public _extern _D3_DIST_SQR F64 D3DistSqr(CD3 *d1,CD3 *d2); //Distance Squared public _extern _D3_DIV CD3 *D3Div(CD3 *quot,CD3 *d,F64 s); //quot=d/s public _extern _D3_DIV_EQU CD3 *D3DivEqu(CD3 *quot,F64 s); //quot/=s public _extern _D3_DOT F64 D3Dot(CD3 *d1,CD3 *d2); //d1 dot d2 -public _extern _D3_EQU CD3 *D3Equ( - CD3 *dst,F64 x=0,F64 y=0,F64 z=0); //dst=(x,y,z) +public _extern _D3_EQU CD3 *D3Equ(CD3 *dst,F64 x=0,F64 y=0,F64 z=0); //dst=(x,y,z) public _extern _D3_MUL CD3 *D3Mul(CD3 *prod,F64 s,CD3 *d); //prod=s*d public _extern _D3_MUL_EQU CD3 *D3MulEqu(CD3 *prod,F64 s); //prod*=s public _extern _D3_NORM F64 D3Norm(CD3 *d); //Norm @@ -148,16 +147,11 @@ public _extern _D3_UNIT CD3 *D3Unit(CD3 *d); //To unit vect public _extern _D3_ZERO CD3 *D3Zero(CD3 *dst); //To zero #help_index "Memory" -public _extern _MEMCOMPARE I64 MemCompare( - U8 *ptr1,U8 *ptr2,I64 count); //Compare chunk of memory. -public _extern _MEMCOPY U8 *MemCopy( - U8 *dst,U8 *src,I64 count); //Copy chunk of memory. Only goes forward. -public _extern _MEMSET U8 *MemSet( - U8 *dst,I64 val,I64 count); //Set chunk of U8s to value. -public _extern _MEMSET_I64 I64 *MemSetI64( - I64 *dst,I64 val,I64 I64count); //Set chunk of I64s to value. -public _extern _MEMSET_U16 U16 *MemSetU16( - U16 *dst,I64 val,I64 U16count); //Set chunk of U16s to value. +public _extern _MEMCOMPARE I64 MemCompare(U8 *ptr1,U8 *ptr2,I64 count); //Compare chunk of memory. +public _extern _MEMCOPY U8 *MemCopy(U8 *dst,U8 *src,I64 count); //Copy chunk of memory. Only goes forward. +public _extern _MEMSET U8 *MemSet(U8 *dst,I64 val,I64 count); //Set chunk of U8s to value. +public _extern _MEMSET_I64 I64 *MemSetI64(I64 *dst,I64 val,I64 I64count); //Set chunk of I64s to value. +public _extern _MEMSET_U16 U16 *MemSetU16(U16 *dst,I64 val,I64 U16count); //Set chunk of U16s to value. public _extern _MEMSET_U32 U32 *MemSetU32(U32 *dst,I64 val,I64 U32count); //Set chunk of U32s to value. _extern SYS_HEAP_DEBUG_FLAG U8 sys_heap_debug; _extern SYS_HEAP_INIT_FLAG U8 sys_heap_init_flag;