summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorKevin Hao <haokexin@gmail.com>2014-07-12 12:08:24 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-07-31 12:52:54 -0700
commit6f1a8fea7d5d68da6cf0a420b925503f2fcbc6c5 (patch)
treef72e1e66a22c30b33e818c1619bf066fde32728d /include/linux
parent0b9f20dad0bc659261f88294192c1f1c7763fc2a (diff)
libata: support the ata host which implements a queue depth less than 32
commit 1871ee134b73fb4cadab75752a7152ed2813c751 upstream. The sata on fsl mpc8315e is broken after the commit 8a4aeec8d2d6 ("libata/ahci: accommodate tag ordered controllers"). The reason is that the ata controller on this SoC only implement a queue depth of 16. When issuing the commands in tag order, all the commands in tag 16 ~ 31 are mapped to tag 0 unconditionally and then causes the sata malfunction. It makes no senses to use a 32 queue in software while the hardware has less queue depth. So consider the queue depth implemented by the hardware when requesting a command tag. Fixes: 8a4aeec8d2d6 ("libata/ahci: accommodate tag ordered controllers") Signed-off-by: Kevin Hao <haokexin@gmail.com> Acked-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux')
0 files changed, 0 insertions, 0 deletions