Lines Matching refs:fis
141 * @fis: Buffer into which data will output
149 void ata_tf_to_fis(const struct ata_taskfile *tf, u8 pmp, int is_cmd, u8 *fis)
151 fis[0] = 0x27; /* Register - Host to Device FIS */
152 fis[1] = pmp & 0xf; /* Port multiplier number*/
154 fis[1] |= (1 << 7); /* bit 7 indicates Command FIS */
156 fis[2] = tf->command;
157 fis[3] = tf->feature;
159 fis[4] = tf->lbal;
160 fis[5] = tf->lbam;
161 fis[6] = tf->lbah;
162 fis[7] = tf->device;
164 fis[8] = tf->hob_lbal;
165 fis[9] = tf->hob_lbam;
166 fis[10] = tf->hob_lbah;
167 fis[11] = tf->hob_feature;
169 fis[12] = tf->nsect;
170 fis[13] = tf->hob_nsect;
171 fis[14] = 0;
172 fis[15] = tf->ctl;
174 fis[16] = tf->auxiliary & 0xff;
175 fis[17] = (tf->auxiliary >> 8) & 0xff;
176 fis[18] = (tf->auxiliary >> 16) & 0xff;
177 fis[19] = (tf->auxiliary >> 24) & 0xff;
183 * @fis: Buffer from which data will be input
192 void ata_tf_from_fis(const u8 *fis, struct ata_taskfile *tf)
194 tf->command = fis[2]; /* status */
195 tf->feature = fis[3]; /* error */
197 tf->lbal = fis[4];
198 tf->lbam = fis[5];
199 tf->lbah = fis[6];
200 tf->device = fis[7];
202 tf->hob_lbal = fis[8];
203 tf->hob_lbam = fis[9];
204 tf->hob_lbah = fis[10];
206 tf->nsect = fis[12];
207 tf->hob_nsect = fis[13];