Commit e242e0d0 authored by Damien Le Moal's avatar Damien Le Moal Committed by Wentao Guan
Browse files

ata: pata_serverworks: Do not use the term blacklist

stable inclusion
from stable-v6.6.55
commit 8fcf85196adc390d890a456b50570c435f04ea95
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/IB0MX4

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=8fcf85196adc390d890a456b50570c435f04ea95



--------------------------------

[ Upstream commit 858048568c9e3887d8b19e101ee72f129d65cb15 ]

Let's not use the term blacklist in the function
serverworks_osb4_filter() documentation comment and rather simply refer
to what that function looks at: the list of devices with groken UDMA5.

While at it, also constify the values of the csb_bad_ata100 array.

Of note is that all of this should probably be handled using libata
quirk mechanism but it is unclear if these UDMA5 quirks are specific
to this controller only.

Signed-off-by: default avatarDamien Le Moal <dlemoal@kernel.org>
Reviewed-by: default avatarNiklas Cassel <cassel@kernel.org>
Reviewed-by: default avatarIgor Pylypiv <ipylypiv@google.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
(cherry picked from commit 8fcf85196adc390d890a456b50570c435f04ea95)
Signed-off-by: default avatarWentao Guan <guanwentao@uniontech.com>
parent 0f3acdd4
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -46,10 +46,11 @@
#define SVWKS_CSB5_REVISION_NEW	0x92 /* min PCI_REVISION_ID for UDMA5 (A2.0) */
#define SVWKS_CSB6_REVISION	0xa0 /* min PCI_REVISION_ID for UDMA4 (A1.0) */

/* Seagate Barracuda ATA IV Family drives in UDMA mode 5
 * can overrun their FIFOs when used with the CSB5 */

static const char *csb_bad_ata100[] = {
/*
 * Seagate Barracuda ATA IV Family drives in UDMA mode 5
 * can overrun their FIFOs when used with the CSB5.
 */
static const char * const csb_bad_ata100[] = {
	"ST320011A",
	"ST340016A",
	"ST360021A",
@@ -163,10 +164,11 @@ static unsigned int serverworks_osb4_filter(struct ata_device *adev, unsigned in
 *	@adev: ATA device
 *	@mask: Mask of proposed modes
 *
 *	Check the blacklist and disable UDMA5 if matched
 *	Check the list of devices with broken UDMA5 and
 *	disable UDMA5 if matched.
 */

static unsigned int serverworks_csb_filter(struct ata_device *adev, unsigned int mask)
static unsigned int serverworks_csb_filter(struct ata_device *adev,
					   unsigned int mask)
{
	const char *p;
	char model_num[ATA_ID_PROD_LEN + 1];