From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752887AbdGMQY6 (ORCPT ); Thu, 13 Jul 2017 12:24:58 -0400 Received: from mail-he1eur01on0126.outbound.protection.outlook.com ([104.47.0.126]:2649 "EHLO EUR01-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752849AbdGMQYv (ORCPT ); Thu, 13 Jul 2017 12:24:51 -0400 Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=axentia.se; From: Peter Rosin To: linux-kernel@vger.kernel.org Cc: Peter Rosin , Dave Airlie , David Airlie , Daniel Vetter , dri-devel@lists.freedesktop.org, Daniel Vetter , Jani Nikula , Sean Paul , Lionel Landwerlin , Boris Brezillon Subject: [PATCH v5 10/14] drm: mgag200: remove dead code and pointless local lut storage Date: Thu, 13 Jul 2017 18:25:34 +0200 Message-Id: <20170713162538.22788-11-peda@axentia.se> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170713162538.22788-1-peda@axentia.se> References: <20170713162538.22788-1-peda@axentia.se> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [81.224.168.30] X-ClientProxiedBy: HE1PR09CA0048.eurprd09.prod.outlook.com (2603:10a6:7:3c::16) To HE1PR0202MB2556.eurprd02.prod.outlook.com (2603:10a6:3:90::9) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 8424d92c-d296-4f3c-1f77-08d4ca0ba744 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(201703131423075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:HE1PR0202MB2556; X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;3:nSQeYBtTsaUlSoafetlaA6tU9n9TQ8M8yGpd+xPQADaQvqy8ETKCeXPVgLpDBBBXjyeGIZlWxtJJ4DpFgO9XWdhEdAWWG4LNivgVUnu9MosFcNzMODf2YA8Wf9Azs1nWwSRw+U0KB+eTpLNFilYkqpuzVEscNNnV3MZTKFYbsyfGrViWlD0nJYNCiPdvZ8ItwtET6XZiPtgaFmlHXU6o2KCxew/fN3+ZVmVZ39kkhZxWjYTNy6lnB+9X/kR7vZuHCTKO2RxDGyAHksYqjJou9qkY7YoBQubPN5fAuYpsL1nME/5afTFNd2VvNQvI4eywWI64/V3JRtIg1S+CJfIKMWgh8t9bb9V68Rny5JxWk3z9Swy34Y41WMs8+MNu4eq6zAtcREIde6I2beGiMD6cL0SAK4nVZay7Td/sNue/FbHlW4okCZy/M5GdI245nK8244VbihS091viyWBDhcStDr7GC9cG+PSI0xDBJjPugNrY0SEHx6Px/biVHa74Kgwsv5EzeyjJ126MOq1hGi/tHdLls4TKf5IQSLKOAtxfNCNfO6aUQ/c23Y6Z9Nrb0K6bVgQJSC+cr76761ao1Q+WVmwm+QIql5+xQ2cyvu3Zcd63D7+z8Xzc/N6FJv2aLWtC2xZJce3/AXBhYc0EGtQKB9ATVab9FMln+r8OhU1nnPsCsHUJPr90bfseld17cuqUMtjkCadkZEeFQWGUKHKwvQ== X-MS-TrafficTypeDiagnostic: HE1PR0202MB2556: X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;25:RG4/l2k0//VRDPFRoPjgLEFU/ilTuKQIrFbpWcyTIWVff3gyJVZSpCfqQ5jcTbvNWhjiHw5bh/LCAAyB5VkYLyFa+mxMEz0hHpMt5WoCv4agfYF4R1bmxLU1xCWuF7hfQHmaLvh6vQapzJ9K7I96DaGm1WKUv48J3jc9NhSNCTBUaEBMvk6wRfjlbGnC+2TWKfHWMOpl4kH9YmzAqhC3/jqMaU+d/UqFqdhvm1hbX0l5W3BNebVj+9PE23ZrJReKwN/fJiUs5XhI6PPr275TA/YYP6I4DWnsRHgly9Uhi3SmzOtzdJZqY2uFSL4Q4Gho+KUqW6o/XgylcUC3QJN+YCI5X9pHSj9Zevk7AEP0xo2ql2FYJCI1Ik2UQhNVcIK7P+NBkB3hEtjN0wolwPZUvnuJvCof/qaFvqRVM+MP6V++8dLe5xdOhDUav7HD96w4W5WyifCvQUy4p9aVimvyvSxd1B30YT27o/euczZuIwmDLIUDtZJhFB7eBpgYome/B0WIR8G/Ax3NXKr9CQlI5jXHL//EtPGnYyAWbcao59cfT9Fdo04qIYbaeK6vfYLsM3/NnhmeGFzJO5AYPMFeIBGx9ipkN6ZpveJzdajiFPtSeKJPB0uzjQ0ojnvO+pPgbbXiDJ60Uz2SfxWLVSQO0wyoUj/4maIEr25w3JUfE2ybO1oR70udmjZVlIwmU6/XXGRIAk6zZDndIseS2CE6AlXsJ4cOTwwPRaqXG0ImeHoY97sG+KIv0JrIMjKvdRbK+ZddYk9C46TzXOIqlzKFvKYFB3GX7QvCjD/Y+E9VvPJpnsQ72wB4pxML1B77eWI8Qiv1F1aj3Uc/h80P9THZsgGxqLMyJY/hRcpyMPZroIFr0OEf3erpf9NJ8wKmPyxNxGS10tx668G1xkt7fyyJhZG2Lqov/KxWFtedjbmD3fg= X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;31:7E4iKNfhqtBYKxgaquVlk3KHEj0AivNakaruMBg6p1l6wg5LSeCJJ8uduT4PBgnDV+O8gNjXs1tK2o6735AsdDrdDbzvJyxvVGBG7YL5gJz4oLjHb8H6ylNpNOcO/e/hu+9mO8Xe4Jid1peRFcytxsWYjmRb+6gR7UuXZ+5+MVKJHi69GcxXcyhYuD/dARwlNDqHMBgxTmMHvZSQcqvsT9+7JyANUy+WwP6Epu+sl5pwLY2OQBN1KWc8UZ53hbJpuTqAXCrdPgkMG+7G3jfpPR7F/DRIT7P1zGBj4Maxt7t0YgN0LhBERNe9bl/TsOJ8RfYuL+yGlp4Y8s6fYP9gvni0VLLO10SxEptfbbhLf2+iWHTH39YlkYYelqY9OWwXJoIyQp9WaZkwvNwAGqtPegtYh9kpGqSh+fUJQWKYnSztv0ppKa4EK9g7FsO2p9LrQvGhlREij/XG/UgY4tOYueUi4JF6D0U71XhlHSoTDXADOnLfkDS4ZyCHDasnxy7rQBNdUpYJAntvmBYzrQ3qdkCycT5iMqrsg4105ZVXmbv6LwwA7GdT0VhHhk47R9MBIDoyUkYmaBCDzRMhepijjK33ve9T1tyyGRFbVPZwTA+V/z0kPMigiFmGlxg+8x6ztXeBQKEKvzKSm793TUGJnhcOoyWPdirhuskxh4/rNcY= X-Exchange-Antispam-Report-Test: UriScan:(236129657087228); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(2017060910075)(5005006)(8121501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(10201501046)(6041248)(20161123560025)(20161123558100)(20161123555025)(20161123564025)(2016111802025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(6043046)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:HE1PR0202MB2556;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:HE1PR0202MB2556; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;HE1PR0202MB2556;4:KJTwEFy1x2Ibv2Hur8HPWZSZBJO861qBXPTfuX94?= =?us-ascii?Q?QPnQjqIil6fRyIatMGEHhC2cKtkKQkv3Ry2BTbyHMUIbZawdZr7bExlPVn3U?= =?us-ascii?Q?TZOh28r4A5CZGu6WzNfHPsJ8rdA+rzgHKbioK43bP6S/5kfBb9iUuni8O4Aq?= =?us-ascii?Q?apy/REBZv+QknlXCWt6X7ADkDKolSDMrA4V+cAD40PrLrb6ThIYlCorTLHtn?= =?us-ascii?Q?GEvY0ESxYw7/Hj7gLay5T9NHuI/2HF52VikF4GQc7xtRF6+DrKhFJGf4NP+s?= =?us-ascii?Q?iL9hHCwj4u7nQB/O8bDPdzFXJT7i9J/aLMfV7OMgyJi1InrdwbXzaiVQqe9L?= =?us-ascii?Q?idpYhVa0I1k9tnD40G6+TkootCLq1AO/maZSCYM9Lv1EydGfBSOfbCGu7YEy?= =?us-ascii?Q?vrU3Xc69ChxWp+w0HRRdEBIMM/pr5N7xowIbBPKm9SrU9/StkzCG07HxIL9P?= =?us-ascii?Q?8WQ3bukGgPSrD0wdaup3gY3LyTpXnskJlLcmfeuZIV0s2C5LkF781sl/wgWQ?= =?us-ascii?Q?fr0P6G3MgopZq7KfSTGign7oR538Y5rAX6luQdR8rZfw0Wnmr0nIQxeVAQIz?= =?us-ascii?Q?NaY8Zt3hIeUSgSuHmiEOPvM+v/pLWamk2l/KfQ+cHIGGp+8u7MgeRu/vXPrF?= =?us-ascii?Q?j9vQm2uLrxtwlqctGlu1+Mjrrbxfnd6zC02GmuaKwMsSF8ka0U2FulixxqPK?= =?us-ascii?Q?jymLHDxWtSBKLbBfKHWxCve2+wXv9pDrDfmKNYsvv+s1FRKrT34pYvQyNCY3?= =?us-ascii?Q?QYEvU5mAFgqG311jxAoVnwKbryA7t//BFwFlNJd872S3u+3pG6MajvTbT15Q?= =?us-ascii?Q?AevkBZWDDkvQhrAEChKsxApCiNEO3g0/aeAQr5otQdMOeTAChQw8s1r7nTYG?= =?us-ascii?Q?03gYZk9To7r9s1Zaw9sY2y+NgwbVtgiEmR85ZnrHFuX9j3/6qjdAelrBbIBz?= =?us-ascii?Q?egljEMDYeK6K1QUrKCJHet/zvY+ZCyxeHEJnKRIpmtQPfhvVHRlql97JyJz6?= =?us-ascii?Q?FTIx6fi+BE3gZldKP1t3u51IdkK0+mSfpBUP9w2zoLy76/n4EIQ9dFuCBaQY?= =?us-ascii?Q?EI4TYmHA3GcTYxRwIdOwBK1dA5CS7P8stVFGqzipl1S231g4hwiYs4Sid/44?= =?us-ascii?Q?GxS5Zsy68QboZQnB35b+3lXpSi9qMynRkt5/uYEIkwYchxH2Zu6y0JXVidpI?= =?us-ascii?Q?hzdXZu5AooFJh+9kA35BkqtrPYeMRuRll+X6n2AnzdeUbbcCf36PmNe+cvsJ?= =?us-ascii?Q?ejC9eXRzmwPqO+7gYO4iKeIrXYgJp7UcPW3zULv0?= X-Forefront-PRVS: 0367A50BB1 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(7370300001)(4630300001)(6009001)(39840400002)(39400400002)(39410400002)(39450400003)(54906002)(8676002)(81166006)(5003940100001)(50226002)(6512007)(6506006)(38730400002)(110136004)(7350300001)(53936002)(6486002)(7736002)(189998001)(5660300001)(305945005)(4326008)(25786009)(2361001)(2351001)(33646002)(3846002)(6116002)(7416002)(74482002)(48376002)(50466002)(36756003)(575784001)(86362001)(76176999)(50986999)(1076002)(42186005)(2950100002)(6916009)(478600001)(66066001)(47776003)(2906002)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:HE1PR0202MB2556;H:orc.pedanet;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;HE1PR0202MB2556;23:unZviOB6XGUQ26bMLw/3Xn9xXgMRJwmD5DgEWyx?= =?us-ascii?Q?CKNfkUlhuR/2yLbM/hHcPBmeSAmX2ka2kLZqN7G8O9hzldEh/4YyKpQilX98?= =?us-ascii?Q?OOFZeJXKfK5woYXiKCZAvFiplPvYcW1+4OhV9A1dCbiCJSZdEs2CiCrtd4Fk?= =?us-ascii?Q?+Iexn6/ePXuWqovDbsJK8Pvo2ehDMCBudp/JCsYnDoooZYRNLosdP4nk3bzn?= =?us-ascii?Q?+LSaH7YaYIyklIgK3saYJxHanFCoA74cMfSVsEb24zh2cAuaKRsqmukiSQ+7?= =?us-ascii?Q?hWA2Ze2VnmhfBGCGQiQMR0AGt1XitWh5f/GskchC0OV7stl3tIB42hLYafIZ?= =?us-ascii?Q?qa1i0P+8pbcRBx83okJnT7gdQu0DHS1r3sBd08pdfQJlPfg4i6WhX62BVL/F?= =?us-ascii?Q?0VL1DIXW2f6YGyfWEey1pj6ArOB+LjJhcBozsbJUSSpKqEJhJXi3WjEU9Ow5?= =?us-ascii?Q?K+A6BA6iAdxsTBk5zwJVaA19ccrdAo1yb5LRYJqs1nhx8LDdPqvC6igaYrhB?= =?us-ascii?Q?lpcT+xPsQrk+QTpKC64qOv07bYnVBcWWdkbt1IyfkBraq4Tdd5M9ltwRjCrm?= =?us-ascii?Q?C7ca8CZaQn1vxZ+hmx4fMwt+LNzLAvrephtzDTB4B5WHqgyt9VzUFYE/CXJx?= =?us-ascii?Q?TOC0kHbG24+f48SoDTJ7OLDds0NqFUlAljtWDQ2KKnuFp3tESUkqgNE1L8cs?= =?us-ascii?Q?UYXz5NmDpxgAiXgyOsABbs5Pc53wRuAhT08vtDHG0l8wvoqoUc9+r9dGHm9w?= =?us-ascii?Q?c/RdrceA39jBoD8Xc0VZs/nlpZhszTkzEf1nKrEhvHyyTtKLQwBsCybmybt2?= =?us-ascii?Q?yjaHHONYboSE/gXC7TtpCK2dc8pHzVFFJA75OoW2GAtdJrtb0kj2r5naRzkk?= =?us-ascii?Q?iebGoq0vg55yDdPZIr4OvqA7jH/1u900EAJYA8US7ILe+Nb0OuTD00p+GlrI?= =?us-ascii?Q?A/UNw/CfarwDIr37oGNsUu0ePw07bXDuKRcD+Uc03915E4C5PHXYKTFZNHOk?= =?us-ascii?Q?XeIJTvV3DVfA5j0P3bJ/jmFpPrPwtqcdrENqUpsM+y6GcoSoZaKdKRso7lJQ?= =?us-ascii?Q?WrTpBCg55ZO7d4uKflwvGwMqbMdgU22a0ZGASR/SacxXsUjs2ONEEssoFuaV?= =?us-ascii?Q?Rc+4zXg9fFS3hHpKDp4eqXGghwfh+jAYhXr0tGkxoOWvKHyY10P5Ey6ljCqt?= =?us-ascii?Q?tDY/9UkZbP7O8ehNhtqGk881G6byyjrw3t2ux?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;HE1PR0202MB2556;6:qL/Lb6Z7BONqKOHBSv+NPHWuVnDUvbiW0Gq8t6DX?= =?us-ascii?Q?92jixbbipTYua9c1oRkWRO+qGThEP2IViq4kb3UXGa2xIfjOLnVBIoqcIv3A?= =?us-ascii?Q?GcLFcBP0tdD6BqaMAsBv2874ckgB6yVJRxydttQ0F96qlcf9B4SorKKz8OFk?= =?us-ascii?Q?o1HM7CB64g632a/ie5fE9rlNyTZZiU9eQdCr+6eY57Ka8RvEtEEydBzzCCwm?= =?us-ascii?Q?SR9KD1x5uJwsomLNLyQHYpbBZaVibTtleGZKzp5jOUWiSm8jDzBvbfM26o+q?= =?us-ascii?Q?is66WBpTY1ubYKBS9dHALbRr7z1sTqb5hyY36xQGP5uAYg7b3lFM4Y/LeQtu?= =?us-ascii?Q?SV472lFA/NpqPSmcON347pzehzdV9vJ0SutygrAipI62cTCXTySi/8KkP8ef?= =?us-ascii?Q?eWKgHrps8mBKO1g2EjD6xg6HCyEHSq+LpXPHF5OCZ9EargNH26JHdWhdI7KE?= =?us-ascii?Q?JBw7qtZie/NnrCclYqfvAe4saUUN/Bi1d8knOBd8AoQ5PnbnA++HQEGULVGf?= =?us-ascii?Q?tR9W8VM1eAX8ufr20aXLtcSs7d3vTvO3S1jQagPt93xBoZ5qkK8Of+YdhpKw?= =?us-ascii?Q?HB/uQfPPsO+zqsyH0y/oP4Tv8Ztab6cvIpHQxem0vuLHadWKRW6Wn+uaSsTn?= =?us-ascii?Q?gmQlEklNvSZDpHKyrgsop3Irz4jO01F9F0k579MlUBXc0VloGWKzj6KdAw3V?= =?us-ascii?Q?yMHsiPVZ0eBHnukhyOUIl38yPAWgfpTi4xRmFYpuP/mzDPMP5XI0b0OQwgKi?= =?us-ascii?Q?aZ3F3svno60eea+19YbTqV0CBX0dkCsaaP4HBbwaEnvRLl1AsIgOctbTv2e/?= =?us-ascii?Q?CUq+qYv5G64O+D2miLKvaYq8M+vwXZrZTPY6C2fVUC1v3rneQC2ouCDLHAX3?= =?us-ascii?Q?CP6vPYdn2d8jQ2ZkCSCzE+yQUM9Emo7ujkxY8p9HbSkPATi9qlMIXkrc7AIB?= =?us-ascii?Q?5NF5ufLyUtD9/qvoxuxYrMq4r0D+46zdbbtZVUPwAgV/bAH1HNaPGU+uLWZ3?= =?us-ascii?Q?0ak=3D?= X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;5:TGZBhiBaEHK0rg0M+RGdcsukhyyQC7O/BR1LmlVjgjXpYeROxuqzgAzwRk73nq7AHoWdRmCgxyX6lAK6FA5ZLr4EONq/5eAiaoss3CQqyUtvb6Xf9KlmPeLyqIbeq++RKpaQ7B01JfI31PSRk3HgTwG3eRtAEL84UruIdnyeM1J52RLmmtkt0nINqpbpfoEt2wT2mo9/eMBomPU0viD+K4715pKfd+NIxfy/nQEo+gYFK6Dln7NjeBPPhwgYAxGxvHVbCn7kla89VjbYrwltH6nqSGX8WLY1xNXKLcJFagN0VZaiHDB8vzX+jPCg06s221jOV1zqYK+lcAYFGZylcYF7I833aE6Ppr/FVaR7HH8KeHeerGbw894h9NezP4qxl0lGSM4ZWd8smqIY8fs91/eQy0u56SXCMo1YDwEDNSJmFXflaUQb1HU/MXSX8fRJP1inEVF1d6fPBymrGFZCq8PU/WLc9nR9BkqLefg5kkqMgf+1NWwRPJ3ZuXQ7EY5+;24:f1y013lqIU8FSrzy3Nu5AAsYnNpFm/0mSmw7lXRg5id6vP1c/j4yu+lGMoBuIf4EQEoJ59pFDZxBaS3OuR4GpcVaKSrMO5exRtCauOCAMno= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;7:1VCr4FHWT2kcCUmatHa5rk0f3u6CZQfJWydvwJDK3Ly9WdOitM42Yq9bHKO+B4w9m3BxlzloPmycnzy3B168PCUp731pNk/pl6Ul5rhBkVprilVsG6RnYOTdmZJQTrKADx/CvHYzTPTDpBVy1nfm3qq9fuUY2OTirfw7JA0i0eO1p7i9IWbJAx7FANrDYzilk45YG2eCr171R9JlBggNH1PnGzPP9/fAYHma+kHe9ROW9pNVJBMRniner8BGoFDOOQuXRc9GyrnSutkaHnUjgN325i3ozZMVQQ3gjUnmKpymMoPDKWHnx0PieDSF/duxAEi705JqZ4vLq4FglyfUJIuV2wlecJ/fKmdm3aikY5lovd2041qbKooIJLNDGTn06+J1yIdMB1MbuieqaYV1RcyZOgZleb6x5eT9yzG67QZW+lWtaG2ILIWjGk6clfrEfEKdLfn6uwJh/Fd90ouCpNlDVPOmFq+VKcJxTYOp7jSBwkZjOAaqO4SXAq6ZRgcPSkW2u23iydFaZXX2Gum8EnkdQDvrnCLJ4kCbMt+pKBjtETsbqOoFz6S8LFcCsI7QXFA62lCWH4b8lYhkYZMAu20kwvX0X2/592rSei9yduIik2nHo3XF+cdTdzcjWUglGprEu/sa3O961FT3iC6Gu4oShi+6mWmjM96MGYBkboWTdtl+7T0vDcM5y2zokaXRs5CQzYg+7k+R2IRpI7BYAUdhXzQOPYwKdpm/408E5uJUCyhAyrTPREO/YHlg9aozJXbpEw6Wh0uot4nYKKAM4IZJbdGJ3IP5i6QlC45eLiI= X-OriginatorOrg: axentia.se X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2017 16:24:35.6418 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0202MB2556 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The redundant fb helpers .load_lut, .gamma_set and .gamma_get are no longer used. Remove the dead code and hook up the crtc .gamma_set to use the crtc gamma_store directly instead of duplicating that info locally. Acked-by: Daniel Vetter Signed-off-by: Peter Rosin --- drivers/gpu/drm/mgag200/mgag200_drv.h | 5 --- drivers/gpu/drm/mgag200/mgag200_fb.c | 2 -- drivers/gpu/drm/mgag200/mgag200_mode.c | 62 ++++++++-------------------------- 3 files changed, 15 insertions(+), 54 deletions(-) diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.h b/drivers/gpu/drm/mgag200/mgag200_drv.h index c88b6ec88dd2..04f1dfba12e5 100644 --- a/drivers/gpu/drm/mgag200/mgag200_drv.h +++ b/drivers/gpu/drm/mgag200/mgag200_drv.h @@ -237,11 +237,6 @@ mgag200_bo(struct ttm_buffer_object *bo) { return container_of(bo, struct mgag200_bo, bo); } - /* mgag200_crtc.c */ -void mga_crtc_fb_gamma_set(struct drm_crtc *crtc, u16 red, u16 green, - u16 blue, int regno); -void mga_crtc_fb_gamma_get(struct drm_crtc *crtc, u16 *red, u16 *green, - u16 *blue, int regno); /* mgag200_mode.c */ int mgag200_modeset_init(struct mga_device *mdev); diff --git a/drivers/gpu/drm/mgag200/mgag200_fb.c b/drivers/gpu/drm/mgag200/mgag200_fb.c index 5d3b1fac906f..5cf980a2e9e9 100644 --- a/drivers/gpu/drm/mgag200/mgag200_fb.c +++ b/drivers/gpu/drm/mgag200/mgag200_fb.c @@ -258,8 +258,6 @@ static int mga_fbdev_destroy(struct drm_device *dev, } static const struct drm_fb_helper_funcs mga_fb_helper_funcs = { - .gamma_set = mga_crtc_fb_gamma_set, - .gamma_get = mga_crtc_fb_gamma_get, .fb_probe = mgag200fb_create, }; diff --git a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c index f4b53588e071..5e9cd4c0e8b6 100644 --- a/drivers/gpu/drm/mgag200/mgag200_mode.c +++ b/drivers/gpu/drm/mgag200/mgag200_mode.c @@ -27,15 +27,19 @@ static void mga_crtc_load_lut(struct drm_crtc *crtc) { - struct mga_crtc *mga_crtc = to_mga_crtc(crtc); struct drm_device *dev = crtc->dev; struct mga_device *mdev = dev->dev_private; struct drm_framebuffer *fb = crtc->primary->fb; + u16 *r_ptr, *g_ptr, *b_ptr; int i; if (!crtc->enabled) return; + r_ptr = crtc->gamma_store; + g_ptr = r_ptr + crtc->gamma_size; + b_ptr = g_ptr + crtc->gamma_size; + WREG8(DAC_INDEX + MGA1064_INDEX, 0); if (fb && fb->format->cpp[0] * 8 == 16) { @@ -46,25 +50,27 @@ static void mga_crtc_load_lut(struct drm_crtc *crtc) if (i > (MGAG200_LUT_SIZE >> 1)) { r = b = 0; } else { - r = mga_crtc->lut_r[i << 1]; - b = mga_crtc->lut_b[i << 1]; + r = *r_ptr++ >> 8; + b = *b_ptr++ >> 8; + r_ptr++; + b_ptr++; } } else { - r = mga_crtc->lut_r[i]; - b = mga_crtc->lut_b[i]; + r = *r_ptr++ >> 8; + b = *b_ptr++ >> 8; } /* VGA registers */ WREG8(DAC_INDEX + MGA1064_COL_PAL, r); - WREG8(DAC_INDEX + MGA1064_COL_PAL, mga_crtc->lut_g[i]); + WREG8(DAC_INDEX + MGA1064_COL_PAL, *g_ptr++ >> 8); WREG8(DAC_INDEX + MGA1064_COL_PAL, b); } return; } for (i = 0; i < MGAG200_LUT_SIZE; i++) { /* VGA registers */ - WREG8(DAC_INDEX + MGA1064_COL_PAL, mga_crtc->lut_r[i]); - WREG8(DAC_INDEX + MGA1064_COL_PAL, mga_crtc->lut_g[i]); - WREG8(DAC_INDEX + MGA1064_COL_PAL, mga_crtc->lut_b[i]); + WREG8(DAC_INDEX + MGA1064_COL_PAL, *r_ptr++ >> 8); + WREG8(DAC_INDEX + MGA1064_COL_PAL, *g_ptr++ >> 8); + WREG8(DAC_INDEX + MGA1064_COL_PAL, *b_ptr++ >> 8); } } @@ -1399,14 +1405,6 @@ static int mga_crtc_gamma_set(struct drm_crtc *crtc, u16 *red, u16 *green, u16 *blue, uint32_t size, struct drm_modeset_acquire_ctx *ctx) { - struct mga_crtc *mga_crtc = to_mga_crtc(crtc); - int i; - - for (i = 0; i < size; i++) { - mga_crtc->lut_r[i] = red[i] >> 8; - mga_crtc->lut_g[i] = green[i] >> 8; - mga_crtc->lut_b[i] = blue[i] >> 8; - } mga_crtc_load_lut(crtc); return 0; @@ -1455,14 +1453,12 @@ static const struct drm_crtc_helper_funcs mga_helper_funcs = { .mode_set_base = mga_crtc_mode_set_base, .prepare = mga_crtc_prepare, .commit = mga_crtc_commit, - .load_lut = mga_crtc_load_lut, }; /* CRTC setup */ static void mga_crtc_init(struct mga_device *mdev) { struct mga_crtc *mga_crtc; - int i; mga_crtc = kzalloc(sizeof(struct mga_crtc) + (MGAG200FB_CONN_LIMIT * sizeof(struct drm_connector *)), @@ -1476,37 +1472,9 @@ static void mga_crtc_init(struct mga_device *mdev) drm_mode_crtc_set_gamma_size(&mga_crtc->base, MGAG200_LUT_SIZE); mdev->mode_info.crtc = mga_crtc; - for (i = 0; i < MGAG200_LUT_SIZE; i++) { - mga_crtc->lut_r[i] = i; - mga_crtc->lut_g[i] = i; - mga_crtc->lut_b[i] = i; - } - drm_crtc_helper_add(&mga_crtc->base, &mga_helper_funcs); } -/** Sets the color ramps on behalf of fbcon */ -void mga_crtc_fb_gamma_set(struct drm_crtc *crtc, u16 red, u16 green, - u16 blue, int regno) -{ - struct mga_crtc *mga_crtc = to_mga_crtc(crtc); - - mga_crtc->lut_r[regno] = red >> 8; - mga_crtc->lut_g[regno] = green >> 8; - mga_crtc->lut_b[regno] = blue >> 8; -} - -/** Gets the color ramps on behalf of fbcon */ -void mga_crtc_fb_gamma_get(struct drm_crtc *crtc, u16 *red, u16 *green, - u16 *blue, int regno) -{ - struct mga_crtc *mga_crtc = to_mga_crtc(crtc); - - *red = (u16)mga_crtc->lut_r[regno] << 8; - *green = (u16)mga_crtc->lut_g[regno] << 8; - *blue = (u16)mga_crtc->lut_b[regno] << 8; -} - /* * The encoder comes after the CRTC in the output pipeline, but before * the connector. It's responsible for ensuring that the digital -- 2.11.0