libata: check for trusted computing in IDENTIFY DEVICE data
authorChristoph Hellwig <hch@lst.de>
Tue, 29 Aug 2017 12:42:06 +0000 (14:42 +0200)
committerTejun Heo <tj@kernel.org>
Tue, 29 Aug 2017 15:33:24 +0000 (08:33 -0700)
commite8f11db956aa09c1618051a7aaf367d6810d8d8c
treeb4d766f6031e5a231cee41d0f33225ce45a7a009
parent35f0b6a779b8b7a98faefd7c1c660b4dac9a5c26
libata: check for trusted computing in IDENTIFY DEVICE data

ATA-8 and later mirrors the TRUSTED COMPUTING SUPPORTED bit in word 48 of
the IDENTIFY DEVICE data.  Check this before issuing a READ LOG PAGE
command to avoid issues with buggy devices.  The only downside is that
we can't support Security Send / Receive for a device with an older
revision due to the conflicting use of this field in earlier
specifications.

tj: The reason we need this is because some devices which don't
    support READ LOG PAGE lock up after getting issued that command.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: David Ahern <dsahern@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
drivers/ata/libata-core.c
include/linux/ata.h