Lines Matching full:fis
1103 /* FIS receive area. */
1394 u_int8_t *fis = ch->dma.rfis + 0x58;
1397 if (fis[1] & 0x80) {
1398 fis[1] &= 0x7f;
1401 fis += 256;
1404 u_int8_t *fis = ch->dma.rfis + 0x58;
1406 if (fis[1] & 0x80)
1407 sntf = (1 << (fis[1] & 0x0f));
1671 uint8_t *fis = ch->dma.rfis + 0x40;
1677 /* Setup the FIS for this request */
1679 device_printf(ch->dev, "Setting up SATA FIS failed\n");
1705 /* Prepare FIS receive area for check. */
1707 fis[i] = 0xff;
1773 * sometimes forget to update FIS receive area, breaking
1782 val = fis[2];
1957 u_int8_t *fis = ch->dma.rfis + 0x40;
1962 fis += ccb->ccb_h.target_id * 256;
1963 res->status = fis[2];
1964 res->error = fis[3];
1971 res->lba_low = fis[4];
1972 res->lba_mid = fis[5];
1973 res->lba_high = fis[6];
1974 res->device = fis[7];
1975 res->lba_low_exp = fis[8];
1976 res->lba_mid_exp = fis[9];
1977 res->lba_high_exp = fis[10];
1978 res->sector_count = fis[12];
1979 res->sector_count_exp = fis[13];
1983 * FIS receive area. Read it from PxSIG register.
2318 /* Configure FIS-based switching if supported. */
2380 /* Kill all FIS reception on this channel */
2383 /* Wait for FIS reception stop. */
2399 /* Start FIS reception on this channel */
2548 u_int8_t *fis = &ctp->cfis[0];
2550 bzero(fis, 20);
2551 fis[0] = 0x27; /* host to device */
2552 fis[1] = (ccb->ccb_h.target_id & 0x0f);
2554 fis[1] |= 0x80;
2555 fis[2] = ATA_PACKET_CMD;
2558 fis[3] = ATA_F_DMA;
2560 fis[5] = ccb->csio.dxfer_len;
2561 fis[6] = ccb->csio.dxfer_len >> 8;
2563 fis[7] = ATA_D_LBA;
2564 fis[15] = ATA_A_4BIT;
2570 fis[1] |= 0x80;
2571 fis[2] = ccb->ataio.cmd.command;
2572 fis[3] = ccb->ataio.cmd.features;
2573 fis[4] = ccb->ataio.cmd.lba_low;
2574 fis[5] = ccb->ataio.cmd.lba_mid;
2575 fis[6] = ccb->ataio.cmd.lba_high;
2576 fis[7] = ccb->ataio.cmd.device;
2577 fis[8] = ccb->ataio.cmd.lba_low_exp;
2578 fis[9] = ccb->ataio.cmd.lba_mid_exp;
2579 fis[10] = ccb->ataio.cmd.lba_high_exp;
2580 fis[11] = ccb->ataio.cmd.features_exp;
2581 fis[12] = ccb->ataio.cmd.sector_count;
2583 fis[12] &= 0x07;
2584 fis[12] |= tag << 3;
2586 fis[13] = ccb->ataio.cmd.sector_count_exp;
2588 fis[14] = ccb->ataio.icc;
2589 fis[15] = ATA_A_4BIT;
2591 fis[16] = ccb->ataio.aux & 0xff;
2592 fis[17] = (ccb->ataio.aux >> 8) & 0xff;
2593 fis[18] = (ccb->ataio.aux >> 16) & 0xff;
2594 fis[19] = (ccb->ataio.aux >> 24) & 0xff;
2597 fis[15] = ccb->ataio.cmd.control;