From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751154AbdFBHiq (ORCPT ); Fri, 2 Jun 2017 03:38:46 -0400 Received: from mail-cys01nam02on0062.outbound.protection.outlook.com ([104.47.37.62]:27020 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750807AbdFBHil (ORCPT ); Fri, 2 Jun 2017 03:38:41 -0400 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: Yuantian Tang To: CC: , , , Yuantian Tang Subject: [PATCH] ahci: qoriq: add ls1088a platforms support Date: Fri, 2 Jun 2017 15:23:03 +0800 Message-ID: <1496388183-11534-1-git-send-email-andy.tang@nxp.com> X-Mailer: git-send-email 2.1.0.27.g96db324 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131408627193354760;(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)(39450400003)(39860400002)(39840400002)(39850400002)(39380400002)(39400400002)(39410400002)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(9170700003)(8656002)(50986999)(53936002)(5003940100001)(33646002)(110136004)(38730400002)(85426001)(8936002)(48376002)(8676002)(54906002)(81166006)(106466001)(105606002)(50226002)(4326008)(86362001)(575784001)(50466002)(36756003)(2351001)(6916009)(6666003)(104016004)(2906002)(498600001)(305945005)(356003)(77096006)(5660300001)(189998001)(47776003);DIR:OUT;SFP:1101;SCL:1;SRVR:MWHPR03MB2815;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;MLV:ovrnspm;MX:1;A:1;PTR:InfoDomainNonexistent;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11FD034;1:+USy05Z4YkM46MJL1CprgsQDS9/6apes7ix5xgezcU1wNuYWmRr0LTbY7doxKiPRyFC+yYK+Pc7MAUnnf7KmpqNhVoYTaEyagfO0qyonIalINFxTDTXXdwWs1xV33EeubM+GDsJA36l46UbyykkpdD+2rJiCDx5SQka4ZNYEoolngZI0ZStYBUfWODnhaX+bWHgvLxBheqab827i+LucvoRiK/hFJmZBbLC/cVkbSClxMNUvZu1dgvTwKsRntzpsx9BhQn2XXQ17j6OoybvKCfLlft1T1RRAsBI7JO03qokGUpAyjnv1PB4tqt/PeV7Ks7wUV45FzV75OF9v0uRtN+MIUWrOtY95CxfppO8TMMuosFdRA7WicbaIFuIZryorWSmE1oa9/uP4DUNfwZ/t0oXUgpekH3eF8Hx03MvPtaozsH55zTKv3L6lO0+WN2n3HVbtD6wKYzVAhshDuTeByVPXOIxaMSl6w59Whl2z2BfQo/WbhHz61xhBr2jBjyJC+LMuYvDMg4bDCm7o3/+l5JhzWvd3nJVctIlo/geJnw66rt2H3qLemmCtfPdN1jnoFKXWPG5nCP44fySVdIY0espsqnCXyQ2yoeuo3GMLcaaLunM9buORvHdrwVjwzw1VtULsHSBa1JaxI+DmT+qW4sd0Xevi46mMJ10H5+jJcro= MIME-Version: 1.0 Content-Type: text/plain X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWHPR03MB2815: X-MS-Office365-Filtering-Correlation-Id: 4e95b820-d5af-4635-b8a6-08d4a98a62bc X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(201703131430075)(201703131517081);SRVR:MWHPR03MB2815; X-Microsoft-Exchange-Diagnostics: 1;MWHPR03MB2815;3:pQ93klABePUniRHgP6O84JxHhA6TCsrHPp6ay+SYhyisJCwbjaiIGoCRWjGkSZjFo9BfESBeeEFcY52KltKE1fBoTCdf6nJ/IzhCeAqAoGEpQMkhA7SX2bMZ4Xla0R150HBE7Wz05xuWyqdQk2JDxOuE92R2Hds21V0xcudFQOPa3j2VmTmo5ZuJkixRTwKybZxGJZT4//TNKIG53mD9EzgA2IOVaUlSeFHsG0EIivG/U4wAHyYgSJn8lJ1p7dx9peW6urZCMyOXgBwH0ukivC5uRYSkAfdljTezQGW3P1lNdruYf1JpN3uMVvwkV4f4irjaihtvEQP4LToGCDSuORTVEhNWOGDuPNDcx69wyeddUl+SYo1ktHs4jkp17XoW8GlmdHHJyPPax4WuHzUTihzo9DvhNkLfImfYD+riiA/YIaGrh/QdOreqEXSN25yI;25:cg5kLB8h3VE4qM5UoAxtZWCWErB1fDJUUehth9/uPooYucNxzQjkPG6YD79iBx52k63JiJ9iepzjAiVYHgSRzTSwJwPyGmJzRsLzK6TuPEz8Sorpa4M230gli0AZcBEgxJkwEFTLXJrtlFkLqRBIIovkBKK9xeKQpQOgGXCplvB91arx+BwX/Sg88H3+nU42z57UCIkzQL4m9JCfVHjyXPZPrfWaY5hKUGWC1GBe31yBrVLpinMvzEI1vvUMLQ5S8MQYjKCLt0h/bXUYgwOF/IAOTaJbmcoiuEKLP2MHA+X7/c0fA4y1PoUqez1b8Y6B17QCE8PpyCfB69585yp3Zspn5WuPQPMen6+UeF0C6jGaMC5F8BdQU0esi0de0vid+uD9Pq2CvfvDzFJN5fYvHR18mBQCIyd5tRvNnG3MgP63vPJTE9mfAvDIUu9PP8ixMB6hxEVZfYzwKCOkoJzsIxQXL0ZVI/X0ue5RWY4VsSk= X-Microsoft-Exchange-Diagnostics: 1;MWHPR03MB2815;31:a8DoaDaObJ1o/31qIPOuVseRLWV60gznHugvYURRURxgrZXj8wd6vVGz7FLg+Z49mNIxTl/1MCISF1S2qsmlqSVuVlVpsi15Ynr62MZ8nHJbP55DnuSSlyW/4yi2O7hkOJV5mTBSrDZaLstG1ZNIlRF0JWUwONs6P1wdJAZaWUz0ZZub427zdkwhPAoVaBMJ3UVjD7LKVBTMBgEZrkRy5IG93cGn13440zc/m7NmeBdhI8scVHFtLQfJ3NIGV6+0G22yaTgZiLdddu2nlIglfMP/mpXsGi6wFqVtQIkk/3M= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(601004)(2401047)(13018025)(13016025)(5005006)(8121501046)(93006095)(93001095)(3002001)(10201501046)(100000703101)(100105400095)(6055026)(6096035)(20161123565025)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123559100)(20161123556025)(20161123561025)(20161123563025)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:MWHPR03MB2815;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:MWHPR03MB2815; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;MWHPR03MB2815;4:Za0Y76MmtmHDlyVtB17aq3Z36FYxhlfVist0eaxXRy?= =?us-ascii?Q?VDLNNqIFZDoh4VHivQVpDJvlr6b2ORPk0Rl9igRTgO+7kHjNE1gCRXTbN4Bh?= =?us-ascii?Q?z64tb9sR+0jre6DcS55a+Hi0FHyzSRMSjFqU2hQC4FWvcd3/OVUkaai0xF4L?= =?us-ascii?Q?XoTdxCOitiKc3lQ1iAneqou+4OVumHMOQwH3AA9E4BVyRhzzFqS/0vA+irJU?= =?us-ascii?Q?EPCjU+s6Mu6Dzyr5xSiCisyJk+Xgm6B34hsftOxki6WPRy2Vu6kWkqTJ4RmQ?= =?us-ascii?Q?HZm3hdYD8c9H1IyIGrim422e0ZfY/ic7n1/A+uog42xnuPWoj426oIaH0+1s?= =?us-ascii?Q?wICFZHTqmrDYdZWHjGhtKlnp9kU0HZQ5UdmkTEmax9Imtk9neM88hxZ/0HUN?= =?us-ascii?Q?0wC0+/9y2A1MPNLXnLthG9Xd7SQ6PIuep8WAtUKfPklSpJ7kJPXJSFVHzwRe?= =?us-ascii?Q?0LGQEI2tCmuJ5eo136xFnJ+HGj2BdzO6om4MH6To0Jp43ACtQw4W1ZhP6Nqt?= =?us-ascii?Q?NgTasmw69FS3NB/eH8Y6xLPv6LSRm5YI6vDwYBBehgjuCPICnZkjDOYPrmCr?= =?us-ascii?Q?yXXDSczd9fc/Bu5EKgUoLYEa0srLkeRpEYEIesmntMxF7aF4tVvfwTAoOJk7?= =?us-ascii?Q?/UGUKTVZOSpHUcGLalRr4RmPVtO4+2XMPlJpd6O9+eXhcVKFLiZWzthoWsoN?= =?us-ascii?Q?5ueh/+Jdy1Wl8NOIFWqIOa1qvrMgU0t73UWhg1OPPcE/H8FRUty7EqHO1lFo?= =?us-ascii?Q?RFrbVYAxGV6LkilO685YSIt/+AtEuA4sDZuibh0r5CJkU+MxqI6GpEORU4/F?= =?us-ascii?Q?B7g9quSTrZlVPKEjjC7EZd1Z+h69XB29PrSg1FjAuMCCDlDwWcCyNJguMi7F?= =?us-ascii?Q?aN1tEGPkaDnB0j/9NIOdlZWEKlS/r4P75SbPvSNQR4n4eRNj0YltzNMiAr7W?= =?us-ascii?Q?1iGSne45crnPTswQgMPhRkF1b3oV7iOp1TgRUL9nhwM39ho04Dx6R6XQiMUH?= =?us-ascii?Q?LTuvtmZCQ00Lk/9cLiQd1s7dubqQcmRGysFoqQvKWEE2oKbutCf+BalBYDEH?= =?us-ascii?Q?gxyjIevmvKw2oZRzYzbDq24P3QpI0opCJ4fQ9Adn37K0eTzThSu/qgvPFHMD?= =?us-ascii?Q?I/T6zy3oL70BRAlmLBzdO6zZSxVEdfEPNA16w+XwjA4F0hZlBOUEQrs6BOhT?= =?us-ascii?Q?4fuTOZRpR5SdqNQXOExpyOdgw9FzivdpqQxRS8lU2GUXYoqYE+PbmuO7KJpn?= =?us-ascii?Q?+UVXwcL1iKAUX1rcjk2W1uTqugTkzJPyb5jed2?= X-Forefront-PRVS: 03264AEA72 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;MWHPR03MB2815;23:pr9bOaVpJ36umgGUKthfLqXSkImnhhu4QwAnE4wOl?= =?us-ascii?Q?KhgSbxR5sAf+95ShkrXhjLHuQtQrgkMImbGGiJLy+baV4bDLYZHA6C2zABOq?= =?us-ascii?Q?uM1sALvGURyJWpR5ubgJmF32r2z2NkIbAL2LOTENc8Yc571jXP0SbGZSfj/Z?= =?us-ascii?Q?AnevAUl2RMRYp2BomLZXuP9RzOhh5tA1DFgP76X1pYH1YfVbQvC5uz+qEwnR?= =?us-ascii?Q?anYS37P4LqJgi2vleFxClSlVfPyn8Yb+Qrv+CoclXdSbIFVcUiy5ntPTjYSm?= =?us-ascii?Q?2wZsHgHdy5xQ529X9nXNQG5Ul0U8uHft4igsXkFSi2onBS6XerMMAeMqK7vS?= =?us-ascii?Q?7llX+XjWRvin7x/GPKbXEgpgQjk8+S3+Fef/MK4+40RRLnIp0FCHgtfW8m0w?= =?us-ascii?Q?K2mpdy2zorZjDn7dgT5IaaHF8RgikXa7XwEGKiwvQ29IsWjQ+HF2vCJ7sdl1?= =?us-ascii?Q?WYjevdDxBgo674pvs1+hT2z5sNlOMMk6W9SPR053BIe8t9lFKpBenCwoAOIh?= =?us-ascii?Q?ZiuLobVJoqGE4aSd8Q4HN7/CmVKYrwgJ2/NgoHPIRiZx2457tCzaUK3rfgHB?= =?us-ascii?Q?wOERiKiZnAKfTHWhtPFAv79IP8JGt6nOF4VvJO3qtT7hdNfpK+HXmiV1A3Cs?= =?us-ascii?Q?2Y0RBxgpsulKysGsaEmRqfY9ARz/T437DniMkQVkYRgtH2JXJ0Jcc0y9Ugkl?= =?us-ascii?Q?+6ecuyr1EDuOXfYsOp8T4fmf3+P7uAX1okzv3TAQEtMThjpd1kBEbw17yyL2?= =?us-ascii?Q?SK5oth54wB/nzBd4j17ctLt2Ei275LP95C06xSdUraoiCpRag8D1P2+MYKwQ?= =?us-ascii?Q?KF45WHScHPaxh1vuz43SRmeAmlVDJJlwGhLHg+lBVemPEFddky80VyW5PDo7?= =?us-ascii?Q?D0pqeHx/6uEcbr8+e9w9hXG3cXdkYf7nwpmMVvlxU/we9Dpggc2lx2AdnhbH?= =?us-ascii?Q?xpa9+7GwqeK5mH2Aebr/+kWWb+kH4eZnPoEE6OR1MCy+1RykMDZopvONyw4M?= =?us-ascii?Q?BW0sRiRD1fsfTMe41rvTzYhI4X20y0V1/GoGJ+VecwAXaqBAzWp8fPaib3OW?= =?us-ascii?Q?7dgo99jM5AaI1fBHufyYjMdXiSfWyFIWtJr/5P4q2jbaTUHnMMMEkv7JZMld?= =?us-ascii?Q?VOt/tlItNwIGyARFUnR7ekLhWalMS2a8FEnP0Sy1wTSaSyRAZxyI1zz42Bp8?= =?us-ascii?Q?gxXnubgwSKZHt8K8SJH0LHxCjnSLXrZOehft6tGE4kiIiL5hm+5sJg2XQ=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1;MWHPR03MB2815;6:WXUumotGp7s1PTjAoeRJAPehcFRGdr/iSHaTJigfxylmOGhxqzDPqu35ShCMB+au40SHtpGCUEn3dpbyU25VNepHip2d7ajsoXhwZV9TYOTFGt9h8Bz3UA0dwvjRxP+mArdH14HgZXn7hNlOiYD9g9fM/kBwd35m9479DIhwEEZ3H7KOFhQy6m8+uToa4bcLs744YOWywnA8ZEzIfReYikEiQGh2qFAt5TrA0iT5ho+GyOH/Bckdz74kuvNcli9lYU9KegEqYZ2TEfHSWPPRYYBqWIheIFlyLHyST/plEFfpEWD9BOTNVmXxeBS3OMelVVJQcz7WpZir3Qg/qTvfEPiXH2hNUpraGkN8QSfLsjUs227iWU02sZCMqP2LKlk0a8HuccTSOE9UqFj28+LIKgMp5HZAv8BLcgs14y0VpDtntDUjdGFC84WKsBT13ZEfBJwL6OQgzZDs8bPK/7pAQrAkZ900aRn8Kn4h0jV+qjVT4Cxa/G3Je89uzSXmqr7TgI52QA+7DiI080cb1tYIfw== X-Microsoft-Exchange-Diagnostics: 1;MWHPR03MB2815;5:7S0djXFgOK6yFgHzz99b5Ti4FQGJhbv6BWtWRXRQizaTRhV/wlUhqgv3WHX3gO/eqIMRpK2Uk5mwjk8e6n+fKFUjhcY8bSaERFqEFOJxEEdGwir5GfEYF2vSjoqblPTL/5jdn4KcrID/9NB/quqHrWNTCy8FpqYRQ6HFfCgaGqsJXpnPhlN0xgVtAQZ3N5o2vl4UNsgefBRl3Fejhlld4HbA31ecS5A7TAkCbrb67VJThQ7yYfHmM1oJByMsEI7zLSSq/wPSohZ43nhE/9QsXtZ7XMfCupnzGhWBfaoRdhgbiuFEerZ7WVjaJRr3WNZDLIvuG1kenvkh0nJpuEQeBOW8RUAYA7gsIfjKBiMFBNyP1fSBlBbW4uFayGe5mN3ZigD3CVyinRkmnELQA6Tg2N7+cHTyDUs5L6Mzfo9tT3xfYnmmVteowUv3VNSEDzij/awa5Q7d/u+veZ0FVjoZbkqENRH/Ny79lcNcMDLD9vD4bd6Iz5wEijd3tdBSowWmqK/c2KhhCvPxmOLboGrJiQ==;24:1fHGG+Bz0dgLsk9ot9hJHaIbo2/86SPvQQiid3E+Czr4wZefESLOoiEtl8XoY1JN6zsJgs22IQ3ny5Z0kxRusxiCJTh6NZ7RO+PAaWWGwm0= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;MWHPR03MB2815;7:NdcmXRERzjCJxnNHklxvPpSgR4rqf5wEqMWhM1dJgSKzo93+QqALdPXwG6RXsf9DTW1z5+S4Ik3NNNjYmsXNLzMbq3sxMLQ+r8BpdTOKZ6U0wDbzG6318xzycusqbMq9pkYejjuwPJGwfTpaGBVtbYG1kODh3dH20uQB5tVKpn+qe8xU+TjVgVtSFUnw2R9XcpMNaos/Y1NuDW1nb8Q8HcngvVtkNaGZ/8EpOUyw/3Vp7txm7/aAHzGZqIu/1BqMTRfp76wMCwKsmvCAWxrQK8c3EBTAs+2mhUV/1Cp+8pBIrB99rUHb6bTa2MJgoyPg3x7ieSP3PAVn3rTFRYL5FA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2017 07:38:39.1482 (UTC) 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: MWHPR03MB2815 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Ls1088a is new introduced arm-based soc with sata support with following features: * Complies with the serial ATA 3.0 specification and the AHCI 1.3.1 specification * Contains a high-speed descriptor-based DMA controller * Supports the following: * Speeds of 1.5 Gb/s (first-generation SATA), 3 Gb/s (second-generation SATA), and 6 Gb/s (third-generation SATA) * FIS-based switching * Native command queuing (NCQ) commands * Port multiplier operation * Asynchronous notification * SATA Vendor BIST mode Signed-off-by: Tang Yuantian --- drivers/ata/ahci_qoriq.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/ata/ahci_qoriq.c b/drivers/ata/ahci_qoriq.c index 4c96f3a..b6b0bf7 100644 --- a/drivers/ata/ahci_qoriq.c +++ b/drivers/ata/ahci_qoriq.c @@ -47,12 +47,14 @@ #define SATA_ECC_DISABLE 0x00020000 #define ECC_DIS_ARMV8_CH2 0x80000000 +#define ECC_DIS_LS1088A 0x40000000 enum ahci_qoriq_type { AHCI_LS1021A, AHCI_LS1043A, AHCI_LS2080A, AHCI_LS1046A, + AHCI_LS1088A, AHCI_LS2088A, }; @@ -68,6 +70,7 @@ static const struct of_device_id ahci_qoriq_of_match[] = { { .compatible = "fsl,ls1043a-ahci", .data = (void *)AHCI_LS1043A}, { .compatible = "fsl,ls2080a-ahci", .data = (void *)AHCI_LS2080A}, { .compatible = "fsl,ls1046a-ahci", .data = (void *)AHCI_LS1046A}, + { .compatible = "fsl,ls1088a-ahci", .data = (void *)AHCI_LS1088A}, { .compatible = "fsl,ls2088a-ahci", .data = (void *)AHCI_LS2088A}, {}, }; @@ -203,6 +206,17 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv) writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); break; + case AHCI_LS1088A: + if (!qpriv->ecc_addr) + return -EINVAL; + writel(readl(qpriv->ecc_addr) | ECC_DIS_LS1088A, + qpriv->ecc_addr); + writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1); + writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS); + if (qpriv->is_dmacoherent) + writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); + break; + case AHCI_LS2088A: writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1); writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS); -- 2.1.0.27.g96db324