diff options
author | Tejun Heo <htejun@gmail.com> | 2006-02-12 22:47:04 +0900 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2006-02-12 14:24:41 -0500 |
commit | 3d2ca91095f8ab6dc0cb925374eec62fa5336764 (patch) | |
tree | 4320fb9649dfbd389ea07d299288732b767534d7 /include/linux/ata.h | |
parent | 2940740bcaa5948967d261dfceec04f40b2d2fa1 (diff) | |
download | op-kernel-dev-3d2ca91095f8ab6dc0cb925374eec62fa5336764.zip op-kernel-dev-3d2ca91095f8ab6dc0cb925374eec62fa5336764.tar.gz |
[PATCH] libata: separate out ata_id_major_version()
Separate out ATA major version calculation from ata_dev_identify()
into ata_id_major_version(). It's preparation for splitting
ata_dev_identify().
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'include/linux/ata.h')
-rw-r--r-- | include/linux/ata.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h index a8155ca..b02a16c 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h @@ -267,6 +267,16 @@ struct ata_taskfile { ((u64) (id)[(n) + 1] << 16) | \ ((u64) (id)[(n) + 0]) ) +static inline unsigned int ata_id_major_version(const u16 *id) +{ + unsigned int mver; + + for (mver = 14; mver >= 1; mver--) + if (id[ATA_ID_MAJOR_VER] & (1 << mver)) + break; + return mver; +} + static inline int ata_id_current_chs_valid(const u16 *id) { /* For ATA-1 devices, if the INITIALIZE DEVICE PARAMETERS command |