Changeset View
Changeset View
Standalone View
Standalone View
head/sys/cam/ata/ata_all.c
Show First 20 Lines • Show All 1,232 Lines • ▼ Show 20 Lines | ata_48bit_cmd(ataio, | ||||
/*sector_count*/ sectors_out); | /*sector_count*/ sectors_out); | ||||
ataio->cmd.flags |= ata_flags; | ataio->cmd.flags |= ata_flags; | ||||
if (auxiliary != 0) { | if (auxiliary != 0) { | ||||
ataio->ata_flags |= ATA_FLAG_AUX; | ataio->ata_flags |= ATA_FLAG_AUX; | ||||
ataio->aux = auxiliary; | ataio->aux = auxiliary; | ||||
} | } | ||||
} | } | ||||
void | |||||
ata_param_fixup(struct ata_params *ident_buf) | |||||
{ | |||||
int16_t *ptr; | |||||
for (ptr = (int16_t *)ident_buf; | |||||
ptr < (int16_t *)ident_buf + sizeof(struct ata_params)/2; ptr++) { | |||||
*ptr = le16toh(*ptr); | |||||
} | |||||
if (strncmp(ident_buf->model, "FX", 2) && | |||||
strncmp(ident_buf->model, "NEC", 3) && | |||||
strncmp(ident_buf->model, "Pioneer", 7) && | |||||
strncmp(ident_buf->model, "SHARP", 5)) { | |||||
ata_bswap(ident_buf->model, sizeof(ident_buf->model)); | |||||
ata_bswap(ident_buf->revision, sizeof(ident_buf->revision)); | |||||
ata_bswap(ident_buf->serial, sizeof(ident_buf->serial)); | |||||
} | |||||
ata_btrim(ident_buf->model, sizeof(ident_buf->model)); | |||||
ata_bpack(ident_buf->model, ident_buf->model, sizeof(ident_buf->model)); | |||||
ata_btrim(ident_buf->revision, sizeof(ident_buf->revision)); | |||||
ata_bpack(ident_buf->revision, ident_buf->revision, sizeof(ident_buf->revision)); | |||||
ata_btrim(ident_buf->serial, sizeof(ident_buf->serial)); | |||||
ata_bpack(ident_buf->serial, ident_buf->serial, sizeof(ident_buf->serial)); | |||||
} |