From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Packham Date: Sun, 02 Jul 2017 21:51:44 +0000 Subject: Re: [PATCH 5/6] i2c: pca-platform: use device_property_read_u32 Message-Id: <942893991cc34410bf1515a6a970c5c2@svr-chch-ex1.atlnz.lc> List-Id: References: <20170630005408.23968-1-chris.packham@alliedtelesis.co.nz> <20170630005408.23968-6-chris.packham@alliedtelesis.co.nz> <20170630090354.6s6ahpjhis7ptbfg@ninjato> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Andy Shevchenko , Wolfram Sang Cc: linux-i2c , Yoshinori Sato , Linux-SH , "linux-kernel@vger.kernel.org" On 30/06/17 22:56, Andy Shevchenko wrote: > On Fri, Jun 30, 2017 at 12:03 PM, Wolfram Sang wrote: >> >>>> - i2c->algo_data.i2c_clock = 59000; >>>> + ret = device_property_read_u32(&pdev->dev, "clock-frequency", >>>> + &i2c->algo_data.i2c_clock); >>>> + if (ret) >>>> + i2c->algo_data.i2c_clock = 59000; >>> >>> My idea is to get rid of legacy platform data completely. >>> That's why I suggested device_* in the first place. >>> >>> In similar way like you did with GPIO lookup table, you may use >>> PROPERTY_ENTRY*() macros in the board files. >>> >>> Does it make sense? >> >> Frankly, I am not a big fan of converting board files if we cannot test >> the changes. > > So, if no one is using that old boards, should we really take care > more than just compile test? > > P.S. Legacy platform data makes a burden of development nowadays. > Built-in device properties API (as a part of Unified Device > Properties) is exactly for getting rid of legacy stuff and make things > much cleaner. We could probably go with an approach of making the device properties the default which would suit the new style and leave the platform_data to override things if it is present. If/when the older platforms go away we can drop struct i2c_pca9564_pf_platform_data. From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752100AbdGBVvu (ORCPT ); Sun, 2 Jul 2017 17:51:50 -0400 Received: from gate2.alliedtelesis.co.nz ([202.36.163.20]:49219 "EHLO gate2.alliedtelesis.co.nz" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751894AbdGBVvs (ORCPT ); Sun, 2 Jul 2017 17:51:48 -0400 From: Chris Packham To: Andy Shevchenko , Wolfram Sang CC: linux-i2c , Yoshinori Sato , Linux-SH , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH 5/6] i2c: pca-platform: use device_property_read_u32 Thread-Topic: [PATCH 5/6] i2c: pca-platform: use device_property_read_u32 Thread-Index: AQHS8TtnDNI4/6FF8EaSFpRcCTf36w== Date: Sun, 2 Jul 2017 21:51:44 +0000 Message-ID: <942893991cc34410bf1515a6a970c5c2@svr-chch-ex1.atlnz.lc> References: <20170630005408.23968-1-chris.packham@alliedtelesis.co.nz> <20170630005408.23968-6-chris.packham@alliedtelesis.co.nz> <20170630090354.6s6ahpjhis7ptbfg@ninjato> Accept-Language: en-NZ, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [2001:df5:b000:22:f581:6b2d:11a5:cc01] Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mail.home.local id v62LpumN022642 On 30/06/17 22:56, Andy Shevchenko wrote: > On Fri, Jun 30, 2017 at 12:03 PM, Wolfram Sang wrote: >> >>>> - i2c->algo_data.i2c_clock = 59000; >>>> + ret = device_property_read_u32(&pdev->dev, "clock-frequency", >>>> + &i2c->algo_data.i2c_clock); >>>> + if (ret) >>>> + i2c->algo_data.i2c_clock = 59000; >>> >>> My idea is to get rid of legacy platform data completely. >>> That's why I suggested device_* in the first place. >>> >>> In similar way like you did with GPIO lookup table, you may use >>> PROPERTY_ENTRY*() macros in the board files. >>> >>> Does it make sense? >> >> Frankly, I am not a big fan of converting board files if we cannot test >> the changes. > > So, if no one is using that old boards, should we really take care > more than just compile test? > > P.S. Legacy platform data makes a burden of development nowadays. > Built-in device properties API (as a part of Unified Device > Properties) is exactly for getting rid of legacy stuff and make things > much cleaner. We could probably go with an approach of making the device properties the default which would suit the new style and leave the platform_data to override things if it is present. If/when the older platforms go away we can drop struct i2c_pca9564_pf_platform_data.