From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932463AbbA0QQn (ORCPT ); Tue, 27 Jan 2015 11:16:43 -0500 Received: from mail1.bemta14.messagelabs.com ([193.109.254.107]:34176 "EHLO mail1.bemta14.messagelabs.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932436AbbA0QQi (ORCPT ); Tue, 27 Jan 2015 11:16:38 -0500 X-Env-Sender: Adam.Thomson.Opensource@diasemi.com X-Msg-Ref: server-14.tower-193.messagelabs.com!1422375393!31746282!1 X-Originating-IP: [94.185.165.51] X-StarScan-Received: X-StarScan-Version: 6.12.5; banners=-,-,- X-VirusChecked: Checked From: "Opensource [Adam Thomson]" To: Varka Bhadram , "Opensource [Adam Thomson]" , Lee Jones , Samuel Ortiz , Jonathan Cameron , Hartmut Knaack , "linux-iio@vger.kernel.org" , Sebastian Reichel , "Dmitry Eremin-Solenikov" , David Woodhouse , "linux-pm@vger.kernel.org" , Rob Herring , Pawel Moll , "Mark Rutland" , Ian Campbell , Kumar Gala , Grant Likely , "devicetree@vger.kernel.org" , Andrew Morton , Joe Perches CC: "linux-kernel@vger.kernel.org" , "Support Opensource" Subject: RE: [PATCH v6 5/7] power: Add support for DA9150 Charger Thread-Topic: [PATCH v6 5/7] power: Add support for DA9150 Charger Thread-Index: AQHQNZGAcklmPzY0TkS8pve6Tv5mWJzKv5YAgAlnhLA= Date: Tue, 27 Jan 2015 16:16:31 +0000 Message-ID: <2E89032DDAA8B9408CB92943514A0337AB529E6E@SW-EX-MBX01.diasemi.com> References: <54BFD072.8000707@gmail.com> In-Reply-To: <54BFD072.8000707@gmail.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.20.26.15] Content-Type: text/plain; charset="utf-8" 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 base64 to 8bit by nfs id t0RGGkqK027047 On January 21, 2015 16:15, Varka Bhadram wrote: > On Wednesday 21 January 2015 09:16 PM, Adam Thomson wrote: > > This patch adds support for DA9150 Charger & Fuel-Gauge IC Charger. > > > > Signed-off-by: Adam Thomson > > --- > > (...) > > > +static int da9150_charger_register_irq(struct platform_device *pdev, > > + irq_handler_t handler, > > + const char *irq_name) > > +{ > > + struct device *dev = &pdev->dev; > > + struct da9150_charger *charger = platform_get_drvdata(pdev); > > + int irq, ret; > > + > > + irq = platform_get_irq_byname(pdev, irq_name); > > + if (irq < 0) { > > + dev_err(dev, "Failed to get IRQ CHG_STATUS: %d\n", irq); > > + return irq; > > + } > > + > > + ret = request_threaded_irq(irq, NULL, handler, IRQF_ONESHOT, irq_name, > > + charger); > > Why don you use devm_* API..? As mentioned in previous discussions, the order of tidy up is important so devm_* functions cannot be used here. > > > + if (ret) > > + dev_err(dev, "Failed to request IRQ %d: %d\n", irq, ret); > > + > > + return ret; > > +} > > + > > +static void da9150_charger_unregister_irq(struct platform_device *pdev, > > + const char *irq_name) > > +{ > > + struct device *dev = &pdev->dev; > > + struct da9150_charger *charger = platform_get_drvdata(pdev); > > + int irq; > > + > > + irq = platform_get_irq_byname(pdev, irq_name); > > + if (irq < 0) { > > + dev_err(dev, "Failed to get IRQ CHG_STATUS: %d\n", irq); > > + return; > > + } > > + > > + free_irq(irq, charger); > > +} > > + > > +static int da9150_charger_probe(struct platform_device *pdev) > > +{ > > + struct device *dev = &pdev->dev; > > + struct da9150 *da9150 = dev_get_drvdata(dev->parent); > > + struct da9150_charger *charger; > > + struct power_supply *usb, *battery; > > + u8 reg; > > + int ret; > > + > > + charger = devm_kzalloc(dev, sizeof(struct da9150_charger), GFP_KERNEL); > > + if (charger == NULL) > > + return -ENOMEM; > > sizeof(struct da9150_charger) can be replaced with sizeof(*charger)... > > *!* operator can be used in comparison with NULL... > Yes, but functionally no different. Can maybe change this around later, but would like to avoid changing current patch set right now. {.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Opensource [Adam Thomson]" Subject: RE: [PATCH v6 5/7] power: Add support for DA9150 Charger Date: Tue, 27 Jan 2015 16:16:31 +0000 Message-ID: <2E89032DDAA8B9408CB92943514A0337AB529E6E@SW-EX-MBX01.diasemi.com> References: <54BFD072.8000707@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <54BFD072.8000707-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> Content-Language: en-US Sender: linux-iio-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Varka Bhadram , "Opensource [Adam Thomson]" , Lee Jones , Samuel Ortiz , Jonathan Cameron , Hartmut Knaack , "linux-iio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Sebastian Reichel , Dmitry Eremin-Solenikov , David Woodhouse , "linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Grant Likely , "devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Andrew Morton , Joe Perches Cc: "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Support Opensource List-Id: devicetree@vger.kernel.org T24gSmFudWFyeSAyMSwgMjAxNSAxNjoxNSwgVmFya2EgQmhhZHJhbSB3cm90ZToNCg0KPiBPbiBX ZWRuZXNkYXkgMjEgSmFudWFyeSAyMDE1IDA5OjE2IFBNLCBBZGFtIFRob21zb24gd3JvdGU6DQo+ ID4gVGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIERBOTE1MCBDaGFyZ2VyICYgRnVlbC1HYXVn ZSBJQyBDaGFyZ2VyLg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogQWRhbSBUaG9tc29uIDxBZGFt LlRob21zb24uT3BlbnNvdXJjZUBkaWFzZW1pLmNvbT4NCj4gPiAtLS0NCj4gDQo+ICguLi4pDQo+ IA0KPiA+ICtzdGF0aWMgaW50IGRhOTE1MF9jaGFyZ2VyX3JlZ2lzdGVyX2lycShzdHJ1Y3QgcGxh dGZvcm1fZGV2aWNlICpwZGV2LA0KPiA+ICsJCQkJICAgICAgIGlycV9oYW5kbGVyX3QgaGFuZGxl ciwNCj4gPiArCQkJCSAgICAgICBjb25zdCBjaGFyICppcnFfbmFtZSkNCj4gPiArew0KPiA+ICsJ c3RydWN0IGRldmljZSAqZGV2ID0gJnBkZXYtPmRldjsNCj4gPiArCXN0cnVjdCBkYTkxNTBfY2hh cmdlciAqY2hhcmdlciA9IHBsYXRmb3JtX2dldF9kcnZkYXRhKHBkZXYpOw0KPiA+ICsJaW50IGly cSwgcmV0Ow0KPiA+ICsNCj4gPiArCWlycSA9IHBsYXRmb3JtX2dldF9pcnFfYnluYW1lKHBkZXYs IGlycV9uYW1lKTsNCj4gPiArCWlmIChpcnEgPCAwKSB7DQo+ID4gKwkJZGV2X2VycihkZXYsICJG YWlsZWQgdG8gZ2V0IElSUSBDSEdfU1RBVFVTOiAlZFxuIiwgaXJxKTsNCj4gPiArCQlyZXR1cm4g aXJxOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCXJldCA9IHJlcXVlc3RfdGhyZWFkZWRfaXJxKGly cSwgTlVMTCwgaGFuZGxlciwgSVJRRl9PTkVTSE9ULCBpcnFfbmFtZSwNCj4gPiArCQkJCSAgIGNo YXJnZXIpOw0KPiANCj4gV2h5IGRvbiB5b3UgdXNlIGRldm1fKiBBUEkuLj8NCg0KQXMgbWVudGlv bmVkIGluIHByZXZpb3VzIGRpc2N1c3Npb25zLCB0aGUgb3JkZXIgb2YgdGlkeSB1cCBpcyBpbXBv cnRhbnQgc28gDQpkZXZtXyogZnVuY3Rpb25zIGNhbm5vdCBiZSB1c2VkIGhlcmUuDQoNCj4gDQo+ ID4gKwlpZiAocmV0KQ0KPiA+ICsJCWRldl9lcnIoZGV2LCAiRmFpbGVkIHRvIHJlcXVlc3QgSVJR ICVkOiAlZFxuIiwgaXJxLCByZXQpOw0KPiA+ICsNCj4gPiArCXJldHVybiByZXQ7DQo+ID4gK30N Cj4gPiArDQo+ID4gK3N0YXRpYyB2b2lkIGRhOTE1MF9jaGFyZ2VyX3VucmVnaXN0ZXJfaXJxKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsDQo+ID4gKwkJCQkJICBjb25zdCBjaGFyICppcnFf bmFtZSkNCj4gPiArew0KPiA+ICsJc3RydWN0IGRldmljZSAqZGV2ID0gJnBkZXYtPmRldjsNCj4g PiArCXN0cnVjdCBkYTkxNTBfY2hhcmdlciAqY2hhcmdlciA9IHBsYXRmb3JtX2dldF9kcnZkYXRh KHBkZXYpOw0KPiA+ICsJaW50IGlycTsNCj4gPiArDQo+ID4gKwlpcnEgPSBwbGF0Zm9ybV9nZXRf aXJxX2J5bmFtZShwZGV2LCBpcnFfbmFtZSk7DQo+ID4gKwlpZiAoaXJxIDwgMCkgew0KPiA+ICsJ CWRldl9lcnIoZGV2LCAiRmFpbGVkIHRvIGdldCBJUlEgQ0hHX1NUQVRVUzogJWRcbiIsIGlycSk7 DQo+ID4gKwkJcmV0dXJuOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCWZyZWVfaXJxKGlycSwgY2hh cmdlcik7DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0YXRpYyBpbnQgZGE5MTUwX2NoYXJnZXJfcHJv YmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCj4gPiArew0KPiA+ICsJc3RydWN0IGRl dmljZSAqZGV2ID0gJnBkZXYtPmRldjsNCj4gPiArCXN0cnVjdCBkYTkxNTAgKmRhOTE1MCA9IGRl dl9nZXRfZHJ2ZGF0YShkZXYtPnBhcmVudCk7DQo+ID4gKwlzdHJ1Y3QgZGE5MTUwX2NoYXJnZXIg KmNoYXJnZXI7DQo+ID4gKwlzdHJ1Y3QgcG93ZXJfc3VwcGx5ICp1c2IsICpiYXR0ZXJ5Ow0KPiA+ ICsJdTggcmVnOw0KPiA+ICsJaW50IHJldDsNCj4gPiArDQo+ID4gKwljaGFyZ2VyID0gZGV2bV9r emFsbG9jKGRldiwgc2l6ZW9mKHN0cnVjdCBkYTkxNTBfY2hhcmdlciksIEdGUF9LRVJORUwpOw0K PiA+ICsJaWYgKGNoYXJnZXIgPT0gTlVMTCkNCj4gPiArCQlyZXR1cm4gLUVOT01FTTsNCj4gDQo+ IHNpemVvZihzdHJ1Y3QgZGE5MTUwX2NoYXJnZXIpIGNhbiBiZSByZXBsYWNlZCB3aXRoIHNpemVv ZigqY2hhcmdlcikuLi4NCj4gDQo+ICohKiBvcGVyYXRvciBjYW4gYmUgdXNlZCBpbiBjb21wYXJp c29uIHdpdGggTlVMTC4uLg0KPiANCg0KWWVzLCBidXQgZnVuY3Rpb25hbGx5IG5vIGRpZmZlcmVu dC4gQ2FuIG1heWJlIGNoYW5nZSB0aGlzIGFyb3VuZCBsYXRlciwgYnV0DQp3b3VsZCBsaWtlIHRv IGF2b2lkIGNoYW5naW5nIGN1cnJlbnQgcGF0Y2ggc2V0IHJpZ2h0IG5vdy4NCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail1.bemta14.messagelabs.com ([193.109.254.107]:34176 "EHLO mail1.bemta14.messagelabs.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932436AbbA0QQi (ORCPT ); Tue, 27 Jan 2015 11:16:38 -0500 From: "Opensource [Adam Thomson]" To: Varka Bhadram , "Opensource [Adam Thomson]" , Lee Jones , Samuel Ortiz , Jonathan Cameron , Hartmut Knaack , "linux-iio@vger.kernel.org" , Sebastian Reichel , "Dmitry Eremin-Solenikov" , David Woodhouse , "linux-pm@vger.kernel.org" , Rob Herring , Pawel Moll , "Mark Rutland" , Ian Campbell , Kumar Gala , Grant Likely , "devicetree@vger.kernel.org" , Andrew Morton , Joe Perches CC: "linux-kernel@vger.kernel.org" , "Support Opensource" Subject: RE: [PATCH v6 5/7] power: Add support for DA9150 Charger Date: Tue, 27 Jan 2015 16:16:31 +0000 Message-ID: <2E89032DDAA8B9408CB92943514A0337AB529E6E@SW-EX-MBX01.diasemi.com> References: <54BFD072.8000707@gmail.com> In-Reply-To: <54BFD072.8000707@gmail.com> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Sender: linux-iio-owner@vger.kernel.org List-Id: linux-iio@vger.kernel.org T24gSmFudWFyeSAyMSwgMjAxNSAxNjoxNSwgVmFya2EgQmhhZHJhbSB3cm90ZToNCg0KPiBPbiBX ZWRuZXNkYXkgMjEgSmFudWFyeSAyMDE1IDA5OjE2IFBNLCBBZGFtIFRob21zb24gd3JvdGU6DQo+ ID4gVGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIERBOTE1MCBDaGFyZ2VyICYgRnVlbC1HYXVn ZSBJQyBDaGFyZ2VyLg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogQWRhbSBUaG9tc29uIDxBZGFt LlRob21zb24uT3BlbnNvdXJjZUBkaWFzZW1pLmNvbT4NCj4gPiAtLS0NCj4gDQo+ICguLi4pDQo+ IA0KPiA+ICtzdGF0aWMgaW50IGRhOTE1MF9jaGFyZ2VyX3JlZ2lzdGVyX2lycShzdHJ1Y3QgcGxh dGZvcm1fZGV2aWNlICpwZGV2LA0KPiA+ICsJCQkJICAgICAgIGlycV9oYW5kbGVyX3QgaGFuZGxl ciwNCj4gPiArCQkJCSAgICAgICBjb25zdCBjaGFyICppcnFfbmFtZSkNCj4gPiArew0KPiA+ICsJ c3RydWN0IGRldmljZSAqZGV2ID0gJnBkZXYtPmRldjsNCj4gPiArCXN0cnVjdCBkYTkxNTBfY2hh cmdlciAqY2hhcmdlciA9IHBsYXRmb3JtX2dldF9kcnZkYXRhKHBkZXYpOw0KPiA+ICsJaW50IGly cSwgcmV0Ow0KPiA+ICsNCj4gPiArCWlycSA9IHBsYXRmb3JtX2dldF9pcnFfYnluYW1lKHBkZXYs IGlycV9uYW1lKTsNCj4gPiArCWlmIChpcnEgPCAwKSB7DQo+ID4gKwkJZGV2X2VycihkZXYsICJG YWlsZWQgdG8gZ2V0IElSUSBDSEdfU1RBVFVTOiAlZFxuIiwgaXJxKTsNCj4gPiArCQlyZXR1cm4g aXJxOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCXJldCA9IHJlcXVlc3RfdGhyZWFkZWRfaXJxKGly cSwgTlVMTCwgaGFuZGxlciwgSVJRRl9PTkVTSE9ULCBpcnFfbmFtZSwNCj4gPiArCQkJCSAgIGNo YXJnZXIpOw0KPiANCj4gV2h5IGRvbiB5b3UgdXNlIGRldm1fKiBBUEkuLj8NCg0KQXMgbWVudGlv bmVkIGluIHByZXZpb3VzIGRpc2N1c3Npb25zLCB0aGUgb3JkZXIgb2YgdGlkeSB1cCBpcyBpbXBv cnRhbnQgc28gDQpkZXZtXyogZnVuY3Rpb25zIGNhbm5vdCBiZSB1c2VkIGhlcmUuDQoNCj4gDQo+ ID4gKwlpZiAocmV0KQ0KPiA+ICsJCWRldl9lcnIoZGV2LCAiRmFpbGVkIHRvIHJlcXVlc3QgSVJR ICVkOiAlZFxuIiwgaXJxLCByZXQpOw0KPiA+ICsNCj4gPiArCXJldHVybiByZXQ7DQo+ID4gK30N Cj4gPiArDQo+ID4gK3N0YXRpYyB2b2lkIGRhOTE1MF9jaGFyZ2VyX3VucmVnaXN0ZXJfaXJxKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsDQo+ID4gKwkJCQkJICBjb25zdCBjaGFyICppcnFf bmFtZSkNCj4gPiArew0KPiA+ICsJc3RydWN0IGRldmljZSAqZGV2ID0gJnBkZXYtPmRldjsNCj4g PiArCXN0cnVjdCBkYTkxNTBfY2hhcmdlciAqY2hhcmdlciA9IHBsYXRmb3JtX2dldF9kcnZkYXRh KHBkZXYpOw0KPiA+ICsJaW50IGlycTsNCj4gPiArDQo+ID4gKwlpcnEgPSBwbGF0Zm9ybV9nZXRf aXJxX2J5bmFtZShwZGV2LCBpcnFfbmFtZSk7DQo+ID4gKwlpZiAoaXJxIDwgMCkgew0KPiA+ICsJ CWRldl9lcnIoZGV2LCAiRmFpbGVkIHRvIGdldCBJUlEgQ0hHX1NUQVRVUzogJWRcbiIsIGlycSk7 DQo+ID4gKwkJcmV0dXJuOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCWZyZWVfaXJxKGlycSwgY2hh cmdlcik7DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0YXRpYyBpbnQgZGE5MTUwX2NoYXJnZXJfcHJv YmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCj4gPiArew0KPiA+ICsJc3RydWN0IGRl dmljZSAqZGV2ID0gJnBkZXYtPmRldjsNCj4gPiArCXN0cnVjdCBkYTkxNTAgKmRhOTE1MCA9IGRl dl9nZXRfZHJ2ZGF0YShkZXYtPnBhcmVudCk7DQo+ID4gKwlzdHJ1Y3QgZGE5MTUwX2NoYXJnZXIg KmNoYXJnZXI7DQo+ID4gKwlzdHJ1Y3QgcG93ZXJfc3VwcGx5ICp1c2IsICpiYXR0ZXJ5Ow0KPiA+ ICsJdTggcmVnOw0KPiA+ICsJaW50IHJldDsNCj4gPiArDQo+ID4gKwljaGFyZ2VyID0gZGV2bV9r emFsbG9jKGRldiwgc2l6ZW9mKHN0cnVjdCBkYTkxNTBfY2hhcmdlciksIEdGUF9LRVJORUwpOw0K PiA+ICsJaWYgKGNoYXJnZXIgPT0gTlVMTCkNCj4gPiArCQlyZXR1cm4gLUVOT01FTTsNCj4gDQo+ IHNpemVvZihzdHJ1Y3QgZGE5MTUwX2NoYXJnZXIpIGNhbiBiZSByZXBsYWNlZCB3aXRoIHNpemVv ZigqY2hhcmdlcikuLi4NCj4gDQo+ICohKiBvcGVyYXRvciBjYW4gYmUgdXNlZCBpbiBjb21wYXJp c29uIHdpdGggTlVMTC4uLg0KPiANCg0KWWVzLCBidXQgZnVuY3Rpb25hbGx5IG5vIGRpZmZlcmVu dC4gQ2FuIG1heWJlIGNoYW5nZSB0aGlzIGFyb3VuZCBsYXRlciwgYnV0DQp3b3VsZCBsaWtlIHRv IGF2b2lkIGNoYW5naW5nIGN1cnJlbnQgcGF0Y2ggc2V0IHJpZ2h0IG5vdy4NCg==