From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753567AbdLDJUI (ORCPT ); Mon, 4 Dec 2017 04:20:08 -0500 Received: from mail-sn1nam01on0080.outbound.protection.outlook.com ([104.47.32.80]:39084 "EHLO NAM01-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753216AbdLDJUF (ORCPT ); Mon, 4 Dec 2017 04:20:05 -0500 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; From: To: CC: , , Yuantian Tang Subject: [PATCH] ahci: qoriq: refine port register configuration Date: Mon, 4 Dec 2017 17:01:20 +0800 Message-ID: <20171204090120.2142-1-andy.tang@nxp.com> X-Mailer: git-send-email 2.14.1 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131568528029729267;(91ab9b29-cfa4-454e-5278-08d120cd25b8);() X-Forefront-Antispam-Report: CIP:192.88.168.50;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(336005)(376002)(346002)(39860400002)(39380400002)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(48376002)(104016004)(16586007)(50466002)(77096006)(316002)(36756003)(575784001)(86362001)(6916009)(189998001)(51416003)(106466001)(81166006)(8676002)(105606002)(54906003)(2351001)(5660300001)(47776003)(33646002)(305945005)(50226002)(356003)(81156014)(8936002)(6666003)(1076002)(4326008)(68736007)(85426001)(8656006)(2906002)(97736004)(2876002)(86152003)(498600001)(53936002);DIR:OUT;SFP:1101;SCL:1;SRVR:CO2PR03MB2360;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BL2FFO11FD027;1:3OWVTQs7/1VMN15JcHB8fJtkFvTly/7A5WOfCM8GBwwcin0+vqhsQAfBFz2GmdCeOnqvkz3teZYE7GwsLRTorasZwYdKv8ozgxLW+NFDzVr36w1DI0/SwnJYgWHyfAA4 MIME-Version: 1.0 Content-Type: text/plain X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 267dbd48-551d-460e-e092-08d53af83349 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(4534020)(4628075)(201703131517081)(5600026)(4604075)(2017052603286);SRVR:CO2PR03MB2360; X-Microsoft-Exchange-Diagnostics: 1;CO2PR03MB2360;3:GNduO/m6UTcI8W+NYbclaRAKTMZtAH4ZifUr3nV4kM80tL1H7p0wsGgcx6ulTQTXBJIoQNit21OAUx/sKKGY/S7tDn6rpXtIajwSguHttsEdJdGoDwIQdSZ91f9MmVR1p/qCWoV6GVmpURKPiTtrC6qqrk4HiAd+3AoG9Yb0M1oXyBhfkusZVLpl/zGLzHUwoygOSWHLRvdlUHvUNQTmoPJUdcK+HaxeYL2dLAEMWrL/a196xozffTxPhTalGQFKRqJEFU8w1gMM3oC4SanVM/LFRQVEPrExyGmGlPAOz/b6ahjHxjkgtk6qo65Pcjff6HW7ZqjarcpqPHhamEyzy32I810Netg8smkzaMCymnY=;25:aBR3JM4DT/3LHDDQUWpezqZ1DBdWVhmL4NB0YYhr80Dn0Tl1jFPRi9MQqHryjhn6t3GYYImy6hPxzmXOex1IW7eFfAu/kaN7S9xdfg3uluRlQkXYedfU7irFCkR/5OyzhI3ciWh8G8tuzi9ejOfw2fSC+u//OaE+ny+KbqR25UhxFIEqMpWtD3n+gnXAMBkBmjTCtMKTex+l2MZSUkSIif2iyNx4f/wPiJVyAFED1j7PTTPXMeKvtMdv1RdmMCvj+ogjYEiB3vlIHPhG0NrTxnnOrWv4bfdMx4/uy+iheMEuE/7QhGIGQiIwnqQOpdTs04CQO1BL3dYx57VdNbKyvA== X-MS-TrafficTypeDiagnostic: CO2PR03MB2360: X-Microsoft-Exchange-Diagnostics: 1;CO2PR03MB2360;31:+JZoXv0fOi0+RmkwgrcRdrGIYpYwgLhq6HAJPkQc+2J8SrAdMLJgJ0XJhjImKEmEsYPlIirH0S+dNy7Yh69b0phbJcIlFLll7HrgxoUv/Uv435f3fMHWLYy+p0kY2NgbZRwlSMBQmCrZhfseK8XtwLM671ihY7HrqbOJFivH9apXRnS7ndoOu8Es0yGvOHpVwCAD5JKSkHfgktpfqjEUQH0pO0IwGP4z6KQOfUVUUhs=;4:1TaIm3OvvjJQZGSU8VywrIkoF5FKtG5LDH3+s/tNglkFITGjj6bJXuxprph3kSQJcJ50S2nE33+y6TmtK3bxsWiAPUrFPgd95hm1KL08cevpHPi59UYUTPuOykCl98ZVC46kQl6pIqa/efrdHLaw+CrMh3vLGSZdJpZTSkoXqZBVzJfEkw+THWabYPaHTbjiQxabdh9favYhsRcp4DatYya14x4zg1ktdu88JopSG1ITgcxxsAor3BclbYwQZpdoDFx3SMTRrRJk5wlglfqvgtNE3wC/1tBzDYBQj7EkrhVtzDeAQ40s2qJ0zhbx/+sA X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6095135)(2401047)(8121501046)(5005006)(3231022)(10201501046)(93006095)(93001095)(3002001)(6055026)(6096035)(20161123563025)(20161123561025)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123559100)(20161123556025)(20161123565025)(201708071742011);SRVR:CO2PR03MB2360;BCL:0;PCL:0;RULEID:(100000803101)(100110400095)(400006);SRVR:CO2PR03MB2360; X-Forefront-PRVS: 051158ECBB X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CO2PR03MB2360;23:Y4NI5RULRbYeecTxw9uqWDPxMQNmqmZzA5s7goaPY?= =?us-ascii?Q?e4X4V0Br7r2JpztZGyiAoX04CWSDRn6G4VUhKp1Cc8h9ejOYLi5o6dtx7Mdk?= =?us-ascii?Q?OElgJThWrCoU9FI9bqZIrm2u1b3lkrd6GV9N9y1C/GPCtMvg9enxykemGzSp?= =?us-ascii?Q?+VQt/SRkkqM2psnouHO77UerHnMUkQALEQUCjmw/aJYhwnLglVNZGQTsbvw0?= =?us-ascii?Q?XBxky2RDfpQ2fRpZIfuWuS0xqFF2l3p4YhduJEXkfHDU93TVjNcXXrIHZ5nv?= =?us-ascii?Q?svaFlvsOrIJB1wHRAob9+Bs9Q3guhgrY1sjN9fTJcZo74qWo47Z5Uq4nQT3C?= =?us-ascii?Q?gusd26wvP0ZUF2UrU1c0pPLAUrIfcdGZBjPznjms9dc/n/MhWwKVO/UI/Ioi?= =?us-ascii?Q?hxaUA+4OBv+Spfq2djOsprCG2XOqsrdlE/S4jxwhllo6GEnr/WXay54NKnW+?= =?us-ascii?Q?kr8MPT+Eggb9/UI/pIoXhtqC92akLaJuqzu6WnrbaD+ihrk0UAUi+JCE7dNO?= =?us-ascii?Q?QVjb9/TeJgFCs8pR+QTQ0YSqhA3LlXA5z134uqsH2SBIN04+88ISrU9J2Iz/?= =?us-ascii?Q?VInYHlR6VKPMAHN1AOfMKJcK5OsW6JJ7za1p5stdjkPZ1MDDPgjJcMDspvKF?= =?us-ascii?Q?vt3BKhG2AkS0wUckG2x4jszRTGjFVUQdUMKeltQWmzaRsSWG2wps0wuzFXEW?= =?us-ascii?Q?30+ynJkwFYFMMi4nSWskASFQdS+Rm/cWbTJXxD9D0i2oCyDxu/asPkKzwNs0?= =?us-ascii?Q?vLfqYZn+xWOn6rGMwpwHzaaSbay/tH5Xs+rHmXWweJCfVr5j3a+Px4fR5MlP?= =?us-ascii?Q?rIo/ymNPos6maL2MULTG2KTXesrKuTRE8fRf3xzTINf4LSgTpo+exGacnESj?= =?us-ascii?Q?apxV1gmLzfqSRsU8C4F98V41ZaNU0mS2+poSuWx3Vikq6VkdZ/iNvWjSPA8a?= =?us-ascii?Q?65n5CWyHF6GzwQtrVGL+NLCHs35N5g3v8rbiyVsIb5b5Cs/no+eMSwqmTwts?= =?us-ascii?Q?vSeqnG6C/DJnGXDkvTkpJu9BP3OzFb9yCc4QNam4ydk12YoC3SEftnbXMmUR?= =?us-ascii?Q?Bbki3kXxIpfaRrObNZizoPwXHTbpz/x8y/GG2Wm5sTk7qw9CM22nt+MWQn13?= =?us-ascii?Q?M3I7C8RvvfVlvwT/UQ2sNdTwQX+GGN0zYM1Fsx+4YpaIjGmcNqgJQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;CO2PR03MB2360;6:F37KHJXERl7tZgoTnvq18q96nzohjPwtgno0Wcfu1xD9Dt6buDReN9mgs4UmyLjSybQqWweb680bIY/f7NwN3wChkgmfJxaaJe7mG/qQay1MekU0Vl7FI88gZlruQIG72LeHDZRPR6ZixWJoi9b8lAtltUWqYAtIap1+UBSk/eZhHY14p+Rjvkxti93HBFfFXhR0xnSoCpyrQ+hOPYoMMwemVkJ4ed5J411oGmt35l0ObbFjoWC7A8yxx3vzV+TVW7N0Lq0c+kc9g4yRs19kUrlMxGLiDzLYtFpArEUKu272Ibds2dUv0Dz6fWSgdMpk7zm6deoOFs5z56axZCaM1yCt2R7pmre3hF79wAvRLlc=;5:pWn2PUNVo+PBbXypYVs9wt/ZTL4OVclo7jnvveQVR741F1gSsQGIUL9edyc9FNBupDCJP6G9cq0WdYacriiTXvGxzI48259gTCLmUqSobKU9AL04M4LZr7V7f+fJ+kaAF57yLEazyPJvQa5kt6ixVymuYKFW1U78oEPgBGxLMCA=;24:2xArSIcIvlP7gYmftaWRm7dRtzh3ND0wyDqH9ywY2PvfGfK3sGVt9AUPrQKrDqng/fC0xdkOnH7ZJH6OfBB/7BHJMXVJu40YVsxzcAkVvvA=;7:XkKhwxJI2q9njEQvTQWEtz6w4gG7ZBaZNZibyPkMBo4tBGTeRwSlK0UDYc47TLMZSdqVZjYZ2/Q09z7jdiLPF4UFYwxKePpfetD7s/DVWH1taTQY/XSFflQ/uyKUavdfYbmsOvqq0rMNAcpziehH3QclOJFLUTmjMNP7zKY7tSLEOEd65l30R6VG+jPBzHhQf9Rqr31Po/T6GTkR7YPWTwxlsAgLXvzxedkJMb8QoAEP/tci03i1ZjFJP7XnJOCt SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Dec 2017 09:20:02.7389 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 267dbd48-551d-460e-e092-08d53af83349 X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e;Ip=[192.88.168.50];Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO2PR03MB2360 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Yuantian Tang These PP2C and PP3C registers control the configuration of the PHY control OOB timing for the COMINIT/COMWAKE parameters respectively for sata port. Overwrite default values with calculated ones to get better OOB timing. Signed-off-by: Tang Yuantian --- drivers/ata/ahci_qoriq.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/ata/ahci_qoriq.c b/drivers/ata/ahci_qoriq.c index b6b0bf76dfc7..2685f28160f7 100644 --- a/drivers/ata/ahci_qoriq.c +++ b/drivers/ata/ahci_qoriq.c @@ -35,6 +35,8 @@ /* port register default value */ #define AHCI_PORT_PHY_1_CFG 0xa003fffe +#define AHCI_PORT_PHY2_CFG 0x28184d1f +#define AHCI_PORT_PHY3_CFG 0x0e081509 #define AHCI_PORT_TRANS_CFG 0x08000029 #define AHCI_PORT_AXICC_CFG 0x3fffffff @@ -183,6 +185,8 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv) writel(readl(qpriv->ecc_addr) | ECC_DIS_ARMV8_CH2, qpriv->ecc_addr); writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1); + writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2); + writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3); writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS); if (qpriv->is_dmacoherent) writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); @@ -190,6 +194,8 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv) case AHCI_LS2080A: writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1); + writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2); + writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3); writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS); if (qpriv->is_dmacoherent) writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); @@ -201,6 +207,8 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv) writel(readl(qpriv->ecc_addr) | ECC_DIS_ARMV8_CH2, qpriv->ecc_addr); writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1); + writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2); + writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3); writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS); if (qpriv->is_dmacoherent) writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); @@ -212,6 +220,8 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv) writel(readl(qpriv->ecc_addr) | ECC_DIS_LS1088A, qpriv->ecc_addr); writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1); + writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2); + writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3); writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS); if (qpriv->is_dmacoherent) writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); @@ -219,6 +229,8 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv) case AHCI_LS2088A: writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1); + writel(AHCI_PORT_PHY2_CFG, reg_base + PORT_PHY2); + writel(AHCI_PORT_PHY3_CFG, reg_base + PORT_PHY3); writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS); if (qpriv->is_dmacoherent) writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); -- 2.14.1