From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753878AbdBTQIi (ORCPT ); Mon, 20 Feb 2017 11:08:38 -0500 Received: from mail-cys01nam02on0075.outbound.protection.outlook.com ([104.47.37.75]:34880 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753493AbdBTQIf (ORCPT ); Mon, 20 Feb 2017 11:08:35 -0500 Authentication-Results: spf=pass (sender IP is 137.71.25.57) smtp.mailfrom=analog.com; gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=bestguesspass action=none header.from=analog.com; Reply-To: Subject: Re: [RFC/RFT PATCH 1/3] Input: ad7879 - convert to use regmap References: <20170217233152.31715-1-dmitry.torokhov@gmail.com> To: Dmitry Torokhov CC: , From: Michael Hennerich Organization: Analog Devices Inc. Message-ID: Date: Mon, 20 Feb 2017 17:09:44 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 MIME-Version: 1.0 In-Reply-To: <20170217233152.31715-1-dmitry.torokhov@gmail.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:137.71.25.57;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(7916002)(39450400003)(39850400002)(39840400002)(39410400002)(2980300002)(438002)(24454002)(199003)(52314003)(189002)(626004)(36756003)(64126003)(8936002)(54356999)(39060400002)(53546006)(76176999)(246002)(8676002)(356003)(43066003)(305945005)(50986999)(33646002)(7636002)(65806001)(106466001)(47776003)(65956001)(54906002)(38730400002)(110136004)(229853002)(6666003)(6246003)(77096006)(23746002)(4001350100001)(31686004)(2950100002)(6916009)(31696002)(86362001)(65826007)(50466002)(3450700001)(189998001)(83506001)(2906002)(4326007)(5660300001)(2870700001)(217873001);DIR:OUT;SFP:1101;SCL:1;SRVR:BN6PR03MB2708;H:nwd2mta2.analog.com;FPR:;SPF:Pass;PTR:nwd2mail11.analog.com;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BN1AFFO11FD019;1:5r3gJheF2DD0yS07WylyVx2OjU8Xm/sN+gIejaoGWW17h75mjlRlfqvMpYuatVQXaHP6Komhxm+97gzkz0kLE49GPLUmXUvL8HO/1hQUVyiBMT5i/FxVZlWgYQNSLdkOg1FFXeeRLw530nBw2Um4uzBwTOUWKffTu9gTluO97vyqDNYBAs/aUSeDeYOyRlk9SE4P29nZQHaQVwM55e99KgSeYa0M3n3sOUlS3eiD1sj1ALLCt4vkwU9BuMg3Hp2ZfXMP41xhNp2p4Gs/7f0BPabG3HmAyHDmgXTAn3gmK9lbgoZC5DL2erjgGlEBxmM1BFQgSk8jmnPfu4j2JzYjbFKb0VNUr1wl56rihq/ECvnwjFmQ+f7M4MBh8G7hy3x9fSqGk8ePZlyVdrdF6u/dWCTey3lvofdjQIDYHK4AzeTUM+KM+wP5FbXXWSPaXOY2GLm26EUlEtXUz3YDwldX4W9b9At49nrmpUJXQ/oPzZBu/B4RmHZ0qJ29IITEaBjy6XWDlA+RTN6G44oCAt2fnL9vRml8qLxjPRV2JQhaW4M= X-MS-Office365-Filtering-Correlation-Id: 0d258801-760a-4aa3-1a09-08d459aab7b4 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(8251501002);SRVR:BN6PR03MB2708; X-Microsoft-Exchange-Diagnostics: 1;BN6PR03MB2708;3:7lIMAnT9BMLQhqD1oC/TpVJnIcG3USg5d6zIVhe9BK9nxRHVJu4Ik7cH5y9rgUYIlTd/RC2Q8oJt1XWjJOeE4JLIsTnRIK+8YtG83OqIC+4twvDP9fAVhy2DJcHv2K8fwznEWBzYYNGg0zfJ1PP0qRSmVYM06lmKISYUV8YuTuQ8zQzWK10Y0G9pXBnO6OKH/8mD9vkCcljj+j7TnKfLemLVEAdlV6VEXLyDiBqvvz2K1IrXKNVYf8WZDuJI2moPBH3e1zuXFVQpvFl/q2WSiZvDSy7r5QObY+eLUiBzEnYU7EDDpvo7CEqIP8bFYVmZZRtuvy/6fdO5xEXMIL1txSQqy+8UpDeC3BmzG8sBMrtLpGT38Onu6H5JEegQnDgK2m2R6SpDjEQXDIu/9L4KQA==;25:3lSAh9o2vcKYJNWiuOe7QlApt04zR3/U3vKL72ZxKPjingHEu0dc/SFEOvf6epz9PKR2bxuZEZiQao8eMvgAy8Xnz3oMAArTVe77tYH81AfYZqTgs5s2JrKBTbKjZbkUF1ANIQRgsRMIs30ckk+SLknXA0VV2jS10dk/yH+lo9teYdWpTF18akxbGRzpzv3wJwrP2wkd+ld8Eln6Yuy1mJ2KHBDYxR8EnDXvPSnzbFAoOk24yKD7ewhWRqAT7qS5PGJmAqtpBBtY+oFhlG99b8dsU3/rLNdnYpw9HlEptVBIGJUUUday2KD6ehd99Yo6r5ytfvEulAwUd9exGJb/w1ZhEFUNBkfDJ40f5AdIewgpJQ+SCXmdFnjFxx/NB4zUq/H1m29Odjea96113UN5LmsrDuH1sFHhF1YXOKSCNHw4poX2xlICT6hUCcPxLTM76uhn1RZuUIkSE0BKy1b6Ng== X-Microsoft-Exchange-Diagnostics: 1;BN6PR03MB2708;31:vuhYAXxI53PsZgrCThIZYjFSyC4B2TNOe2ZC5KgqIfxD76TzZLmtns25EEU4yiHwKleISMA18K4hEJ/lB0rdJR/ynxOLa4Zz63GMk/JfIl6HP3UyiGgd1h3G7b78iSv/xOTWVQc/i06901CCrtvcgJO4Clzu8lkbEPTX4+QvxYThGpKj5P0T3PxSYW30q10C06HB1cimTuU9Iu7EDvPz+6rfvVIPr3ihawX8+aQ2C+gcZGavOaOh9SM/2/SlQU27WV5qftLw8dW0Qkqc3CaHa3sB4IQs5h02DrnAPDKrmp8=;20:0BRtYXA82ARt539v7IwI1xXz2MruY8K6upNSCila+Jaw+lybi3yMtZolCOjgRmyvVUKVLZVLaxkc4AzdBqMh3apAWAm7SN6RPxnqHOkQlEI5EEFn7TBxLYgyPEyqlUBHCWE4ku9F58QfMMlx73l/jP8YeHWvA5Vdk+/tnRKNRvcs+pyv1ivXWUu++L6ah6B2JEbe4b/TR1Md5cC2rFPX0n66kQDsXSIAg6azrxmFH6zN68edWIlZOsWhJI5yYGkmBG4ceHdbzeSkuR5v9vDEr9yMtqlaWXD4K+RIYHAElKY8LeXOit3z9IjcCghytAx/fvACJVUq0uFWrErsfwlnr4TK3lHROEJj9MBhdyu43tPFyKzZ2f1Xjq8mJ9Kdei4XR9PcbRO8hOKo5eJIfyV8S/TmLL6STnGy0/xF39MpJZ4kXtRI+7ehKjDWIy+aONrCBKyoHlw1/fqj3SQn51iEZWXEqqILgiYrNi9A0OXnOY2Lzcd0RCKlRKCBd6IUxorj X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(13017025)(13023025)(13024025)(13018025)(13015025)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6041248)(20161123555025)(20161123564025)(20161123562025)(20161123560025)(20161123558025)(6072148);SRVR:BN6PR03MB2708;BCL:0;PCL:0;RULEID:;SRVR:BN6PR03MB2708; X-Microsoft-Exchange-Diagnostics: 1;BN6PR03MB2708;4:iBFoHvrDwpmqc41wuXMFEl5P/rsta9n5gKuPG697OoizFpJGhU7+5T6+LueZ2+BABM7qOYpUBROMjaFRjcit18giTYZXaZGj+hYdcUqa2jm+p4dIrX0YWg6p/+eXl66EuvPgCTAL7whpf3QKDK2nEs0L+FGVb6YHDOyQxzAd9yd/2GN48ETFOJs92V7dj2dworPB+unvd6K9GTY9n6w3ZE407kz8c6F+/oPneF/lDBlkK66oQk+uxHQG9paIfs48IpJF0Mgd+ZQJhTs9wrFEBvDYfNArQ4OAI8LKFQ1srItjpiB6jDqc7te5/uDeMkFILG4Bq5gUkgCeVYdNyFjBEXmxj6RSA31nVPbKYNiGDd4z5w/C7R8lhO0bsuh4KHvqAvXTLjzP8IohbwjXRf4A/WW8BBiqPBMKI+xJsmePGWMtSG8CPvvek1kJi+9gD4kJxvkaTk1YtHhy68TthL6qB36agg2sQdQx7JQBlGInS/v2gsl70QVF11UFiv5Cjl5/3ZalHvQhyoUtvM+lSyFw4xymZavOY7lWDO+xgE44R3jGA1msmN1+deyP6vHOZZtTIwsuHHyBPj7xM8mhizFyoHHV2VXkvadUOS4mKqMNjfnzIhsB0EXFnJHop5EA/soCu37bzlEG/C7QRzOCNuMtMx/vHq9+cByXao8saME3Tv8oYYD/kJN52dyxyIfq5khHthwpCrGWVG5KVfsYsQ82mQ== X-Forefront-PRVS: 02243C58C6 X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;BN6PR03MB2708;23:WHfgkfdY6p23BPaec2rqQUNbOWNkuMvsNtK7F?= =?Windows-1252?Q?IqUpCJkqV+N9U/CGkLAUq36LEtx6SGqzuoHtW/Ep5iGscgWLToXwyjMp?= =?Windows-1252?Q?6YQ8hQ0abFTk8jDJ8m6ccG0BsPOd7CKonricLO3axGat9xQp288g/996?= =?Windows-1252?Q?24Kk1QHsLeB3IDoJ75uLWHOAUYLhgH06WPxkG8TlBqK7GcpPCdSDqH6l?= =?Windows-1252?Q?R8D3PnDy0tJQbgdWDHrhpZdfGm635PYvQFWWcr94oukTk0mVouGQk0hU?= =?Windows-1252?Q?vq6EvOMqSxjmBq9Qw6DiQAJOOrU6JfqqP28ge341VKh9nkXGVxQ1gf3T?= =?Windows-1252?Q?OYAlrIQCYNQvMMRyslg2JbPQL8ZMC5MipxkUa9GreXUkQpeEj3Dri/Jz?= =?Windows-1252?Q?/BgB8SyV6XBgnN5RoggDo7cGTI0IqFzznIP2rZkCWpFHAu+5OMxT5kYm?= =?Windows-1252?Q?MkR/VPM3rFOkUNAQb1IgaDlx9BFVDTZNAWUe136OuiaP0NlAFt1sZM64?= =?Windows-1252?Q?TlkdsOa2bN4Bcofp8V2gzJi/JLUVdkOESjfSJBdKmhYJm4SgwVePlHZl?= =?Windows-1252?Q?0aM6kYITHDGowiDZb9zKmD996DKiGZl22vNid1jHDxCAH85R2YMDHAIN?= =?Windows-1252?Q?61oaKdKQH1JLV42ju4ltvPuEEz0hK4fq4IvIoHmgslPhwAjtH4XfYUj4?= =?Windows-1252?Q?Rm1+f5XDEA5EmkOz/SZpy5E57rh7cWv7TEQ18j8LRVk1P/UVKkNVXv6d?= =?Windows-1252?Q?v525/h7Rlm/YufHvGFMHKwD25qyZs0/xKpM255hyvhNBR5WtgWRyleiW?= =?Windows-1252?Q?3Q6mDWpz0iZ7YcB0uVK+r5RLnFvjyGUlZTVwQYH+U5kYF7GPsftfX8td?= =?Windows-1252?Q?XycD42qsiFn0iSphxLD7MTu0nMEPI4YNNuR1dCOPv3M+TjG1x/L7Zpkr?= =?Windows-1252?Q?Mal6SKvhj3TWB4SLzQD7vjVOyTFWcFKbCFx7pqnbOsa9GvHptaK8vAzT?= =?Windows-1252?Q?0xKbwW9Mshs/xtpUCbrJgdPJtdzUeP+BZVOk8nv+5rOHeFsnMGiTqYjq?= =?Windows-1252?Q?5W9Lg8HDhV1MSmj6tLnCsuo4dIgwY2e46e2Mi6U3nKg5WK1tKBDrpehE?= =?Windows-1252?Q?h+r35L4LhUsN+M6oPIUrHlK3tJnTA97Swa01PtVFF/m9XR0qFpEA+fue?= =?Windows-1252?Q?FKH6bkJflzIdpc4cH+XSYOJ63sSlYWI8FR1JdpV9DVnpZCzuLFTRPjfL?= =?Windows-1252?Q?POEmybB+wsmmwSIWyAw5k7Ka7qp7AnPtLvRfddkaISOxEevHjMdp1VBL?= =?Windows-1252?Q?G4glojeEyJG+AQwesAA2pmGqeAeXQTPCJPkOxiLK6rmRmGOv0TXDXae+?= =?Windows-1252?Q?XuJZvaz09m+Sd3PH4sfzZ8Dd2yJNWWWzNjpM72270KVmHwWzaIsTB7N+?= =?Windows-1252?Q?tMGBSfIeB91ty59KsZxZvSHoGfav1zRiLpLt1sHKw=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN6PR03MB2708;6:xN5FS+ErXwL3NXpNbHLzXJPzlxH0gBp5/5C/zAiHpzhx1Irvc0wCU8eSzsHDM2nrjSI1th0sYQilAqxtsZBP2mb8XFlxRsTnd5/1DfqtwPzBv9jDTXBh3G9bRP63seZf3AB2lLyo3MUNTqYbKLfvIBIKG2bSVMWUIqmylkrAW87GwRaixXQ2BRvn7FEfjOOKp/rkTCzPvdQbRYMFCovjezEfucW7/TVRto9Bid2751in/G0lMqh9QUqu5LUivdIcmWq+AdPKw0AkM6KyAj6iF1gh0wF95RMfM6LtCGIHG1XZChbBfOV0T+XmVOtyC5yeXLTRoMlIGJLMgQGApYuC1N8AfXUDFCI4zdLUuxwaCUfA4Aj2xbJ9DoRAtejauRHNNYnKmT7KXBiT1HrZUFx6xEa9wUgCyfl+HlWUih75B4w=;5:OhRs31aYs07IGItp6a1u7zqyvqKe40yK9a/1qfhdUa79cKqBtmyslwMdvsfrJsF3LVgIpcazoqBetkM/j+YL8OMLMam/ItO8J/3iJsgJOgV53W4tAQxMMYGmAaJKVWFAkq6B/V0bYAPAojLiQtOWUw==;24:WF/9I2qghUHn8+FOOUYGMBdJRuNLF0ax9zSBQILuWdMZpvp7wWyAY6+Oqv38MZZVbWUmzdncd1NRnBEqTGrxsjFzmiMG2xG10OTL6RjkNhs= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN6PR03MB2708;7:bXtt6asepC65OtByHBxf4hKePO0KnuFDjYnDW4B/NqrwazZybD9q0zyoistze1f8p8/q8wnAVoqjechTuMqbOB85eK/v7GqK0fL7Jv/DxkWgzeg4Z4NXIoY0gY/44DOh09xoGFlm0JIni+sDeq+KFVeYc+u7nX2AcjWBLaJuZ0p6gixJNZIRW+an03AYvgjE+xySfZi5j+pyWpfAlsPTAiWI4R+6g/KQvVTH6/rK+R7cN6+RkfNR7p2UhpXAOhdrWETt1YqkoQAfHJTc4e+7O1FbVuuwJ3JdDauFqWZ6SW4jIAxRlw7Z7EfjfgUM5RiiDSYFId0Dc5bzFEFAStAsEw== X-OriginatorOrg: analog.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Feb 2017 16:08:32.6180 (UTC) X-MS-Exchange-CrossTenant-Id: eaa689b4-8f87-40e0-9c6f-7228de4d754a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=eaa689b4-8f87-40e0-9c6f-7228de4d754a;Ip=[137.71.25.57];Helo=[nwd2mta2.analog.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2708 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 18.02.2017 00:31, Dmitry Torokhov wrote: > Instead of rolling our own infrastructure to provide uniform access to I2C > and SPI buses, let's switch to using regmap. > > Signed-off-by: Dmitry Torokhov > --- > > Michael, > > I am a bit (actually a lot) confused how this driver was working with SPI > and Blackfin, which is, as far as I understand, little-endian, because from > my reading of the spec the data on wire is big-endian. If this is not > correct we need to change spi regmap config to be: > > static const struct regmap_config ad7879_spi_regmap_config = { > .reg_bits = 16, > .val_bits = 16, > .max_register = 15, > .read_flag_mask = AD7879_CMD_MAGIC | AD7879_CMD_READ, > .write_flag_mask = AD7879_CMD_MAGIC, > .reg_format_endian_default = REGMAP_ENDIAN_LITTLE, > .val_format_endian_default = REGMAP_ENDIAN_LITTLE, > }; > > Also, the original ad7879_spi_xfer was funky to tell the least. We > allocated n+2 spi_transfer structures, then smashed the beginning of the > first one with u16 command, then basically "restored" it??? > > Anyway, if you could try it out (and fix ;) ), that would be great. Hi Dimitry, Thanks for doing this. Overall looks great, but i definitely need to test this. Your right this xfer functions looks awkward. I'll review and get back to you. -- Greetings, Michael -- Analog Devices GmbH Otl-Aicher Strasse 60-64 80807 München Sitz der Gesellschaft München, Registergericht München HRB 40368, Geschäftsführer: Peter Kolberg, Ali Raza Husain, Eileen Wynne