From patchwork Sat Feb 11 01:27:18 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Chen X-Patchwork-Id: 9567785 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id D34EF601C3 for ; Sat, 11 Feb 2017 02:04:58 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C049B285F0 for ; Sat, 11 Feb 2017 02:04:58 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B3F8F285F2; Sat, 11 Feb 2017 02:04:58 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2C386285F0 for ; Sat, 11 Feb 2017 02:04:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753430AbdBKCEf (ORCPT ); Fri, 10 Feb 2017 21:04:35 -0500 Received: from mail-co1nam03on0045.outbound.protection.outlook.com ([104.47.40.45]:16409 "EHLO NAM03-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752077AbdBKCEa (ORCPT ); Fri, 10 Feb 2017 21:04:30 -0500 Received: from BN3PR03CA0099.namprd03.prod.outlook.com (10.174.66.17) by BY2PR0301MB0727.namprd03.prod.outlook.com (10.160.63.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.860.13; Sat, 11 Feb 2017 01:47:54 +0000 Received: from BY2FFO11FD013.protection.gbl (2a01:111:f400:7c0c::108) by BN3PR03CA0099.outlook.office365.com (2603:10b6:400:4::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.16 via Frontend Transport; Sat, 11 Feb 2017 01:47:53 +0000 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; nxp.com; dkim=none (message not signed) header.d=none; 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 BY2FFO11FD013.mail.protection.outlook.com (10.1.14.75) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.904.16 via Frontend Transport; Sat, 11 Feb 2017 01:47:52 +0000 Received: from shlinux2.ap.freescale.net (shlinux2.ap.freescale.net [10.192.224.44]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v1B1kZwQ001095; Fri, 10 Feb 2017 18:47:43 -0700 From: Peter Chen To: , , , , , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , Peter Chen , Sriram Dash Subject: [PATCH v13 07/12] usb: ehci: use bus->sysdev for DMA configuration Date: Sat, 11 Feb 2017 09:27:18 +0800 Message-ID: <1486776443-2280-8-git-send-email-peter.chen@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1486776443-2280-1-git-send-email-peter.chen@nxp.com> References: <1486776443-2280-1-git-send-email-peter.chen@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131312512731632566; (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)(7916002)(336005)(39400400002)(39380400002)(39860400002)(39410400002)(39850400002)(39840400002)(39450400003)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(2171002)(47776003)(48376002)(50986999)(76176999)(81156014)(4326007)(104016004)(85426001)(97736004)(2906002)(5003940100001)(86362001)(50466002)(39060400001)(2201001)(50226002)(38730400002)(8676002)(81166006)(8656002)(106466001)(8936002)(105606002)(33646002)(77096006)(189998001)(36756003)(305945005)(7416002)(53936002)(5660300001)(626004)(92566002)(6666003)(2950100002)(7406005)(54906002)(356003)(68736007); DIR:OUT; SFP:1101; SCL:1; SRVR:BY2PR0301MB0727; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD013; 1:/Fmel3IoV5DzOk3CNT4Pw3Ul1uProz8ccw9eNXzYIWz8UVzn02dCpT7TBjFep97N7LGxckcdc3hNLFCPDbFCfVrB4vIUSIGiql5H2MjVp0SzT0yA7JXiiJPr52TUg0LWESAGWg98W38Ye00PdVRXW8c3hi4VKa/1pkDTM5yuQgANiqXrZAdUjKy7+ghtggRouwP3RL9VPWlQrqKfIZxI2gkkDCddksJGIynWDtkp/PciazPwFMH9xOJizDwi6PLK3Kx1rL5bSW+bRm0N7iAvmmV5W0nTM5gaoDQQAhLunKCTjGG7p9ctvVI1ZQyhgouSOPEEo+HIZF1z6+AD40Br4SS6puUXwCjxqrAZ1JUxpd8NOkEVpL9rk94c8OYlKZVPvdyNYBxJ/czikusSK5Ad+z0n6n7fnBbreyx0tCJEdUbF7Z9XoalXCuBlt88EH39AJnYrvTuDWeCD7AFnNHcURjp+P3ufln3mP+4C/qmvcoixd57DE9s1Go7EdYULrPpsGKztXUSjoVcVCxy6jkvhjuCYotiDsp2SOqvdRkEOfWirTUco14GNH25xtpdyRg3+IjXBmrGX5hCNwLTCooH0gRBKPbi+aBbTg+Fk+J1aYeBu4RkueJbC1UN/utYe+oZT8kMtaV9w43i/jVEM8oOlCeAYFUV+8XpKZqaHqlVjvYf9KwzAzb1XNzRlUVx20fMtyuD62bjTiJL2GwZIlE0ep8M+AvSMbeLs39C4O/worG4P4XAfyZBrzB/quCofUF+L MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: d9e3cab0-0fc4-4e76-c8ae-08d4521ffe52 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BY2PR0301MB0727; X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0727; 3:zoeenE0HCBs9XutIoqwxoMdl7jKBqp23034I+8MCSL60P8WoCVn+9NjwL3xaOYJfhmBq2DlYNIhBz7YRX1h3MItbsfnQsgryH4lXijByGdR/xWk+LnbLBx8Nz6q9G/ggwKqV1dvEZUHGLlz0/ur3xmh3un+NnhbKuNrpoVYze0e8a54uKfwLUEIJCx3rlNWN7AGq4OvYmuVbitbFTOI+Lr2Yyibvxwzp7K3K1gH7S/yEUbY/70vouJjGc59Ehfvh3dXynbvx8tkVb2RDflsS/MuGn2CQvnaXInXzA/RHTeDYkuSRL/UiuVTr2l4XioYl05Y40gzm0qVMChf+BCbEgK5HGAxNrXM8L7g+mLg1JuzM5mN89aGILoGUnOxHLu+0; 25:c24Ta1XaxPsj2HZrR4bBeTAn6GksaCzuX2qRxcPm80xAi+ohl2P7Zp2PJrv0DDg82SrHsr4OGu5E/0HQr5IrlnX34uVlAiLRvOz0pNtB5sjWt+jSraSTKz/eUGNSZR0IwvzOrybch4ukVsW3q6/vY/Ll4BBP45v8VMxUSNmWUzLIJ2Ndo8DvgQ98Y635AU6wm0mjMerGwXQw08mnVd2t+TSEcjtAtlBY7lC06RVCy6N1GiJf0XpiNXM8hjduOFYj75wde7KLbHoTclmowSXeELgsVIGCPS/AVrZZc5N8zqQ0+eiWVKkRBPy3JqQsHCnlm9EQYyG0XTvohscSomXZ7g6K2S73XOCsC+dOwB6a0PaQ3iM3bjQD0x+6sEXxjG9rEGUjI9x45hE/9JJocJYN9161FDKS9h4TaEraTqS755rJ2CMmof4rCD/NESrbngu8KFPcZ5z1tUW1JbyeOTu4tw== X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0727; 31:QPNbNUSxaoNk4J3AR/sGqUjihE0oDjYzbUxiCVaO+H870mY6nwtcBXxkgS9Nmfi342mezCIW2Kt0GlsR/rjGBGn87GKRwjRLCywoD9NKgrVLIJ+GNlP7ubE+i2ocTfYsGhNZAO9KdwCvBlSEehuFlvhZyuJUkKvb3KaPlwlt88QbwynjfOFp1WiPDpTjNbYYiqFl9LWsbC/G12dHZ4MLjBjijhItvgvg41pfoL0I3+Ew1i4RQYokJPGY9iYSe34CRkhfOe5lexBylW3/OJG2vw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(35762410373642); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(13023025)(13024025)(13018025)(5005006)(13017025)(8121501046)(13015025)(3002001)(10201501046)(6055026)(6096035)(20161123563025)(20161123565025)(20161123561025)(20161123556025)(20161123559025); SRVR:BY2PR0301MB0727; BCL:0; PCL:0; RULEID:(400006); SRVR:BY2PR0301MB0727; X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0727; 4:ZWMqNImHtCm/+4ANerw36PLyEYtlk7P6Sjwoho5U3np8E8ZZRg7Pq2UEejQ4d5McEwqFAeiOgPctX+Ep909d9vLBp4u5Js+67uz/r7NpuK6SfmP7Riz57xkWfAMUkgZQDJFaEckLDTEHnbnx/E2jMQxl2SGeCf0V4zzwrG3QpmtKxHYuU/NIHtKb1sRtJUtzdZNmbQQac04RHmYEdeGUgaMOel6wNhmf9QnTfZlqLZtwZ9vm7a/uIrLI3Al8am+aWAou1l688EMH6JI8mIGYNxxrBS/ZoT9gbmd1fUE/QSs9zD29bKNyEgE3pNvAdiC7f2aaxJDIirtngin6sq+QnYPhVCDHMkbAfq81kPrJAlbf6ARTsa4S2j4NeIfc8xFMr+ozzCAwUQsRGbFnsCbCLK+mxWY5MR1tYIbEj/08rveWqJpWXz0dEAzk7vUFTwdnocL18KfsRVFMrZMNb1LNu2GnxfEDhwDM8BPNfhW/8CTqFxoLSUl/Bytg9LrWwYbQF2hGXJJ4/OX+QxBJjjTgc7gFt4VLVxg016A5dlJTT8CQzbVxiVr9NPKluAPq3sRD1RduID+/1RFxRal1ojweTXvN5yD41uPxB9hfjK6TgRMrso1Q+ZpB342HalQbrnl4/fuQXY+RziIEnqTlpZ9uzNcWLUqnfmPwSd/HFAkz1pOtoBkN5vOYkSwOSjKQ/EFByP4aRxGl4w33icJyiYdDFCcuD/eTsdXEbezWOlfwhAI1RgOXMPV9IigGG/v46QeQltlcBuWqSwNWEMoYMQW6Og== X-Forefront-PRVS: 0215D7173F X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0301MB0727; 23:Ju5obeF3bZEwwRxUOHMYJwvU5wrfUUhDxKEZABA?= =?us-ascii?Q?JtPT4DfrsvKgqrA/cACz0y1qeYk5jt4jeS2ty7eW56szHubix91W1wqc9HQ+?= =?us-ascii?Q?IHOnPd6HBR20Nb4uaaWwesOlL3ENpEYtxnj9a+XtjoCDuCPiAxigRNgG0mbQ?= =?us-ascii?Q?ktK/qeJukqYycNnVckFo/oAJNxWuQShSv4bnlFyH649Uw7If+xxeMZSlCtEJ?= =?us-ascii?Q?sqfh4P0d9TmrO67NFvrlS05vza34WAj0wE62jZaxrUdJ3ZLzqDCfyZNPFWbi?= =?us-ascii?Q?X/aGbh/Dbn82msSze6XqPNMK4VXmtey9bQYMpT4EsCnZLL25zm18Gm+AXtkS?= =?us-ascii?Q?ChfCUoKB4OQY3wHWMl8Tqluu2aJ4AXdIJXi1nYpEgZPxwZe6p4vRyBSlK25B?= =?us-ascii?Q?NJ1WnQaBF2N2jRoiuqdkQvDOQmjqGPnGq0WdJFRCgq7+Lo0JKPNerEaRGCRR?= =?us-ascii?Q?9Muhw0T4Twvct7waMsmWAr3OCTrjD+eB/JcZJ+d/varcLq/FdYgfgG//dElh?= =?us-ascii?Q?NZ01M2QAe4+DBx29QJHEk+pAdC2Ez/LZ8SYO32Jy333kYOfJxJ4SsJVhEFtp?= =?us-ascii?Q?z02hfzDQFFNkaBOsawF1meXfP+iAN0K5sqrh0/vJBVBzMdgem03arU7i8v4u?= =?us-ascii?Q?/jJmhSqBnyUr0r+Src2zkvc9LLRJFa+8E/mlVKg4S8ZuGgLQck9YB0PaNE3Y?= =?us-ascii?Q?edexn6E37E4b/UZE99zqlA+pLHojcEZHjjvfzMHjGF1NnZIoyre8C4nuWVUI?= =?us-ascii?Q?y34dMxy/I4Tms47YnIzEo+W87JKrxi9Ut0VH0OSYx7+Zp+N18pib8QLpQt4L?= =?us-ascii?Q?RbMJeVbhGVV35n0N3MHVvjelELjpYbzjKBXfPRec0l0u4jPI4h9SOMHV+flt?= =?us-ascii?Q?nm0SKt47uB3l3RZGPblnnUmXC//rcX/ZCsJyFCmuP0u7k8NM2s5K7CMuTM1F?= =?us-ascii?Q?F4IkZc8K544KLdBXBZbO2jfmkFFvYLrST2IEmFFK3ccgHSEhfLEpbf/IP9De?= =?us-ascii?Q?OjRqrcVyTT5lbUgzzfX0tOYq3cNGdNeeC3qz4/UaMC1MXmnS2Fz1WKXV8sxt?= =?us-ascii?Q?Ds7iWbPwZHNm92DELPaq1Tdvamm+oUnHdEYcRurtnJioZ15JOvne8Zw2Jk9m?= =?us-ascii?Q?CnaNY+d2c8GlLop/55EBYkfoN5TxAQWR1wnbPsB5OryrB6Ky21aUT+uXTap5?= =?us-ascii?Q?u5lKlfkTv+nroo+JGGaxOUfWZYN9POapE+4ZkZXH2QF09JNNCV6wHbLXTv+F?= =?us-ascii?Q?WSRTjQFq8rZBtQpMhHB7fwQ7p757p3gyQg95/C2Rvsddy9mM6G0bN/HSpXBg?= =?us-ascii?Q?Nez8yFmyObRL6SMgsj9ruPT8+g2RkpZlDC4XnPye2uYNrQV9fOp9D1uN27zR?= =?us-ascii?Q?ndKWACQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0727; 6:pDb2sHSj/AhRsjgq7TPhP5PwQyT+qiDC2ZV8Kqai2fNhCISQYSaWJm7XCQDGqhYmbrQOMPEw47lKZSKGNRhoY3qCmtYmrc3Lxadyz2d2nN5LY82fspz1ExDkL4efMJjvt1YxO76CCKXp3w0uBWyp1A5x/dNmlXeTXZcpuWGWwdC8myje3zVU8BrU3PCp/CcU8foSBfZkk//RTjhtXgvhjCFDRqyheMJpU8noNJUbPiLpiH0awVwe/N3etfAASUjzenVxt27RuxQOLqRXqo3lAYBd+MN0x/GvBsYsJ5oxUhppWM9aGi1v1hm09Tu6R5P3JBeavriV4H15KJiz6oFs2Dc1CDfG6ZzypxiveGUp2yYkFicx0txxOK4cre55NlkBaqX7SJRWyfSnRulW00PJD3a9BPxPQwN46+xZ2EKgQLddsYx7TAx99XK5ju/3uK1h; 5:VCNSOTBxYlLVNPqYR9jHUnCwud9hCIaEVKJAUSewzfbiz1VTS14Lr4ZC60qlkyV9Aq9ceX5smBtSZiw1OplVFKcX2xFgQ6IOSyPlz7X29cbyOjgLMQPQsTjQil8oZGdsrsQumh/e75oXTLt7yObb8Z9+y/BShMiWCrWpLZiYFTRnFvjsAqQyD/p3kb84eSWH; 24:ZqS5IYduhO+6aNB6lun45jqe7OaXI8JS23eylAKySxaAXt1oLH1tTsh1UEkfeO39yRy17rKTz3OmrwacDw7qdgCsWpallD+QXRyBJDm7P44= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0727; 7:XLUsYT6nL6FCh8l8shf9r4seVqrsCfJZ073+hLIdfJTJQx3EC0GTFxzzknYR8b0l6MqBNZQzlgImvv3D3HurwUQScpJcOTfydF77chdugGvzi9kcJTVStupjnbmq4uTpxXvosFCQmsJdzd0BKGOD+E5EVrCtZ6NI8kf43XguUy3TnTud3XVv96VQJ9qeb89g3yT0xbz1axIfrqgaL3uLpiUsnw00z8lB/xurm4QKWyGQfdX72HaVhDtRGZX6M4Zw3PdubVUY0rUKcgXyxYnLSTZ+JaU0XWIODL4trKCNFpKEB0HYNc+TiTfgqmSwsKiVh5wZtS8Ck7RjSugo9DCe22XPqRo0dhynzXYuKexEEI82tBtsd6G+t53DLLBUpKh9KZVD/pTvqBXAYk6UB5BDUGaow6+waeIzAEcdsvdRyJk/jbikY371i5dTcjc1Pr7gyvmK7d1M3inBIYaWGNJr3b/0jxTQ4GC3q4P6yr9U4zcWHXgq9ACX/mor1cro/9aPCQp3gL4Ymps0BpeDA2QPP6FY990aI2sRuiZpEvd/1S3iptRiUu0/qIelnNDWrbK8 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Feb 2017 01:47:52.7420 (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: BY2PR0301MB0727 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Set the dma for ehci from sysdev. The sysdev is pointing to device that is known to the system firmware or hardware. Cc: Arnd Bergmann Cc: Sriram Dash Signed-off-by: Peter Chen Acked-by: Alan Stern --- drivers/usb/host/ehci-mem.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/usb/host/ehci-mem.c b/drivers/usb/host/ehci-mem.c index 4de4301..9b7e639 100644 --- a/drivers/usb/host/ehci-mem.c +++ b/drivers/usb/host/ehci-mem.c @@ -138,7 +138,7 @@ static void ehci_mem_cleanup (struct ehci_hcd *ehci) ehci->sitd_pool = NULL; if (ehci->periodic) - dma_free_coherent (ehci_to_hcd(ehci)->self.controller, + dma_free_coherent(ehci_to_hcd(ehci)->self.sysdev, ehci->periodic_size * sizeof (u32), ehci->periodic, ehci->periodic_dma); ehci->periodic = NULL; @@ -155,7 +155,7 @@ static int ehci_mem_init (struct ehci_hcd *ehci, gfp_t flags) /* QTDs for control/bulk/intr transfers */ ehci->qtd_pool = dma_pool_create ("ehci_qtd", - ehci_to_hcd(ehci)->self.controller, + ehci_to_hcd(ehci)->self.sysdev, sizeof (struct ehci_qtd), 32 /* byte alignment (for hw parts) */, 4096 /* can't cross 4K */); @@ -165,7 +165,7 @@ static int ehci_mem_init (struct ehci_hcd *ehci, gfp_t flags) /* QHs for control/bulk/intr transfers */ ehci->qh_pool = dma_pool_create ("ehci_qh", - ehci_to_hcd(ehci)->self.controller, + ehci_to_hcd(ehci)->self.sysdev, sizeof(struct ehci_qh_hw), 32 /* byte alignment (for hw parts) */, 4096 /* can't cross 4K */); @@ -179,7 +179,7 @@ static int ehci_mem_init (struct ehci_hcd *ehci, gfp_t flags) /* ITD for high speed ISO transfers */ ehci->itd_pool = dma_pool_create ("ehci_itd", - ehci_to_hcd(ehci)->self.controller, + ehci_to_hcd(ehci)->self.sysdev, sizeof (struct ehci_itd), 32 /* byte alignment (for hw parts) */, 4096 /* can't cross 4K */); @@ -189,7 +189,7 @@ static int ehci_mem_init (struct ehci_hcd *ehci, gfp_t flags) /* SITD for full/low speed split ISO transfers */ ehci->sitd_pool = dma_pool_create ("ehci_sitd", - ehci_to_hcd(ehci)->self.controller, + ehci_to_hcd(ehci)->self.sysdev, sizeof (struct ehci_sitd), 32 /* byte alignment (for hw parts) */, 4096 /* can't cross 4K */); @@ -199,7 +199,7 @@ static int ehci_mem_init (struct ehci_hcd *ehci, gfp_t flags) /* Hardware periodic table */ ehci->periodic = (__le32 *) - dma_alloc_coherent (ehci_to_hcd(ehci)->self.controller, + dma_alloc_coherent(ehci_to_hcd(ehci)->self.sysdev, ehci->periodic_size * sizeof(__le32), &ehci->periodic_dma, flags); if (ehci->periodic == NULL) {