Lines Matching refs:fis
117 static void sil_read_fis(int dev, int tag, struct sata_fis_d2h *fis) in sil_read_fis() argument
126 src = (u32 *)&prb->fis; in sil_read_fis()
127 dst = (u32 *)fis; in sil_read_fis()
172 struct sata_fis_d2h fis; in sil_cmd_set_feature() local
177 pcmd->prb.fis.fis_type = SATA_FIS_TYPE_REGISTER_H2D; in sil_cmd_set_feature()
178 pcmd->prb.fis.pm_port_c = (1 << 7); in sil_cmd_set_feature()
179 pcmd->prb.fis.command = ATA_CMD_SET_FEATURES; in sil_cmd_set_feature()
180 pcmd->prb.fis.features = SETFEATURES_XFER; in sil_cmd_set_feature()
187 pcmd->prb.fis.sector_count = XFER_UDMA_6; in sil_cmd_set_feature()
189 pcmd->prb.fis.sector_count = XFER_UDMA_5; in sil_cmd_set_feature()
191 pcmd->prb.fis.sector_count = XFER_UDMA_4; in sil_cmd_set_feature()
193 pcmd->prb.fis.sector_count = XFER_UDMA_3; in sil_cmd_set_feature()
197 sil_read_fis(dev, 0, &fis); in sil_cmd_set_feature()
200 sil_sata_dump_fis(&fis); in sil_cmd_set_feature()
211 struct sata_fis_d2h fis; in sil_cmd_identify_device() local
217 pcmd->prb.fis.fis_type = SATA_FIS_TYPE_REGISTER_H2D; in sil_cmd_identify_device()
218 pcmd->prb.fis.pm_port_c = (1 << 7); in sil_cmd_identify_device()
219 pcmd->prb.fis.command = ATA_CMD_ID_ATA; in sil_cmd_identify_device()
226 sil_read_fis(dev, 0, &fis); in sil_cmd_identify_device()
228 sil_sata_dump_fis(&fis); in sil_cmd_identify_device()
240 struct sata_fis_d2h fis; in sil_cmd_soft_reset() local
253 pcmd->prb.fis.fis_type = SATA_FIS_TYPE_REGISTER_H2D; in sil_cmd_soft_reset()
254 pcmd->prb.fis.pm_port_c = 0xf; in sil_cmd_soft_reset()
258 sil_read_fis(dev, 0, &fis); in sil_cmd_soft_reset()
260 sil_sata_dump_fis(&fis); in sil_cmd_soft_reset()
272 struct sata_fis_d2h fis; in sil_sata_rw_cmd() local
279 pcmd->prb.fis.fis_type = SATA_FIS_TYPE_REGISTER_H2D; in sil_sata_rw_cmd()
280 pcmd->prb.fis.pm_port_c = (1 << 7); in sil_sata_rw_cmd()
282 pcmd->prb.fis.command = ATA_CMD_WRITE; in sil_sata_rw_cmd()
285 pcmd->prb.fis.command = ATA_CMD_READ; in sil_sata_rw_cmd()
289 pcmd->prb.fis.device = ATA_LBA; in sil_sata_rw_cmd()
290 pcmd->prb.fis.device |= (block >> 24) & 0xf; in sil_sata_rw_cmd()
291 pcmd->prb.fis.lba_high = (block >> 16) & 0xff; in sil_sata_rw_cmd()
292 pcmd->prb.fis.lba_mid = (block >> 8) & 0xff; in sil_sata_rw_cmd()
293 pcmd->prb.fis.lba_low = block & 0xff; in sil_sata_rw_cmd()
294 pcmd->prb.fis.sector_count = (u8)blkcnt & 0xff; in sil_sata_rw_cmd()
302 sil_read_fis(dev, 0, &fis); in sil_sata_rw_cmd()
305 sil_sata_dump_fis(&fis); in sil_sata_rw_cmd()
317 struct sata_fis_d2h fis; in sil_sata_rw_cmd_ext() local
324 pcmd->prb.fis.fis_type = SATA_FIS_TYPE_REGISTER_H2D; in sil_sata_rw_cmd_ext()
325 pcmd->prb.fis.pm_port_c = (1 << 7); in sil_sata_rw_cmd_ext()
327 pcmd->prb.fis.command = ATA_CMD_WRITE_EXT; in sil_sata_rw_cmd_ext()
330 pcmd->prb.fis.command = ATA_CMD_READ_EXT; in sil_sata_rw_cmd_ext()
334 pcmd->prb.fis.lba_high_exp = (block >> 40) & 0xff; in sil_sata_rw_cmd_ext()
335 pcmd->prb.fis.lba_mid_exp = (block >> 32) & 0xff; in sil_sata_rw_cmd_ext()
336 pcmd->prb.fis.lba_low_exp = (block >> 24) & 0xff; in sil_sata_rw_cmd_ext()
337 pcmd->prb.fis.lba_high = (block >> 16) & 0xff; in sil_sata_rw_cmd_ext()
338 pcmd->prb.fis.lba_mid = (block >> 8) & 0xff; in sil_sata_rw_cmd_ext()
339 pcmd->prb.fis.lba_low = block & 0xff; in sil_sata_rw_cmd_ext()
340 pcmd->prb.fis.device = ATA_LBA; in sil_sata_rw_cmd_ext()
341 pcmd->prb.fis.sector_count_exp = (blkcnt >> 8) & 0xff; in sil_sata_rw_cmd_ext()
342 pcmd->prb.fis.sector_count = blkcnt & 0xff; in sil_sata_rw_cmd_ext()
350 sil_read_fis(dev, 0, &fis); in sil_sata_rw_cmd_ext()
353 sil_sata_dump_fis(&fis); in sil_sata_rw_cmd_ext()
423 pcmd->prb.fis.fis_type = SATA_FIS_TYPE_REGISTER_H2D; in sil_sata_cmd_flush_cache()
424 pcmd->prb.fis.pm_port_c = (1 << 7); in sil_sata_cmd_flush_cache()
425 pcmd->prb.fis.command = ATA_CMD_FLUSH; in sil_sata_cmd_flush_cache()
435 pcmd->prb.fis.fis_type = SATA_FIS_TYPE_REGISTER_H2D; in sil_sata_cmd_flush_cache_ext()
436 pcmd->prb.fis.pm_port_c = (1 << 7); in sil_sata_cmd_flush_cache_ext()
437 pcmd->prb.fis.command = ATA_CMD_FLUSH_EXT; in sil_sata_cmd_flush_cache_ext()