From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751553AbdARIZh (ORCPT ); Wed, 18 Jan 2017 03:25:37 -0500 Received: from mail-cys01nam02on0062.outbound.protection.outlook.com ([104.47.37.62]:54880 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751311AbdARIZa (ORCPT ); Wed, 18 Jan 2017 03:25:30 -0500 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com;nxp.com; dkim=none (message not signed) header.d=none; From: Changming Huang To: , , , CC: , , , , Changming Huang Subject: [PATCH v4 2/3] USB3/DWC3: Add property "snps,incr-burst-type-adjustment" for INCR burst type Date: Wed, 18 Jan 2017 16:12:17 +0800 Message-ID: <1484727138-3264-2-git-send-email-jerry.huang@nxp.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1484727138-3264-1-git-send-email-jerry.huang@nxp.com> References: <1484727138-3264-1-git-send-email-jerry.huang@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131292015280071145;(91ab9b29-cfa4-454e-5278-08d120cd25b8);() X-Forefront-Antispam-Report: CIP:192.88.158.2;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(336005)(7916002)(39860400002)(39450400003)(39850400002)(39840400002)(39380400002)(39410400002)(39400400002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(4326007)(189998001)(2906002)(97736004)(626004)(5660300001)(81156014)(8936002)(5001770100001)(54906002)(8676002)(47776003)(53936002)(77096006)(8656002)(38730400001)(36756003)(49486002)(85426001)(4720700003)(6666003)(50986999)(48376002)(50226002)(230783001)(33646002)(69596002)(50466002)(76176999)(106466001)(86362001)(81166006)(92566002)(575784001)(68736007)(5003940100001)(2950100002)(356003)(105606002)(104016004)(305945005)(142933001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY4PR03MB2472;H:az84smr01.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BL2FFO11FD024;1:PyBirdeyKe2FHFy/hMw1d7xFotglfKeM/oAeSK5kQPLBD3I3mR+I9b8PgnXxRFhKR8xsTnv3av/9W8fd4vz2H85XYolhkFgVHbXSJqtcw7AUQ6xxMKW786WResUtlh804uCE4oHahFOdjZq+IVxj0ve5vJMqHxbkFJhQuwTGZJK8W0tA0nVAShuNlsuxPznc+x9SYhOikAwOhk+hUUORHA8gmpTf/eB6y+kIz8DDf3gilkoY/EPFXmRbS/ea95ANPQxpTEwwohdzVy5mDWOeXIJ5nHQR02cG8mMPeE4A6wKnx0m92vgd3+8a++8tViT2kAaYiRnKsYW+VproidQLNFhdgiP7M2qdDeF9JnBjGo8KUAI6T7zBa6adaz8y6EB76a8O8lWcr/+j+n+6fUqxE1AH4AihAeZDgdpyeKxZhwmH9VwnjMMN51lV0giIJonXPfFl3VBAmLREIMuTjCYRtQxePdiT07sTFwMYGWvCfH9pMJLxFn08D4JStMBM4BFrNHKg8RCWq56R1KI8IQHkn9rM41/mJCKVWPqVvsYcjwdnQxVOS6W/lGxjXXIRDh9cEJjgxsiAbRdT/Xc4EWrfgb+uMO8ULeYfN2JMyIF4RzASMIOvLQgyEvuhZVKDSmt5mcTv4lljkqA1N1ZJGMIdNGYBpRVUxAxQ9v1uFdbhr+Gy86W8uAJqiAfgbgNsa3SScHz+ofM27yFfQWkmgRcktUM7pAPJn4E8vt/WBfckWZE= MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 6b04f1ee-adde-46ef-c088-08d43f7b8f11 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:CY4PR03MB2472; X-Microsoft-Exchange-Diagnostics: 1;CY4PR03MB2472;3:uJQc83sj8fR4cXNEUQomkQKUVfUzsv7JzSSuB3w0W/KaLizUXuIH2oponNAvuv+mKdn5PEtfz0q/uiMvg8nJ88JgnwZ1yXmS92g/LNzz6Jd5rPFKXFByf9+y8++RSehll1vA8+nKzkD7tfAfI3w5BpcM33K84cscJfcWkuOtoKV3qUHgGxj01k+DL4Fm/wWYgHt5jDWP4jMGxmVGQUIGYtQ42yhp66j9awP7CG+OvonrXUNg/iSLgYxj1WxIu9hOEkOzTBxkMvxQZzlzSRlTIH8IeLfZ1LIQ9XPcSczSnCth02up8GkrKbCMq3W6MYl3vlkXu/h4Sy6jz8ghtvQPT13g/APlCSZsnms0AqTTtK6DEc4BCbmGaI72UgEJjD/Y;25:JpmwCiTVclP8SYGXmMWFQ9nXHSSlXBrMTtJUhnAkg38CpTqtBDYWU5J2BD+O1QyFAtOhjLXyz2YRdzK6y7HylqxNTP8cENY82jPbvDDb/+5asUb8qyVbC5gDl0RZ3hgHLPVxCNtWV7fZWdngbxbnNSVmRodR3vDGppa5Hrojp3P5TTTtauOtx7OEqltGRQYSRGsq+SjnAHUpLzx0yz35bqcdWdwDZVkgmB4xbpD05AOME5WYpO8RW18tm+A9wyxQc1NnK17Ly2nMKFQIKpGgS45qAAI0+BlTqk9woycf0iaFegMwqmpaUeecHWOLJFnrgNHJ+lYav+6YG1/rQ2nEZLcBRvQ44dUH48/t0GNzeR5HL9gG/LCv7WD6MtJASuqsSAs7o+Ovu+F7M0NjozyIb34lJJLMk6Okh2NNfIjdubPVTsplvwbXUyAUc2fm9tbcGWk2/Yfk7GdyEr4khCcmEw== X-Microsoft-Exchange-Diagnostics: 1;CY4PR03MB2472;31:I/nFsd+muJ8UmLiXe/3YvzdFr2jRZPEtY38qJ8lyQWFNhvNT0PQKt+DBW+wxDJSeEVWwKwp4RFh476Lb+WbmqoZm6v9DoYbF5xP3Ag+IMnpn22E00gE6Tzio9gehhM0rxogCzgVUtrGZ/otaBvykcpp87CgXhV+oM6Jo4vmomOMY25exDKUj/gn6mnq1pu1kUPM60DhCP/l621Ilz5UkMLWNIv+nWqrMzQOkLnKZhXsYIX0Z4+W66Lq9lTlpicS8AO+ex1jWysGVk8+DP8ZF2A== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6095060)(601004)(2401047)(13015025)(13024025)(13023025)(13018025)(13017025)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6096035)(20161123565025)(20161123563025)(20161123556025)(20161123561025)(20161123559025);SRVR:CY4PR03MB2472;BCL:0;PCL:0;RULEID:(400006);SRVR:CY4PR03MB2472; X-Microsoft-Exchange-Diagnostics: 1;CY4PR03MB2472;4:xiB4UjHsAE7EXRr2DrpIYb4h5K0lJmCYccTb3DAQZ0KxQ6898nYjfymR4V7mYDh2qHCJ2/mconHNgQP0bGVu4IwwVeVRfFZ7kS/pWtG88xUPQqub2bqnlbMjIVEo7q0ikA+3ZfTC7xxo300Jl4mKlRQvzLHp7TOqYvrDSAepGdFHqbqCq7CXekG0s9L2KLbvt2ijgZPyPJF9fu12Z67os7KlFIFJ3xWD6uWz2zpn+oeX6GYhTcpZq74fNDpGRGUhZEpFBlHcfApJAjXzFq49AR2q9VpNucYrneIYn1vIonmgvOYMR4wZDPTv66FIRdbIDjxsXJ24E/ovL+t9tKW8/6h4b8jSRCfXPOj+RqqrBF2HrXrSG/B1G95Sa9gb1diQQ4uOoMUnFTIn2FYKWBualkYu5tVSCypH92ATmLzCRr5pZ2bVBBqAmezN5lTUzwu9D4dDuXEAP1+DJA7mWxlQk9jASXyK6rMTHuQA7eJv+9iPZTpNgIak/+BjF6at/UAlHaT29dfxkaMWkiMyNpSnbX/UflEXiKiqEtU4a9f6UXZWt/32UzGwH2pghI4XkdsEOp2mkc2jZcRce7K79oQvryTFAePkTM2Em2vXCAgYbqusrCm///rPL4vx8SXAPZVkNCIdAu0SISTpbv0X40X0Wsb6nQ4MVLkBvBm73ti5r8maRm3gsIZkSB3SyjWDGpqLJ6wQ6z47cw9X3qB/lF200cABWdcakOVZYLYzCrS81jD/mLLwcTna2x2uPhLpDlyo X-Forefront-PRVS: 01917B1794 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CY4PR03MB2472;23:+UIUHZ0DidsT4d9opAzbkq25xx1cFHHrDure2pNoc?= =?us-ascii?Q?apLtm1Ffeeh52JJ1gQJK+WyjL4AVWzX+rsTZvhx+apYafzuJv8E4Uz02e6ZJ?= =?us-ascii?Q?eyJ4XRZKP+eugQgwZLTm0yqWIpCfL2kAOqyEcMoPAzRZgvo1DP0+WyKts9Sp?= =?us-ascii?Q?b0QlsiwuYf52ySYM9hgCWVxZvzLt+HOCXor3YBybNCCCl9o5nhIQ/wlW8dTu?= =?us-ascii?Q?1tezqosaQb7nJK14e1F5Xf+awHEmMPWcOzi6Fi/mY4XPAoZlVepdhPIU+yQX?= =?us-ascii?Q?VtxNiGauTeqdUZD3cvG2uVvS11uQ874jmu8E4HLwzXVyqgQRiPlrpZwjX1O6?= =?us-ascii?Q?XmKIfiuBFSPRYEFie6AAMcBdh+IbYybTxAmFmfFGonhtvCF4Jh9yIHBksCKu?= =?us-ascii?Q?Ei/SdHbuKBDIEP7AoUSxmg5LVpnRiKDOXOTAHdMRgoDzE5tyw78YP71GtY6Z?= =?us-ascii?Q?eg85ID0BBfThjAZ8wq6cq3g/s5S5IB0yij8HnTfdrHXzmV/vR5HJYiTmxgkF?= =?us-ascii?Q?wupXIbrX+sPdvbwieWGEX/8tsitED+4Y66qGmQ0m51ovWdHYWB2xsK3hOx/i?= =?us-ascii?Q?QCL4ZARnd4HwL6bcBGXF/VNPpDKJgk58XQyg59HtZ1trg2ZjhdBi/8hhLRYx?= =?us-ascii?Q?wpvQZrEPYJjMlx5cv1TCKukd4PoG+Uq/g5oEzlYfMqU2XhYLe2WAUxcgSLx2?= =?us-ascii?Q?Bn7XhsCiRE6KebNXL3xreKiAhGio6GnjM1OqcWo3oKtubD6D2Y+oW3qImF/2?= =?us-ascii?Q?rnxvT6tg8NPo339nE3WHIqf2UpumIjzhB3vKdHpwSNYc8kmuK/H4ddx+Hjgz?= =?us-ascii?Q?3mhQ1s2MFSZi7tnW0pUrFp1vfwlJyKi7nWYERHgdxhPXwJF75cf4Lq1WGw30?= =?us-ascii?Q?fDsTGClcoSCo83zwHu2KbRl2JaygOSZErftuluOP4i4VeJT5SBDzc+fZtSDl?= =?us-ascii?Q?G15wUxqHyfdvNiD0Js/MEs+R2R2yfcaIN1e2lRkCHUqHmAErymdVPPN2R42N?= =?us-ascii?Q?aW6xN3/oopypGPnr1Xvro6c790DI8kcz7q8jyFzH5/b9ru5vJjyxhBrD+L9A?= =?us-ascii?Q?h0bOZ0rDxd7aiz6Bed6PW+z9eNJXXG79/NRdntSJAUEFhL67p8Xpyo4mhXqM?= =?us-ascii?Q?zv2/1v4fz2R1WX9t5IhXO8NIULHM1mfF7Z7EKeSAtDMPDDodLPXq0K0dYZQT?= =?us-ascii?Q?MpN0visuu1ANkrqZ377/t0RpYoM3iVpLqE1vgLkT2nosxmyogbWJCaLUZGxI?= =?us-ascii?Q?lpetGGASnN09tPFdTwvERDA9TBQN2DJF8WhLH3J/nOKqY/TAuX/g4RzmfhuI?= =?us-ascii?Q?gmDW4FXPEQoesfNfkj6hpeULmitFj0gYex3Ghpj8UFL8l78aAz7y2FEmpvnb?= =?us-ascii?Q?5OBfshWmckLLE1CZorq9Ax3znTWYB+bOLbbk9KvqhyIc4dxyTLiIF5J5O+NU?= =?us-ascii?Q?c01TgouWA=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY4PR03MB2472;6:E+cTOhT+VQVuDLr6YfcSqDkw+on2IMeWoh3xqVA1MC5VlsQ1zxNSjcWav6u9sOnrKzHxMRZ76qxCgL29r2731F3Z4696M3OPO5zi72YTUUAsxBwRn/8+SDFTuK/q1bMEsNa3NGlMswrMZuyvP1fdbdd3i8DsZAr+eVH1UU43bJhbfemd3ADJDl4bFRIgtywBAdOZsEkx0L7tBe+EwS7WE+Z1ubRag5wM0jKDYmwfkLLrrpLOxuJZZU7CaTi7zSKCJGqZpM9ch2LBek8gOEWA4CPDcKIGqtupU/tG29MAK28H5GI2lDMR+EXaB60g2348w3Wqm4CR84CLbRHrN1Ymz9ip0KWLiAODE/WwedymGTlrlP7w76Y7uIDqRq/P5FdZA+aXVM9IXvzWabhiBkYZesWWjgt73gZcydmkVvM2bwghP5L4easC50mn6MIpXsZs;5:mz1FVSNTKb4dn4iOacTYcazWiPT0gPpJxQ35j3ojeOlAHEceVEZxQkcOGEOn+B9qMDmFv4q4t75GHSnS4+AhBIvI9DHAnYRck36PNm2BLJsuIQpaNBNx+9XOZtq/iSrsh9xfAQwFKUJXzX+FBde7RFexsUSUZvRvmX7fO+1LbqUxgWoRRqwLVbk98bxVE61C;24:Fz5IF3p6eYBNNqIYhFL26pXbqh+R9D7OtrWApHkoTjCRmeYtD4fr+F3zbFerqYKvfP29KWZCmXh9WArzmD0m+Ee+959Zk4tYotYTVeYneBM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;CY4PR03MB2472;7:Uqo4Dj5JEt6tPjZ2UMKtNEUEEk8DhM/K3PbEIWfH8MDqkBpTDIGKzhcy8cfnawccgkNWpfh9ya6lY78wNYjl2QtoXRbwj7TqZmraTng8D92/z0HTbkR2kBKM72s8voWXErgr3/OY5z778RZACH4jArmpWlOSE+fT+G4fQ1TQtoZazkkHAmz0fHV4IoyoXblpfFYkcx/ET85fV4hxKDlcjJxMREQJfrJvH3MeUMuC6fubELVsSf3NZZR9Y+ljQ6y8PLezaTcgDEgTcu6UwgPE0BDWnqLf9M1OKsopTj6L9j+oweDr0ZdvCdU0R9lBcP+2HoOKDioUOf4lJfq/ffI6H6dmsKrCHFt4Mo0crmCaz6CXnit2dzwO2rIzVpHirLd+YF8sA+bjztHL8XGhhl57lpMCQI2G4cLKkzxwZWkNLY+iKaKLZaCWYmZBaOLKanUFOMxVmtApZntOJl4FDXujdg== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jan 2017 08:25:27.7731 (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.158.2];Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR03MB2472 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Property "snps,incr-burst-type-adjustment = , ..." for USB3.0 DWC3. When Just one value means INCRx mode with fix burst type. When more than one value, means undefined length burst mode, USB controller can use the length less than or equal to the largest enabled burst length. While enabling undefined length INCR burst type and INCR16 burst type, get better write performance on NXP Layerscape platform: around 3% improvement (from 364MB/s to 375MB/s). Signed-off-by: Changming Huang --- Changes in v4: - change definition for this property. Changes in v3: - add new property for INCR burst in usb node. Documentation/devicetree/bindings/usb/dwc3.txt | 6 ++++++ arch/arm/boot/dts/ls1021a.dtsi | 1 + arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi | 3 +++ arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi | 2 ++ 4 files changed, 12 insertions(+) diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt index e3e6983..a68dbfc 100644 --- a/Documentation/devicetree/bindings/usb/dwc3.txt +++ b/Documentation/devicetree/bindings/usb/dwc3.txt @@ -55,6 +55,11 @@ Optional properties: fladj_30mhz_sdbnd signal is invalid or incorrect. - tx-fifo-resize: determines if the FIFO *has* to be reallocated. + - snps,incr-burst-type-adjustment: Value for INCR burst type of GSBUSCFG0 + register, undefined length INCR burst type enable and INCRx type. + When just one value, which means INCRX burst mode. When more than one + value, which means undefined length INCR burst type enabled. + The values can be 1, 4, 8, 16, 32, 64, 128 and 256. This is usually a subnode to DWC3 glue to which it is connected. @@ -63,4 +68,5 @@ dwc3@4a030000 { reg = <0x4a030000 0xcfff>; interrupts = <0 92 4> usb-phy = <&usb2_phy>, <&usb3,phy>; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; diff --git a/arch/arm/boot/dts/ls1021a.dtsi b/arch/arm/boot/dts/ls1021a.dtsi index 368e219..6eee0d5 100644 --- a/arch/arm/boot/dts/ls1021a.dtsi +++ b/arch/arm/boot/dts/ls1021a.dtsi @@ -627,6 +627,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; pcie@3400000 { diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi index 97d331e..04ffd66 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi @@ -482,6 +482,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb1: usb3@3000000 { @@ -491,6 +492,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb2: usb3@3100000 { @@ -500,6 +502,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; sata: sata@3200000 { diff --git a/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi index d058e56..902cc93 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi @@ -710,6 +710,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb1: usb3@3110000 { @@ -720,6 +721,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; ccn@4000000 { -- 1.7.9.5 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Changming Huang Subject: [PATCH v4 2/3] USB3/DWC3: Add property "snps,incr-burst-type-adjustment" for INCR burst type Date: Wed, 18 Jan 2017 16:12:17 +0800 Message-ID: <1484727138-3264-2-git-send-email-jerry.huang@nxp.com> References: <1484727138-3264-1-git-send-email-jerry.huang@nxp.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: In-Reply-To: <1484727138-3264-1-git-send-email-jerry.huang-3arQi8VN3Tc@public.gmane.org> Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: balbi-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, mark.rutland-5wv7dgnIgG8@public.gmane.org, catalin.marinas-5wv7dgnIgG8@public.gmane.org Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, Changming Huang List-Id: devicetree@vger.kernel.org Property "snps,incr-burst-type-adjustment = , ..." for USB3.0 DWC3. When Just one value means INCRx mode with fix burst type. When more than one value, means undefined length burst mode, USB controller can use the length less than or equal to the largest enabled burst length. While enabling undefined length INCR burst type and INCR16 burst type, get better write performance on NXP Layerscape platform: around 3% improvement (from 364MB/s to 375MB/s). Signed-off-by: Changming Huang --- Changes in v4: - change definition for this property. Changes in v3: - add new property for INCR burst in usb node. Documentation/devicetree/bindings/usb/dwc3.txt | 6 ++++++ arch/arm/boot/dts/ls1021a.dtsi | 1 + arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi | 3 +++ arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi | 2 ++ 4 files changed, 12 insertions(+) diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt index e3e6983..a68dbfc 100644 --- a/Documentation/devicetree/bindings/usb/dwc3.txt +++ b/Documentation/devicetree/bindings/usb/dwc3.txt @@ -55,6 +55,11 @@ Optional properties: fladj_30mhz_sdbnd signal is invalid or incorrect. - tx-fifo-resize: determines if the FIFO *has* to be reallocated. + - snps,incr-burst-type-adjustment: Value for INCR burst type of GSBUSCFG0 + register, undefined length INCR burst type enable and INCRx type. + When just one value, which means INCRX burst mode. When more than one + value, which means undefined length INCR burst type enabled. + The values can be 1, 4, 8, 16, 32, 64, 128 and 256. This is usually a subnode to DWC3 glue to which it is connected. @@ -63,4 +68,5 @@ dwc3@4a030000 { reg = <0x4a030000 0xcfff>; interrupts = <0 92 4> usb-phy = <&usb2_phy>, <&usb3,phy>; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; diff --git a/arch/arm/boot/dts/ls1021a.dtsi b/arch/arm/boot/dts/ls1021a.dtsi index 368e219..6eee0d5 100644 --- a/arch/arm/boot/dts/ls1021a.dtsi +++ b/arch/arm/boot/dts/ls1021a.dtsi @@ -627,6 +627,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; pcie@3400000 { diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi index 97d331e..04ffd66 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi @@ -482,6 +482,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb1: usb3@3000000 { @@ -491,6 +492,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb2: usb3@3100000 { @@ -500,6 +502,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; sata: sata@3200000 { diff --git a/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi index d058e56..902cc93 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi @@ -710,6 +710,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb1: usb3@3110000 { @@ -720,6 +721,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; ccn@4000000 { -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html From mboxrd@z Thu Jan 1 00:00:00 1970 From: jerry.huang@nxp.com (Changming Huang) Date: Wed, 18 Jan 2017 16:12:17 +0800 Subject: [PATCH v4 2/3] USB3/DWC3: Add property "snps, incr-burst-type-adjustment" for INCR burst type In-Reply-To: <1484727138-3264-1-git-send-email-jerry.huang@nxp.com> References: <1484727138-3264-1-git-send-email-jerry.huang@nxp.com> Message-ID: <1484727138-3264-2-git-send-email-jerry.huang@nxp.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Property "snps,incr-burst-type-adjustment = , ..." for USB3.0 DWC3. When Just one value means INCRx mode with fix burst type. When more than one value, means undefined length burst mode, USB controller can use the length less than or equal to the largest enabled burst length. While enabling undefined length INCR burst type and INCR16 burst type, get better write performance on NXP Layerscape platform: around 3% improvement (from 364MB/s to 375MB/s). Signed-off-by: Changming Huang --- Changes in v4: - change definition for this property. Changes in v3: - add new property for INCR burst in usb node. Documentation/devicetree/bindings/usb/dwc3.txt | 6 ++++++ arch/arm/boot/dts/ls1021a.dtsi | 1 + arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi | 3 +++ arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi | 2 ++ 4 files changed, 12 insertions(+) diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt index e3e6983..a68dbfc 100644 --- a/Documentation/devicetree/bindings/usb/dwc3.txt +++ b/Documentation/devicetree/bindings/usb/dwc3.txt @@ -55,6 +55,11 @@ Optional properties: fladj_30mhz_sdbnd signal is invalid or incorrect. - tx-fifo-resize: determines if the FIFO *has* to be reallocated. + - snps,incr-burst-type-adjustment: Value for INCR burst type of GSBUSCFG0 + register, undefined length INCR burst type enable and INCRx type. + When just one value, which means INCRX burst mode. When more than one + value, which means undefined length INCR burst type enabled. + The values can be 1, 4, 8, 16, 32, 64, 128 and 256. This is usually a subnode to DWC3 glue to which it is connected. @@ -63,4 +68,5 @@ dwc3 at 4a030000 { reg = <0x4a030000 0xcfff>; interrupts = <0 92 4> usb-phy = <&usb2_phy>, <&usb3,phy>; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; diff --git a/arch/arm/boot/dts/ls1021a.dtsi b/arch/arm/boot/dts/ls1021a.dtsi index 368e219..6eee0d5 100644 --- a/arch/arm/boot/dts/ls1021a.dtsi +++ b/arch/arm/boot/dts/ls1021a.dtsi @@ -627,6 +627,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; pcie at 3400000 { diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi index 97d331e..04ffd66 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi @@ -482,6 +482,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb1: usb3 at 3000000 { @@ -491,6 +492,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb2: usb3 at 3100000 { @@ -500,6 +502,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; sata: sata at 3200000 { diff --git a/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi index d058e56..902cc93 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi @@ -710,6 +710,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; usb1: usb3 at 3110000 { @@ -720,6 +721,7 @@ dr_mode = "host"; snps,quirk-frame-length-adjustment = <0x20>; snps,dis_rxdet_inp3_quirk; + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; }; ccn at 4000000 { -- 1.7.9.5