From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1030275AbbE2P6m (ORCPT ); Fri, 29 May 2015 11:58:42 -0400 Received: from mail-by2on0058.outbound.protection.outlook.com ([207.46.100.58]:48832 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1030191AbbE2P63 (ORCPT ); Fri, 29 May 2015 11:58:29 -0400 Authentication-Results: spf=fail (sender IP is 66.35.236.236) smtp.mailfrom=opensource.altera.com; kernel.org; dkim=none (message not signed) header.d=none; Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=atull@opensource.altera.com; Date: Fri, 29 May 2015 10:54:42 -0500 From: atull X-X-Sender: atull@linuxheads99 To: Dinh Nguyen CC: Rob Herring , Pavel Machek , "Arnd Bergmann" , Steffen Trumtrar , Pawel Moll , Mark Rutland , "Ian Campbell" , Kumar Gala , , , Russell King , , "Delicious Quinoq" Subject: Re: [PATCHv5 1/2] ARM: socfpga: support suspend to ram In-Reply-To: <5567D9C4.7090903@opensource.altera.com> Message-ID: References: <1432847977-18880-1-git-send-email-atull@opensource.altera.com> <1432847977-18880-2-git-send-email-atull@opensource.altera.com> <5567D9C4.7090903@opensource.altera.com> User-Agent: Alpine 2.02 (DEB 1266 2009-07-14) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" X-Originating-IP: [64.129.157.38] X-ClientProxiedBy: BN1PR08CA0011.namprd08.prod.outlook.com (10.242.217.139) To CY1PR03MB1519.namprd03.prod.outlook.com (25.163.17.25) X-Microsoft-Exchange-Diagnostics-untrusted: 1;CY1PR03MB1519;2:RKGcVjoMZ/+Mm8fyngqVS4xdakt+Q/xFMRb7AvZzInZEiqKOKqcUJ1qXmSgAfqtJ;2:r38RwGrMQb3DIWxG4MknnH76csqRlEVj0sa66OOsiPSwq8LOX1aRbZwwolcy4hKp6Hdck0rDoILwOlKpi0eTnueo4+2j4DNEAFn+j0JvIIbwgFQ3uqc1g+M8fZtWcN3qLwobGCoASbzPxStt6WB2Qw==;6:dDxrqNzCPie3P7hb6iLFDzyOGB3FSNgR3NNBOzwyR5GxQBF4jedADPWaFwWckWieh5yNZABOpu0mOEn8v33N84qersjy5PubQ7HArUKA4zoyPvpynj4m1Tngnri2Cy6d3BkZRI7Gv+D1XlW5r4JHyg==;3:dYejM3F0/fMf3RSSJVsZW5meUK3hX5l4dS5K1LEe/v7f4yjh1wdGh4YOWKKu7Zbi+Jwp7MxPHzbx6yLvuXinFj/zRicsKnkCkTyMAW+Yz8BUl2BL30hPwKmCkb+NcYk/nQc5qpF/p4UAtbjK3IAIudyMgLqhVO8XNdoRxFZlUvMzEUf2+i9yJJjkkv+LVFnwKW7tfdnpzeFq4Gp7Y46I2IH6Y08Zh4/sZd2GiBDplM6DRU6HAIA27vLusxaLcRxYCaogYRB8wl3Ir2PsInLb0aBqE4DOLyoVQHf18pmSo0AG1gWfUR9gQPDpqv6XaLnW X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1519;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR03MB041;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR03MB522; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:;UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(520003)(5005006)(3002001);SRVR:CY1PR03MB1519;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1519;BCL:0;PCL:0;RULEID:(601004)(520003)(5005006)(3002001);SRVR:BY2PR03MB041;BCL:0;PCL:0;RULEID:;SRVR:BY2PR03MB041; X-Forefront-PRVS: 059185FE08 X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(6009001)(199003)(479174004)(377454003)(24454002)(51704005)(189002)(86362001)(42186005)(53416004)(50466002)(46406003)(19580395003)(69596002)(19580405001)(101416001)(87976001)(83506001)(189998001)(92566002)(86152002)(50986999)(5001920100001)(5001960100002)(5001860100001)(5001830100001)(81156007)(4001350100001)(97736004)(62966003)(4001540100001)(77156002)(66066001)(40100003)(106356001)(76176999)(110136002)(47776003)(105586002)(46102003)(64706001)(54356999)(2950100001)(23726002)(77096005)(68736005)(122386002)(33716001)(4001450100001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR03MB1519;H:linuxheads99.altera.com;FPR:;SPF:None;PTR:InfoNoRecords;A:0;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics-untrusted: =?us-ascii?Q?1;CY1PR03MB1519;9:D2lyfX/bPizKz8bb2N4HrxBXnB+/+l++xKu8MJxKQG?= =?us-ascii?Q?0BIFdgRvRm/Rg0JSpQjKsp37E+InM65tOesoFsJDix4wLzZ0wNinR29yovso?= =?us-ascii?Q?dwnkbBEIDUV2SbduKfFSCwNmyR9gDQwMPcXkX9D6C0KOixMiJra5XmPVbPZE?= =?us-ascii?Q?S2xDCjBeF+jF7snvhFObQM1Pf3qxGXaxLx0tip0CbUZCyYA+e27nwd3m6C87?= =?us-ascii?Q?0aVqJGRNMv6d0+CIHzbX1hc2Yoo0Ot3PEBVtnVQZj/58BvBn0LiZTREzD7Wt?= =?us-ascii?Q?jO3bt7s5R2nvvMZYSYHzR5YacbC7/UruyyoEYNzCPqa+Ibl2Iyin/fqACxen?= =?us-ascii?Q?YT1v5dOE3ZZ7EsAf/pUm9Xqj+BFrvsfnYnmCA22ul6HNrF0OAs6unVFy9V0p?= =?us-ascii?Q?PC4rIs6SAWK7oMNaaIFqzrzAv7QnCQAxE4Df8ZoJ9JICAFpzrk3TdFFWNASM?= =?us-ascii?Q?+oWRio6wXRXePApRQyxn50dOcJuyEFaQ1BxpG6Fu4RRGEzxT7DUH3ONLS1S/?= =?us-ascii?Q?LY7oGy5vdWWJUaFhEE9N/bY8TxWAPCF6IWuldXfav/JjC84uOq5tjnz1qdXV?= =?us-ascii?Q?KhT1Tzej0JC0RE83k3onk4faw0Fvj2/uKJ3yIRO5FIPID4mtcMTAwXe5T2wj?= =?us-ascii?Q?KCdWeGynGjlqhW9vBKeoqavYPL0yUrmuOseSnLcWGoh2q99hvZaqXesXlNQj?= =?us-ascii?Q?24vyUU95ulwebn6rDyevDTS9Lv+RGiH/XRoBidkdSh6dcBG9F3s4Y8uD13oT?= =?us-ascii?Q?49LQfRztYFyGmHtxK5bSCdCHQPtXO9bNoMo0qCOxBG6Wc9n3v0/WToKyGFn5?= =?us-ascii?Q?DMtK+RKrHMRVSiK8CYnLnO8KCFW5nGLoBNZkgJQvkZ7H/u6/dy+Dq8R/Rr+r?= =?us-ascii?Q?/78kk0or/NlJ9UfWhoa/heNKKsBZKdMWb5Bk73zuo5BwLUslEoy/pa0r1IT8?= =?us-ascii?Q?ec0vF27mb6jD4N9o3Jc2isFKE2bpDF+39aDlTvQ31rubCl1Fn/YecYSRx/U6?= =?us-ascii?Q?pii0d/KY/Y8sU+6zOMCS38Jq71E7npymprPt9V9zhV6xTcDggATUfepTC9kd?= =?us-ascii?Q?jQRr54/Woj7YL7mZ/gTEZsbJ+VfYuxxYzEeMZQXI6UyU0/RuN1jZ1BfYZHja?= =?us-ascii?Q?eTml/vE/8M4vZjjQ1TY56x05gTsSlF0o3EPkoQjGQ+zzXMlySJ0ZFaY0dcLZ?= =?us-ascii?Q?p80WXFUnMrWD7YPy6mBJPuyoUz26r1mL4D0lgQ4hUSq8JlfrBr3/CZ17fgF0?= =?us-ascii?Q?wR9bI06u50skYw1sJBMGYyOOmnf56Ic/pBXfxIs2qKZ/DNCIGbKAMp9cc/bg?= =?us-ascii?Q?=3D=3D?= X-Microsoft-Exchange-Diagnostics-untrusted: 1;CY1PR03MB1519;3:oBTZVs3glt6A+0tEHzo0gZCEyxZVqoQfOL+TO2bv8YcFsTJQGvEYdkJ7ba2ADZ+aT5nM1laRvA9s8ADIr3w5SQerGEHgG6FjUucBflemEW7asynuIejXxzhN+NENj6lk4PQN+Ec75VMsE7Kdw+oWzQ==;10:Fc8Z6vxlTM/tSqAGJnw2s7OKoX/KC/Rr7jVkdSkb8lyuuzTAL24nrwUx0KAklxMXjeOYyVF/SgUTF9bo6Yz0nt/6wRdwtp3StNYLpcHRe0k=;6:6F3nPKUIkY1sSeDt6FHFOpn/srzM7uVYkiUUyhQNXB3flOvA/+peZzn2vALEJngYDMVLhWaOTx80m7aBK7a2uaMYKAiEfgHID8kbhPKbwJxWol/TnKG7l67zIwRq2NaRKXB9zjZF/xuqaWjICpvw8w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB1519 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: BY2FFO11FD052.protection.gbl X-Microsoft-Exchange-Diagnostics: 1;BY2FFO11FD052;1:jNVxIOJPFMqGp5yEjjrnsLLhtzceyd4HDC4Pt8tNY6iTCqOyks10OjPwNsuAfifPfjLj7B+k/Zpe175kYXFCAtxjSnsAIgJti1Y2jhlirDr6zio6oQSooHsiSnce5dn82ORKBzzCxS4EOk0hLVkxQcNeR1N14JnUlBKXXf0/LPOLVfUSHTB7KIKVDRqGSBVqxN+VO/0RA37scctsnU99Qvl9AT9ytTx542ptvkFCBhU7IBY6+JVTka33/aHVxDZLHehfxnjC+jiZ87uTK047OzBsPINOkJaCX5cU1dll+2Y69XgYzQM2jtBNLWDMJVgE X-Forefront-Antispam-Report: CIP:66.35.236.236;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(339900001)(199003)(51704005)(24454002)(479174004)(377454003)(189002)(83506001)(23726002)(189998001)(53416004)(5001860100001)(92566002)(16796002)(19580405001)(5001960100002)(19580395003)(106466001)(66066001)(33716001)(64706001)(6806004)(47776003)(50466002)(86152002)(86362001)(85426001)(76176999)(54356999)(50986999)(87936001)(2950100001)(77096005)(68736005)(46102003)(46406003)(122386002)(40100003)(97736004)(110136002)(5001830100001)(4001540100001)(6070500001)(77156002)(62966003)(105606002)(81156007)(4001350100001)(7099028)(4001450100001);DIR:OUT;SFP:1101;SCL:1;SRVR:BY2PR03MB041;H:sj-itexedge04.altera.priv.altera.com;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;A:0;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB041;2:I48L9CCndjt2U0YyeKALKSE3FzixRNgFGzZH2C0fumT8OBJC7FUGQndqzejx4Bki;2:J6JPvxXPZAvOcJ56k9g9SI1uLogrMTfDcc7lJz/QKUAaZ0k1K7Ki7KFSt+3emuv+RFnBZPb8XCtF3dZy4vxnp/lH2kaIVV7re/MBQT77wXlYQ3L2lk9pCoQPK4HDys2DmkxVXz9MH4pJKLYU3Qxe1TVhqmKdj9w0VST+YOibC4b5riKSoXz4ANQ9aGjC4pu5HauU+pX9tp2eoHaYl2xwjx44QMj2JTg7OFIzr5jByfo=;6:mw3FfyW52GMzcPaslhZbjGaZhqK9eN/dAxaEbcA+o6NM6+KdrHEcRGUrzDxO9ryYMStOpOtEFcF9u4UioEzFg6mcCzG3o8+HfMQegy4ahNqIIO8PZxPBJ6poOiwo0lhrofsOGjoMBgBCjEqjb0D5sg==;3:uH35iIPeyzI/Kf7EG3kvIZJFo1yJp46TpKLbIMSsWnQ/MbD17QXy4RZSa5JBMrFs26iTVILqmrTfs31LCqhc4A/8ucyEmes4Zy2kHvqKvlA8SM5qs32vOeyV0mS2FWzP3KIkrnlRwR3xhDPekm3q/mSyCAeewr9eHymRbUvBU39wBDw2U9J38yGCj5TQlU/g+HDj5TvLkKIf9p9X3CDwFb4Q0WYHVgAeLwHRw9EK7yz873hwXnejjYiJ1hLNfSg60nn17O+1SPNSwth+s42WtLg70S5EBMhzOIr8haaQ09ESx3V0POtwI+oFBKY39uZQ X-Forefront-PRVS: 059185FE08 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BY2PR03MB041;9:mcy1bAYGBTH8S32rYBeaKzbdxZ4FRYUkoGw08tIdDa8?= =?us-ascii?Q?RjkWZumVfTznjgguL+GQNmpY9TFdvsBN1hQbWPVatM6TPaZI2wPadrEMZsG4?= =?us-ascii?Q?hfEbf5kt2zm48GtrLQmJSuHaSexaR4zf6Io+1MsDYokJDKp8XcSkfxUAtlYC?= =?us-ascii?Q?OIiWM6zZ0vrdKXrtD0AyXTWv0qh0Kgp6IJJ6vbkwZVyKn91QTzmlY/w65Uqf?= =?us-ascii?Q?YZuw3rnCfRmB9feYpo/R45fPy4kZK6S4hqK2fCC/jzM9dzo4Vhk/Ef6cRRqG?= =?us-ascii?Q?rWF6HgdZp+ZzpezU3WjDr+d+nmIrG/3KWV63VqSidsexWG66bjDlTXMcAxY4?= =?us-ascii?Q?r2uAVpEzd0VMUyiDhXQ+5u1RqzZPfd8dJLU0X0/z2/EwBWBiSd/UYuzfDtxj?= =?us-ascii?Q?cnw0O7lD6Qi9RxeDvVjJ6tFSJrZOQIk8xEtc+LSFVU5SUvv8qgV6GEVX7D4u?= =?us-ascii?Q?i/9bLf8m9w4s0uPNS5M2jxgVd30xZNOsj+3387pj9nvh7hQwslEQtUv51j0d?= =?us-ascii?Q?PHc59AZf61yCYen/UfiWT0vGjytLn+SiQhlJ/hv0bZlWqc4+sD7s7gAZUdDH?= =?us-ascii?Q?4zFE4uivzNB5jDI5koK4TVP5yrhh3sMBYPHMAaLDSc61Q3JvRKaQTaaNKbxM?= =?us-ascii?Q?CK+bpYPrZi/yJCA72LXqceF0D8L0vQbMlqtqFLMCku9A5D9h+MwokG5yjNme?= =?us-ascii?Q?wlNc+ZPFBid8YkGlGPWKBwzF4FGGXv2sNu+8NQv+Z6D2TdxI6KdhhU3XVa2u?= =?us-ascii?Q?VVLm/WsVDxS/nFX1EzFH0gzKWIwkxD7KwZ0KETkyOIQJ1HWCvKwtUjF6Zw82?= =?us-ascii?Q?+hjXX5wQObPfA+xNxBZqxzQWSlsUKQ7bv9pe/MHNTw0D+cTatEcDb671Acw+?= =?us-ascii?Q?WFS5n0DhPAVQs4HqO+d2I+KsZw3nAeuNuxNZxGRL1Ww7HR7VlN2D8BRI/+ah?= =?us-ascii?Q?rSCIfeuD4Ik9xSq3CqeO0/qrZCZfzkNzXMlwmjYIEJcAk6dNiUk99Du12yWT?= =?us-ascii?Q?AuP4AEWsAWToyCybygxkR3HgmqgaectaQmaHXzab8HB0ruvlG6EZOe0jbrfs?= =?us-ascii?Q?zc3KJjG0DL/S/wXJfrq2Dv3rCI3YI4a4OsjjJqhEa2Z7AKdCTwhTICKZENT9?= =?us-ascii?Q?ayroHu1q4Mmra1Mt0XjnSjacf41fi1nOgpg9Z2Ei0yJCnJ+W8C9e5pM2NwOs?= =?us-ascii?Q?wTipVe05lsuHliR20muyJojXPkC0HtAS9AOJ2KNcJy6FUYjvhKV31WtPMpjZ?= =?us-ascii?Q?whxk/0JpIckNeqP8X2PCcZh/myFUVsWe4K8423mKP0SkJd7eHQQkUJ5SFlhQ?= =?us-ascii?Q?9zmZPoHUpP9amoUmJwFl73FFgB+1tEKEdy+PwFPaB?= X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB041;3:v+2cUgaTy+qwa99Vtl0mUhwsndeU7jK7dHAQ7E8u2xrOlq/mIamLjSR8FHyAWNlwSRVNepTYY/PSf6y54bo9h9tcfh6u/OzcvBUbTmbXDaOXT/ixewrsv2EatJTqizD2xTOQ32lavmfnzys+ZzGk2A==;10:t1YbYtOvHAkHCckBNcnqwP9M3okYIKZ8Z78SSYlNnkEojyP/P77JsLRVsyb/krIYXB0PAHyGHYCbgzTBJZ0e0L0j6CSYJZY8r9bnZ9mCQUQ=;6:dp/X1ULxds5ZZ48h/cGMqPXkUv3mP5J7lfoAeKzx2H7w9XaO4t0OPoR+00uJSv25gFyiUuUonkfTMcBrHSFeAmz1yAWroaPqz7iOnxvWWkwGWc34pTRkLpbQJPo7iQUTqG4853zeHxSHY+JiNYbCVA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 May 2015 15:58:21.9994 (UTC) X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fbd72e03-d4a5-4110-adce-614d51f2077a;Ip=[66.35.236.236];Helo=[sj-itexedge04.altera.priv.altera.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR03MB041 X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB522;2:1VX7FKb7Mu9dJUnW/Q4+sa4nozwAFCuQXoaEET6ckzAFBOBvN7xwgy9LKhRStQMg;2:tFHNcuUhQSKNxRNMLZPxSvg6gHpVNbOAVE5eeSql+m7Ix/cAncIUsv9d3VsOn6/AzBqBoQ+ktgOcR9cEAbE0/Hb5vlO7u7nD/sMv0ekC2Nyye7gtGzRXkCgkI8jGCQuJGIsl5Euqv4KF+bkmfZTZo+uTdyeoSDYKEa4KL4A+w90+LxjJlSwMBI+7/fwE2Nk6cXBvXw73dY01bGrWfi4cEOVmhok7Yt+PwYq3p2Etg0c=;9:119dw6du+8orZn8VLLDJNfUtJdDZhhypo+i1Yb1oqg3iVzVUyL+d/bHNqYVB2oRk73JEeDWxVFj0flwTa+IDEWBZXwxISLJLrFEj9u7jQR+P5TgqSYdXomZcWj0FSwMNyZ7eRFC9QAtqfSInaBpTsQ== X-OriginatorOrg: opensource.altera.com Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 29 May 2015, Dinh Nguyen wrote: > > > On 5/28/15 4:19 PM, Alan Tull wrote: > > Add code that requests that the sdr controller go into > > self-refresh mode. This code is run from ocram. > > > > Suspend-to-RAM and EDAC support are mutually exclusive on > > SOCFPGA. If the EDAC is enabled, it will prevent the > > platform from going into suspend. > > > > Example of how to request to suspend to ram: > > $ echo enabled > \ > > /sys/devices/soc/ffc02000.serial0/tty/ttyS0/power/wakeup > > > > $ echo -n mem > /sys/power/state > > > > Signed-off-by: Alan Tull > > Cc: Pavel Machek > > Cc: Arnd Bergmann > > Cc: Dinh Nguyen > > Cc: Steffen Trumtrar > > --- > > v2: use Generic on-chip SRAM driver to allocate ocram > > rm fncpy_align since generic allocator handles alignment > > check __arm_ioremap_exec return code > > check for NULL pointers > > add a comment regarding sdram controller configuration > > v3: fix renamed #define > > propagate socfpga_setup_ocram_self_refresh error code > > v4: Kconfig: don't need to select GENERIC_ALLOCATER > > add CONFIG_SOCFPGA_SUSPEND > > make s2r and EDAC support mutually exclusive > > socfpga.c: add sdr_ctl_base_addr > > return error if ocram not available in device tree > > update copyright years > > v5: remove compile time dependency > > edac driver will prevent suspend > > don't configure scu standby mode; done in enable_scu(). > > fix comments about required sdram controller configuration > > --- > > arch/arm/mach-socfpga/Kconfig | 10 ++- > > arch/arm/mach-socfpga/Makefile | 1 + > > arch/arm/mach-socfpga/core.h | 6 +- > > arch/arm/mach-socfpga/pm.c | 149 ++++++++++++++++++++++++++++++++++ > > arch/arm/mach-socfpga/self-refresh.S | 136 +++++++++++++++++++++++++++++++ > > arch/arm/mach-socfpga/socfpga.c | 6 +- > > drivers/edac/altera_edac.c | 20 +++++ > > 7 files changed, 325 insertions(+), 3 deletions(-) > > create mode 100644 arch/arm/mach-socfpga/pm.c > > create mode 100644 arch/arm/mach-socfpga/self-refresh.S > > > > Which branch are you basing this patch on? I got a trivial patch > conflict in Kconfig when I applied to arm-soc/for-next and v4.1-rc5. Based on your socfpga_for_next_arria10 branch from git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux.git > > Also, I'm getting these sparse warnings: > > arch/arm/mach-socfpga/pm.c:86:25: warning: incorrect type in argument 1 > (different address spaces) > arch/arm/mach-socfpga/pm.c:86:25: expected void * > arch/arm/mach-socfpga/pm.c:86:25: got void [noderef] > *[assigned] suspend_ocram_base > arch/arm/mach-socfpga/pm.c:108:52: warning: cast removes address space > of expression > > Dinh > It appears to want suspend_ocram_base to be void * instead of void __iomem *. Alan