Received: by 10.223.185.116 with SMTP id b49csp3719206wrg; Tue, 6 Mar 2018 03:58:25 -0800 (PST) X-Google-Smtp-Source: AG47ELsfv3sh9Vu1cdBB3+2APFBdW6bDm5aDiDeQzQgocw4BzfCqGukYqDUSGEn4/16vX4wa0tyo X-Received: by 2002:a17:902:5489:: with SMTP id e9-v6mr14493102pli.81.1520337505753; Tue, 06 Mar 2018 03:58:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1520337505; cv=none; d=google.com; s=arc-20160816; b=N/kniNU3uXY7cG1K1kmmc2quW2X+qT+imuWR7LHRlH+F9o9z9aIRfEEPCtLALe/1YB yvgLY3OlOubD65se3BA8PSoIbvQPdpM7zvxI8qoxWzgrpI+fhpha49Z1pSSuicAsDuA4 hwkvPcBSLR34pOf8DdUe2LRToO1ZncuzUoJc3jEHToasyRS1pl6cmaOt++J0I9rjbM+c 1KbrleWDMcpOn1t13gen5o6UNIljN45p/hlJMfQmQREjg/jA3XxMNrDnkoVrnfZwo78s ujL/K1JxYZxrYGwoLf2tMhkJ3X/iylPzWCFQayaTvCb6swla2cHnx+MpxdU0tuSutjKV y33Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:spamdiagnosticmetadata :spamdiagnosticoutput:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:arc-authentication-results; bh=z6cR3lyUlUzMtL/gfVGEOSFne4BFrOgZQn7CLz+2YhE=; b=cvCRKAIbWRPV1Kav992ELU5wZ80k+rNmeXmu37Yq2QkTBIb4uElpclpa4FC3usGBr4 +1xeBhFuozcSuqBlPQIo0efiHAZWPI6cjXGCSrFvuJMKZXtSACQ9FZp2b/xAqJ/2OBvF 5/78vzwBwb/Kt9Za1F7iSuUL+cLx9N15Yx33fkPrO5lkvnTYvbQSmHeO5QVPYL+UZUDD 288mked4sNQmvNzvV0/Po5EkorVyPQ4PDLe/Bz6pDWu7aNFkqbrNDwassS/4zfJ34Ov1 GZz9e4GIjLsExglb9fF/AQKDHPptWRk+OuLqdx0d7iqMBdKauggbvVd4wArdBdwAUJZ3 o7wg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j9si11731550pfh.200.2018.03.06.03.58.10; Tue, 06 Mar 2018 03:58:25 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932753AbeCFL4H (ORCPT + 99 others); Tue, 6 Mar 2018 06:56:07 -0500 Received: from mail-bn3nam01on0065.outbound.protection.outlook.com ([104.47.33.65]:53427 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932448AbeCFLzq (ORCPT ); Tue, 6 Mar 2018 06:55:46 -0500 Received: from CY1PR03CA0041.namprd03.prod.outlook.com (2603:10b6:600::51) by DM2PR0301MB1197.namprd03.prod.outlook.com (2a01:111:e400:501d::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.527.15; Tue, 6 Mar 2018 11:55:44 +0000 Received: from BN1AFFO11FD012.protection.gbl (2a01:111:f400:7c10::192) by CY1PR03CA0041.outlook.office365.com (2603:10b6:600::51) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.548.13 via Frontend Transport; Tue, 6 Mar 2018 11:55:44 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BN1AFFO11FD012.mail.protection.outlook.com (10.58.52.72) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.527.18 via Frontend Transport; Tue, 6 Mar 2018 11:55:43 +0000 Received: from titan.ap.freescale.net ([10.192.208.233]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id w269JjD1018667; Tue, 6 Mar 2018 02:19:57 -0700 From: Ran Wang To: Felipe Balbi , Shawn Guo , Greg Kroah-Hartman , Rob Herring , Mark Rutland , Russell King , Catalin Marinas , Will Deacon , Li Yang CC: , , , , Subject: [PATCH v5 3/3] USB3/DWC3: Enable undefined length INCR burst type Date: Tue, 6 Mar 2018 16:59:11 +0800 Message-ID: <20180306085911.5930-3-ran.wang_1@nxp.com> X-Mailer: git-send-email 2.14.1 In-Reply-To: <20180306085911.5930-1-ran.wang_1@nxp.com> References: <20180306085911.5930-1-ran.wang_1@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131648109442227423;(91ab9b29-cfa4-454e-5278-08d120cd25b8);() X-Forefront-Antispam-Report: CIP:192.88.168.50;IPV:CAL;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(376002)(346002)(396003)(39380400002)(39860400002)(2980300002)(1109001)(1110001)(339900001)(199004)(189003)(68736007)(2950100002)(104016004)(81156014)(316002)(85426001)(76176011)(81166006)(8676002)(53936002)(86362001)(47776003)(36756003)(50466002)(50226002)(16586007)(1076002)(498600001)(59450400001)(48376002)(54906003)(8936002)(26826003)(97736004)(77096007)(450100002)(26005)(2906002)(5660300001)(110136005)(4326008)(107886003)(105606002)(106466001)(305945005)(6636002)(51416003)(356003)(6666003)(336012);DIR:OUT;SFP:1101;SCL:1;SRVR:DM2PR0301MB1197;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BN1AFFO11FD012;1:S5ZVNKxImZLAnbkYHUu4bg6GjfpmgTT3radrhj+ZDtkfDv8NdkGL0qcfL0B7NG+eULVfF2SFBWhZdqdbExTfMXs+dRnpy4HFYtkaXxJb+TNNvjeWgCLiZOIuvYph7LLZ MIME-Version: 1.0 Content-Type: text/plain X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 8440ea60-c81e-42f6-7b7e-08d58359311c X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(5600026)(4604075)(2017052603328);SRVR:DM2PR0301MB1197; X-Microsoft-Exchange-Diagnostics: 1;DM2PR0301MB1197;3:hGXkNr1d8ArbbkB9p0K6oWa3TDPkq9ESdgSrctPWqPgY+wjUQnDEDm4W3EsGI+NWIHK6Pn/gXn5Arem4Qyw+uI35UPOQ05G2qbr0w+ueIy29c+ahuYWH0pi1J5FpFDmDQVOnqfmlH2C2RGa7lfTvQ5MG2FPpCWLmsOAK4iyPV9m4dnsNe+1wcYcmHG5Mvgu4vxy84sF8sYAVLP+/1QCWSypo+iryiXNUbyv1/SBqCk6k//3qJsHbZcE1o6MNPJbgEvFZHtUGpvLgTpIrd9QrCSkRsymAm3MUHTkrBmSxy8sySn+yzYYgCYZX6ljShtk5LcVNCgASdJL2oRt/p6lYetoCoNlDBsGOcmkt5G8lHpY=;25:ggScufJmqUVNjChLZHjd5Gt2/sW+l59IcyC8A2E+TD9n5ZF4Oe7ws1kI0IjXRnkTETKLTWd7W2j/Z1wxPrDYVlZ8A/y8Hg4rGMz7QW1gXJiMeo5+QjmefSqYtjbAvDUNDgxqDSAnXYyrYW7EQiobgrURCbitS+wgwyv6xPOpkmIriFNGJdGXcbSImrP3DPoVPmPVFe4eHbLAzpDfatNAPAC139Ts0AHbYlxC3xuYYclBx0Luc7dEyDOi+37oL1Kb2FFcV8GWoMy7ei+2taUckFEEaxENj4pduHeNe1LbUBuf5Qf7hsyBwIJruwCm/UHoQEMntACoPawQt6EgjmPx2A== X-MS-TrafficTypeDiagnostic: DM2PR0301MB1197: X-Microsoft-Exchange-Diagnostics: 1;DM2PR0301MB1197;31:eIQoMTAGdkHSzjlKETvg6pTCrmim9eBe+se69M4X+DXvqhbA/qepd2KrJTvKIiYUbkntkja+MQI9AXFC7OA/JP4pagrz5TxXpaxdgoAUFFnMlsXz9cMai7/h8qxGS+b1gcyr/wFJvIkk3rzepb/es7wI7glZgQ4Sm4NOoUZzti3sgtE7GLGLMxos0BO5hdKn1LfciJNS9zFpMKpvVT+oJ5IdQz/CM42e2qfLJFfqumQ=;4:vZIieCPQRLMx8lPq75/gArz+NLDMK4Thdl8EJweVytq5AdvNKvy40kqVGOWHCfXokqXFajzY8A/ug3vMk2ZDG/EHtw9DZRYw9rxSbosmI3Rs0Xd8SnceeIaLc1kDir3bV+gJva48DFRUwp+/Fb+oU5ZgzUXoPs+SlzQInEgdx7MzIWsJjdJWaQJX/NUyjQ0PBaPRv7lbOJMg+l9Et4sovd/mvbkzN3aTU3TpXVpp8zl7VdzuUEBVcepbbs1UgKhhLo3VTKw1oOhcN8W05lifpYPJC8tyVtaOc2BZqfRhTk3igc3sKx7TVWccJgaAIGfn X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6095135)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3231220)(944501244)(3002001)(6055026)(6096035)(20161123565025)(20161123561025)(20161123556025)(20161123563025)(20161123559100)(201703131430075)(201703131448075)(201703131433075)(201703151042153)(201708071742011);SRVR:DM2PR0301MB1197;BCL:0;PCL:0;RULEID:(400006);SRVR:DM2PR0301MB1197; X-Forefront-PRVS: 06036BD506 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DM2PR0301MB1197;23:+RamZ5OwdYT7DkXTNvKffDplYUUzUO7EmpDIHQW?= =?us-ascii?Q?yB/ZfFn94jOxlqLJx2O7drs4LvLeQRzOstgolw+6aPLn/cAag7519AbCf33i?= =?us-ascii?Q?NUKbOShaCai0mSL/x6ZDd2SCxO81nWflbKUQXRSMGdRxyha+XdgGVWNel6Pp?= =?us-ascii?Q?AzSwcH5eJ+BqD+dGDoFdgkeiT9ai97yO9O581V7VnYs87u3DOazo8P0/ZUyu?= =?us-ascii?Q?edBzeDsD7UXhsU9zerZrYFhVqHj1BoSQPmpG/9PGIrlmXsi14UTSfJBlo3/k?= =?us-ascii?Q?FgUk43FrjVbJD+LC75y3Cf7+e01xW0N9L7V5Krwin4Lw63iI+DfTQxw941q1?= =?us-ascii?Q?TxI97rJ63GIL0f68M059DSHPTNGUDMqbYckd18MFt114LLvfv+uKRv7hRJWL?= =?us-ascii?Q?SoexEy9wdf8KjoTryAbszmbJQePtO7nHzdqkxQhe6IodrRcVDNZ2FmIdh5pz?= =?us-ascii?Q?6b4F9oPwjYXcXuNY08nTcECsmhUWGSfDeCrRxtrVj0gPftzVWg4FSN5Q5VNZ?= =?us-ascii?Q?msi9vfLhDWA8Rt1lJIqQy5UNqZw6RM2IiR7frr2fJiQFQIL6TIS4c33/ep4x?= =?us-ascii?Q?UHXaTi2f5bI1w/D/q1Jp/PLfLpplNUEO9a5HVvfJljctAgI1oO13lKrZd4gn?= =?us-ascii?Q?kuqFXunQR9jpA0j10dLlUngqH3QciqVmtkJaryosMP2ulUMr0DzmrnYRA10y?= =?us-ascii?Q?5nE41mCF5tF4ajaPktOFUUWYoiNqR9Gdy3I41l4iaGy/CWubAFCzBvtLFP4q?= =?us-ascii?Q?NAoxdFRIu3CHdUg+xemCjsJg2gb5g9CvM3TSHawWHjs09L5nPFq+o4r2pxcU?= =?us-ascii?Q?wkfKeWiq/ibID41yc+RydxXvX4nT0spOY9T+IIAOUmxFfeGJn4NCkMK8I7Wr?= =?us-ascii?Q?Qz0nPjEKyR93bw8BZrgWxix/YhUauNAZXROJ8VaMPfVg1pfCrFme3CNpSCea?= =?us-ascii?Q?6a5NZLAFToEwX0iKZA0klXapyfn1kBMsZCS263g782I0SgfXECglhMWu1vKR?= =?us-ascii?Q?LZzKNA/neuKfMbaF+fdHkg+lbcVGMqTM8Qsb6w8cmDLwO2RetuCc28R03XaM?= =?us-ascii?Q?yQyS25QVSZdHqoItLKLQ2akOFOdqL6Wh42gkpMP2VRR2FO0Dh1WHT3NOlmbJ?= =?us-ascii?Q?If/TQVIKc3CHGvChrUxEvL+gdtGYNAiuICqkARKmL/kPrqK75Ho8+raY6ICa?= =?us-ascii?Q?farFXSFY6WAFrpfw=3D?= X-Microsoft-Antispam-Message-Info: cweKk94wNLrH0q8uub1r5tdfeuYCZ0/Kyq0QqP2ziq1wdGN6vmfhJYLswpX9izRjo5/wBGd1k/LeQLMct+gpSxJKervgxkLoi2KVGWx527azuW1/wcamqiDECxzQjfYRADhBHSD+BdKhNtenBatNhYFa40MArBlYYn5uW+f31dyBxBy/5quuYCdgRbcDmQN2 X-Microsoft-Exchange-Diagnostics: 1;DM2PR0301MB1197;6:L/BpCKpGGcvtABvI4j9WReQLSpIAjMqwCN/NSOyH4Tz8hjJnWBucDHIrCB8pdw28/So/PyX1HRPYmIlpfVSFmnbox59jkWAvxV6AEuMG4nyXCXxXuDaz+aLTgc8naLTGCfh5vTh/pS/IuNxm1v0YbMASlzCAiMksjnw9y5I6TGe7yEv6qglEuoub3P95LtlP0aST6pzIZmF7qvII6PoKizxXyTHmLY3ZsV7PUcBNA9SBat5eLwgOqWDD4Tb4vkum7InF5Dk85HgNpTOoufeaWNylVR3kykiW3LSm1VHTBSoZznRxGP3FVdyrKqJ1zS7pYmgypqpUiBaAfDBorevAYjN9tG5j/FnsHSyDCx6U+Eg=;5:WaaPGpTtS9QOb18suwLjcWS4r7mMNIw7scqtuBtySYsvv+yylq2/REhJVtBHy9CCHwJZDEsz1HSMxNLJKDdWkuDfXUiAWK5hHBBEXnKpmvkAl/ShT00VRYfIT3MIvMHAu5ITfAwXHr1FyWik4g27wq+wmHy8a8SYee6+w8m5S1U=;24:3FIjnaGEr4GtQ4diIJItvnGwVVWI/4SEVJmhfvgxExV3Snkl1GRTSZozzqZfuKSTHksNcAhq3kVOh2w7lVGn7/OfElNwbCKArpIiFbgM+i0=;7:1mzvubu817u/Og/xe9QJsiDmFYUgh5svbtygfpk9irOMPP7vqL5xLLgmauJZbZ6RyOhq+6ICQXOZioWkLSllYc5o/p2MzAgiWYTd2SxD4GdwGrRL9hp4Kb+OA5kztpT2UzybvM3cLj27M++ATaXrXmQSCYgqx9FH1dGqs5VvWdsIc/GL3XrG/ZJZPykBAHmKK+8AeYEMqt72irYs7lYGFC6jzjYbMUbX2stlQrkWNFjHKpDMxCk8SuWvuzO//7+i SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Mar 2018 11:55:43.9731 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8440ea60-c81e-42f6-7b7e-08d58359311c 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: DM2PR0301MB1197 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Enable the undefined length INCR burst type and set INCRx. Different platform may has the different burst size type. In order to get best performance, we need to tune the burst size to one special value, instead of the default value. Signed-off-by: Changming Huang Signed-off-by: Rajesh Bhagat Signed-off-by: Ran Wang --- Changes in v5: - no change Changes in v4: - Modify the codes according to the definition of this property. Changes in v3: - add new property for INCR burst in usb node to reset GSBUSCFG0. Changes in v2: - split patch - create one new function to handle soc bus configuration register. drivers/usb/dwc3/core.c | 83 +++++++++++++++++++++++++++++++++++++++++++++++ drivers/usb/dwc3/core.h | 7 ++++ 2 files changed, 90 insertions(+), 0 deletions(-) diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index f1d838a..8ea2bc8 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c @@ -741,6 +741,87 @@ static void dwc3_core_setup_global_control(struct dwc3 *dwc) static int dwc3_core_get_phy(struct dwc3 *dwc); static int dwc3_core_ulpi_init(struct dwc3 *dwc); +/* set global soc bus configuration registers */ +static void dwc3_set_soc_bus_cfg(struct dwc3 *dwc) +{ + struct device *dev = dwc->dev; + u32 *vals; + u32 cfg; + int ntype; + int ret; + int i; + + cfg = dwc3_readl(dwc->regs, DWC3_GSBUSCFG0); + + /* + * Handle property "snps,incr-burst-type-adjustment". + * Get the number of value from this property: + * result <= 0, means this property is not supported. + * result = 1, means INCRx burst mode supported. + * result > 1, means undefined length burst mode supported. + */ + ntype = device_property_read_u32_array(dev, + "snps,incr-burst-type-adjustment", NULL, 0); + if (ntype > 0) { + vals = kcalloc(ntype, sizeof(u32), GFP_KERNEL); + if (!vals) { + dev_err(dev, "Error to get memory\n"); + return; + } + /* Get INCR burst type, and parse it */ + ret = device_property_read_u32_array(dev, + "snps,incr-burst-type-adjustment", vals, ntype); + if (ret) { + dev_err(dev, "Error to get property\n"); + return; + } + *(dwc->incrx_type + 1) = vals[0]; + if (ntype > 1) { + *dwc->incrx_type = 1; + for (i = 1; i < ntype; i++) { + if (vals[i] > *(dwc->incrx_type + 1)) + *(dwc->incrx_type + 1) = vals[i]; + } + } else + *dwc->incrx_type = 0; + + /* Enable Undefined Length INCR Burst and Enable INCRx Burst */ + cfg &= ~DWC3_GSBUSCFG0_INCRBRST_MASK; + if (*dwc->incrx_type) + cfg |= DWC3_GSBUSCFG0_INCRBRSTENA; + switch (*(dwc->incrx_type + 1)) { + case 256: + cfg |= DWC3_GSBUSCFG0_INCR256BRSTENA; + break; + case 128: + cfg |= DWC3_GSBUSCFG0_INCR128BRSTENA; + break; + case 64: + cfg |= DWC3_GSBUSCFG0_INCR64BRSTENA; + break; + case 32: + cfg |= DWC3_GSBUSCFG0_INCR32BRSTENA; + break; + case 16: + cfg |= DWC3_GSBUSCFG0_INCR16BRSTENA; + break; + case 8: + cfg |= DWC3_GSBUSCFG0_INCR8BRSTENA; + break; + case 4: + cfg |= DWC3_GSBUSCFG0_INCR4BRSTENA; + break; + case 1: + break; + default: + dev_err(dev, "Invalid property\n"); + break; + } + } + + dwc3_writel(dwc->regs, DWC3_GSBUSCFG0, cfg); +} + /** * dwc3_core_init - Low-level initialization of DWC3 Core * @dwc: Pointer to our controller context structure @@ -803,6 +884,8 @@ static int dwc3_core_init(struct dwc3 *dwc) /* Adjust Frame Length */ dwc3_frame_length_adjustment(dwc); + dwc3_set_soc_bus_cfg(dwc); + usb_phy_set_suspend(dwc->usb2_phy, 0); usb_phy_set_suspend(dwc->usb3_phy, 0); ret = phy_power_on(dwc->usb2_generic_phy); diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h index 8f97f61..565d7ec 100644 --- a/drivers/usb/dwc3/core.h +++ b/drivers/usb/dwc3/core.h @@ -806,6 +806,7 @@ struct dwc3_scratchpad_array { * @regs: base address for our registers * @regs_size: address space size * @fladj: frame length adjustment + * @incrx_type: INCR burst type adjustment * @irq_gadget: peripheral controller's IRQ number * @nr_scratch: number of scratch buffers * @u1u2: only used on revisions <1.83a for workaround @@ -939,6 +940,12 @@ struct dwc3 { enum usb_phy_interface hsphy_mode; u32 fladj; + /* + * For INCR burst type. + * First field: for undefined length INCR burst type enable. + * Second field: for INCRx burst type enable + */ + u32 incrx_type[2]; u32 irq_gadget; u32 nr_scratch; u32 u1u2; -- 1.7.1