From: Lee Jones <lee.jones@linaro.org> To: Laszlo Papp <lpapp@kde.org> Cc: jdelvare@suse.de, linux@roeck-us.net, lm-sensors@lm-sensors.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] mfd: MAX6650/6651 support Date: Fri, 14 Feb 2014 11:43:49 +0000 [thread overview] Message-ID: <20140214114349.GG9462@lee--X1> (raw) In-Reply-To: <1392369342-11472-2-git-send-email-lpapp@kde.org> >From [PATCH 0/2]: What's the resaon for not testing this on h/w yet? > MAX6650/MAX6651 chip is a multi-function device with I2C busses. The > chip includes fan-speed regulators and monitors, GPIO, and alarm. > > This patch is an initial release of a MAX6650/6651 MFD driver that > supports to enable the chip with its primary I2C bus that will connect > the hwmon, and then the gpio devices for now. > > Signed-off-by: Laszlo Papp <lpapp@kde.org> > --- > drivers/mfd/Kconfig | 11 +++++ > drivers/mfd/Makefile | 1 + > drivers/mfd/max665x.c | 94 +++++++++++++++++++++++++++++++++++++ > include/linux/mfd/max665x-private.h | 34 ++++++++++++++ > 4 files changed, 140 insertions(+) > create mode 100644 drivers/mfd/max665x.c > create mode 100644 include/linux/mfd/max665x-private.h <snip> > +++ b/drivers/mfd/max665x.c > @@ -0,0 +1,94 @@ > +/* > + * Device access for MAX6650-MAX6651 Nit: Prefer "for Maxim MAX6650 and MAX6651" + <device type> <snip> > +#include <linux/device.h> > +#include <linux/mfd/core.h> > +#include <linux/module.h> I thought this driver was bool i.e. Y or N, not tristate? <snip> > +static struct mfd_cell max665x_devs[] = { > + { .name = "max6651-gpio", }, > + { .name = "max6650", }, /* hwmon driver */ We really need to do something about this. Guenter, once we've converted the hwmon part to a platform device, can we then safely rename it with "-hwmon" appended? > + {}, > +}; > + > +static const struct regmap_config max665x_regmap_config = { > + .reg_bits = 8, > + .val_bits = 8, This looks more sane, but it really should be tested. > +static int max665x_probe(struct i2c_client *i2c, > + const struct i2c_device_id *id) > +{ > + struct max665x_dev *max665x; > + int ret; > + > + max665x = devm_kzalloc(&i2c->dev, sizeof(*max665x), GFP_KERNEL); > + if (!max665x) > + return -ENOMEM; > + > + i2c_set_clientdata(i2c, max665x); > + max665x->dev = &i2c->dev; > + max665x->i2c = i2c; > + max665x->map = devm_regmap_init_i2c(i2c, &max665x_regmap_config); > + if (IS_ERR(max665x->map)) { > + ret = PTR_ERR(max665x->map); > + dev_err(max665x->dev, "Failed to allocate register map: %d\n", > + ret); > + return ret; > + } > + > + mutex_init(&max665x->iolock); *cough* > + ret = mfd_add_devices(max665x->dev, -1, max665x_devs, > + ARRAY_SIZE(max665x_devs), > + NULL, 0, NULL); > + > + if (ret < 0) Just 'if (ret)' <snip> > +static struct of_device_id max665x_dt_match[] = { > + { .compatible = "maxim,max665x" }, { .compatible = "maxim,max6650" }, { .compatible = "maxim,max6651" }, > + {}, > +}; > +MODULE_DEVICE_TABLE(of, max665x_dt_match); Module? > +static struct i2c_driver max665x_driver = { > + .driver = { > + .name = "max665x", > + .owner = THIS_MODULE, > + .of_match_table = max665x_dt_match, of_match_ptr() > + }, > + .probe = max665x_probe, > + .remove = max665x_remove, > +}; > + > +module_i2c_driver(max665x_driver); Module? > +MODULE_AUTHOR("Laszlo Papp <laszlo.papp@polatis.com>"); > +MODULE_DESCRIPTION("MAX6650-MAX6651 MFD"); s/-/ and / > +MODULE_LICENSE("GPL"); v1 or v2? <snip> > +#ifndef __LINUX_MFD_MAX665X_PRIVATE_H > +#define __LINUX_MFD_MAX665X_PRIVATE_H > + > +#include <linux/i2c.h> > +#include <linux/regmap.h> > + > +struct max665x_dev { > + struct device *dev; > + struct mutex iolock; *Ah hem* > + struct i2c_client *i2c; > + struct regmap *map; > + int type; What's this used for? > +}; > +#endif -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
WARNING: multiple messages have this Message-ID (diff)
From: Lee Jones <lee.jones@linaro.org> To: Laszlo Papp <lpapp@kde.org> Cc: jdelvare@suse.de, linux@roeck-us.net, lm-sensors@lm-sensors.org, linux-kernel@vger.kernel.org Subject: Re: [lm-sensors] [PATCH 1/2] mfd: MAX6650/6651 support Date: Fri, 14 Feb 2014 11:43:49 +0000 [thread overview] Message-ID: <20140214114349.GG9462@lee--X1> (raw) In-Reply-To: <1392369342-11472-2-git-send-email-lpapp@kde.org> RnJvbSBbUEFUQ0ggMC8yXToKICBXaGF0J3MgdGhlIHJlc2FvbiBmb3Igbm90IHRlc3RpbmcgdGhp cyBvbiBoL3cgeWV0PwoKPiBNQVg2NjUwL01BWDY2NTEgY2hpcCBpcyBhIG11bHRpLWZ1bmN0aW9u IGRldmljZSB3aXRoIEkyQyBidXNzZXMuIFRoZQo+IGNoaXAgaW5jbHVkZXMgZmFuLXNwZWVkIHJl Z3VsYXRvcnMgYW5kIG1vbml0b3JzLCBHUElPLCBhbmQgYWxhcm0uCj4gCj4gVGhpcyBwYXRjaCBp cyBhbiBpbml0aWFsIHJlbGVhc2Ugb2YgYSBNQVg2NjUwLzY2NTEgTUZEIGRyaXZlciB0aGF0Cj4g c3VwcG9ydHMgdG8gZW5hYmxlIHRoZSBjaGlwIHdpdGggaXRzIHByaW1hcnkgSTJDIGJ1cyB0aGF0 IHdpbGwgY29ubmVjdAo+IHRoZSBod21vbiwgYW5kIHRoZW4gdGhlIGdwaW8gZGV2aWNlcyBmb3Ig bm93Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IExhc3psbyBQYXBwIDxscGFwcEBrZGUub3JnPgo+IC0t LQo+ICBkcml2ZXJzL21mZC9LY29uZmlnICAgICAgICAgICAgICAgICB8IDExICsrKysrCj4gIGRy aXZlcnMvbWZkL01ha2VmaWxlICAgICAgICAgICAgICAgIHwgIDEgKwo+ICBkcml2ZXJzL21mZC9t YXg2NjV4LmMgICAgICAgICAgICAgICB8IDk0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKPiAgaW5jbHVkZS9saW51eC9tZmQvbWF4NjY1eC1wcml2YXRlLmggfCAzNCArKysr KysrKysrKysrKwo+ICA0IGZpbGVzIGNoYW5nZWQsIDE0MCBpbnNlcnRpb25zKCspCj4gIGNyZWF0 ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL21mZC9tYXg2NjV4LmMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IGluY2x1ZGUvbGludXgvbWZkL21heDY2NXgtcHJpdmF0ZS5oCgo8c25pcD4KCj4gKysrIGIvZHJp dmVycy9tZmQvbWF4NjY1eC5jCj4gQEAgLTAsMCArMSw5NCBAQAo+ICsvKgo+ICsgKiBEZXZpY2Ug YWNjZXNzIGZvciBNQVg2NjUwLU1BWDY2NTEKCk5pdDogUHJlZmVyICJmb3IgTWF4aW0gTUFYNjY1 MCBhbmQgTUFYNjY1MSIgKyA8ZGV2aWNlIHR5cGU+Cgo8c25pcD4KCj4gKyNpbmNsdWRlIDxsaW51 eC9kZXZpY2UuaD4KPiArI2luY2x1ZGUgPGxpbnV4L21mZC9jb3JlLmg+Cj4gKyNpbmNsdWRlIDxs aW51eC9tb2R1bGUuaD4KCkkgdGhvdWdodCB0aGlzIGRyaXZlciB3YXMgYm9vbCBpLmUuIFkgb3Ig Tiwgbm90IHRyaXN0YXRlPwoKPHNuaXA+Cgo+ICtzdGF0aWMgc3RydWN0IG1mZF9jZWxsIG1heDY2 NXhfZGV2c1tdID0gewo+ICsJeyAubmFtZSA9ICJtYXg2NjUxLWdwaW8iLCB9LAo+ICsJeyAubmFt ZSA9ICJtYXg2NjUwIiwgfSwgLyogaHdtb24gZHJpdmVyICovCgpXZSByZWFsbHkgbmVlZCB0byBk byBzb21ldGhpbmcgYWJvdXQgdGhpcy4KCkd1ZW50ZXIsCiAgb25jZSB3ZSd2ZSBjb252ZXJ0ZWQg dGhlIGh3bW9uIHBhcnQgdG8gYSBwbGF0Zm9ybSBkZXZpY2UsIGNhbiB3ZQogIHRoZW4gc2FmZWx5 IHJlbmFtZSBpdCB3aXRoICItaHdtb24iIGFwcGVuZGVkPwoKPiArCXt9LAo+ICt9Owo+ICsKPiAr c3RhdGljIGNvbnN0IHN0cnVjdCByZWdtYXBfY29uZmlnIG1heDY2NXhfcmVnbWFwX2NvbmZpZyA9 IHsKPiArCS5yZWdfYml0cyA9IDgsCj4gKwkudmFsX2JpdHMgPSA4LAoKVGhpcyBsb29rcyBtb3Jl IHNhbmUsIGJ1dCBpdCByZWFsbHkgc2hvdWxkIGJlIHRlc3RlZC4KCj4gK3N0YXRpYyBpbnQgbWF4 NjY1eF9wcm9iZShzdHJ1Y3QgaTJjX2NsaWVudCAqaTJjLAo+ICsJCQkgICAgY29uc3Qgc3RydWN0 IGkyY19kZXZpY2VfaWQgKmlkKQo+ICt7Cj4gKwlzdHJ1Y3QgbWF4NjY1eF9kZXYgKm1heDY2NXg7 Cj4gKwlpbnQgcmV0Owo+ICsKPiArCW1heDY2NXggPSBkZXZtX2t6YWxsb2MoJmkyYy0+ZGV2LCBz aXplb2YoKm1heDY2NXgpLCBHRlBfS0VSTkVMKTsKPiArCWlmICghbWF4NjY1eCkKPiArCQlyZXR1 cm4gLUVOT01FTTsKPiArCj4gKwlpMmNfc2V0X2NsaWVudGRhdGEoaTJjLCBtYXg2NjV4KTsKPiAr CW1heDY2NXgtPmRldiA9ICZpMmMtPmRldjsKPiArCW1heDY2NXgtPmkyYyA9IGkyYzsKPiArCW1h eDY2NXgtPm1hcCA9IGRldm1fcmVnbWFwX2luaXRfaTJjKGkyYywgJm1heDY2NXhfcmVnbWFwX2Nv bmZpZyk7Cj4gKwlpZiAoSVNfRVJSKG1heDY2NXgtPm1hcCkpIHsKPiArCQlyZXQgPSBQVFJfRVJS KG1heDY2NXgtPm1hcCk7Cj4gKwkJZGV2X2VycihtYXg2NjV4LT5kZXYsICJGYWlsZWQgdG8gYWxs b2NhdGUgcmVnaXN0ZXIgbWFwOiAlZFxuIiwKPiArCQkJcmV0KTsKPiArCQlyZXR1cm4gcmV0Owo+ ICsJfQo+ICsKPiArCW11dGV4X2luaXQoJm1heDY2NXgtPmlvbG9jayk7CgoqY291Z2gqCgo+ICsJ cmV0ID0gbWZkX2FkZF9kZXZpY2VzKG1heDY2NXgtPmRldiwgLTEsIG1heDY2NXhfZGV2cywKPiAr CQkJQVJSQVlfU0laRShtYXg2NjV4X2RldnMpLAo+ICsJCQlOVUxMLCAwLCBOVUxMKTsKPiArCj4g KwlpZiAocmV0IDwgMCkKCkp1c3QgJ2lmIChyZXQpJwoKPHNuaXA+Cgo+ICtzdGF0aWMgc3RydWN0 IG9mX2RldmljZV9pZCBtYXg2NjV4X2R0X21hdGNoW10gPSB7Cj4gKwl7IC5jb21wYXRpYmxlID0g Im1heGltLG1heDY2NXgiIH0sCgogIAl7IC5jb21wYXRpYmxlID0gIm1heGltLG1heDY2NTAiIH0s CiAgCXsgLmNvbXBhdGlibGUgPSAibWF4aW0sbWF4NjY1MSIgfSwKCj4gKwl7fSwKPiArfTsKPiAr TU9EVUxFX0RFVklDRV9UQUJMRShvZiwgbWF4NjY1eF9kdF9tYXRjaCk7CgpNb2R1bGU/Cgo+ICtz dGF0aWMgc3RydWN0IGkyY19kcml2ZXIgbWF4NjY1eF9kcml2ZXIgPSB7Cj4gKwkuZHJpdmVyID0g ewo+ICsJCS5uYW1lID0gIm1heDY2NXgiLAo+ICsJCS5vd25lciA9IFRISVNfTU9EVUxFLAo+ICsJ CS5vZl9tYXRjaF90YWJsZSA9IG1heDY2NXhfZHRfbWF0Y2gsCgpvZl9tYXRjaF9wdHIoKQoKPiAr CX0sCj4gKwkucHJvYmUgPSBtYXg2NjV4X3Byb2JlLAo+ICsJLnJlbW92ZSA9IG1heDY2NXhfcmVt b3ZlLAo+ICt9Owo+ICsKPiArbW9kdWxlX2kyY19kcml2ZXIobWF4NjY1eF9kcml2ZXIpOwoKTW9k dWxlPwoKPiArTU9EVUxFX0FVVEhPUigiTGFzemxvIFBhcHAgPGxhc3psby5wYXBwQHBvbGF0aXMu Y29tPiIpOwo+ICtNT0RVTEVfREVTQ1JJUFRJT04oIk1BWDY2NTAtTUFYNjY1MSBNRkQiKTsKCnMv LS8gYW5kIC8KCj4gK01PRFVMRV9MSUNFTlNFKCJHUEwiKTsKCnYxIG9yIHYyPwoKPHNuaXA+Cgo+ ICsjaWZuZGVmIF9fTElOVVhfTUZEX01BWDY2NVhfUFJJVkFURV9ICj4gKyNkZWZpbmUgX19MSU5V WF9NRkRfTUFYNjY1WF9QUklWQVRFX0gKPiArCj4gKyNpbmNsdWRlIDxsaW51eC9pMmMuaD4KPiAr I2luY2x1ZGUgPGxpbnV4L3JlZ21hcC5oPgo+ICsKPiArc3RydWN0IG1heDY2NXhfZGV2IHsKPiAr CXN0cnVjdCBkZXZpY2UgKmRldjsKPiArCXN0cnVjdCBtdXRleCBpb2xvY2s7CgoqQWggaGVtKgoK PiArCXN0cnVjdCBpMmNfY2xpZW50ICppMmM7Cj4gKwlzdHJ1Y3QgcmVnbWFwICAgICAqbWFwOwo+ ICsJaW50IHR5cGU7CgpXaGF0J3MgdGhpcyB1c2VkIGZvcj8KCj4gK307Cgo+ICsjZW5kaWYKCi0t IApMZWUgSm9uZXMKTGluYXJvIFNUTWljcm9lbGVjdHJvbmljcyBMYW5kaW5nIFRlYW0gTGVhZApM aW5hcm8ub3JnIOKUgiBPcGVuIHNvdXJjZSBzb2Z0d2FyZSBmb3IgQVJNIFNvQ3MKRm9sbG93IExp bmFybzogRmFjZWJvb2sgfCBUd2l0dGVyIHwgQmxvZwoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KbG0tc2Vuc29ycyBtYWlsaW5nIGxpc3QKbG0tc2Vuc29y c0BsbS1zZW5zb3JzLm9yZwpodHRwOi8vbGlzdHMubG0tc2Vuc29ycy5vcmcvbWFpbG1hbi9saXN0 aW5mby9sbS1zZW5zb3Jz
next prev parent reply other threads:[~2014-02-14 11:43 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-02-14 9:15 [RFC PATCH 0/2] Redesign the MAX6650-6651 driver to be more flexible Laszlo Papp 2014-02-14 9:15 ` [lm-sensors] " Laszlo Papp 2014-02-14 9:15 ` [PATCH 1/2] mfd: MAX6650/6651 support Laszlo Papp 2014-02-14 9:15 ` [lm-sensors] " Laszlo Papp 2014-02-14 11:43 ` Lee Jones [this message] 2014-02-14 11:43 ` Lee Jones 2014-02-14 17:24 ` Guenter Roeck 2014-02-14 17:24 ` [lm-sensors] " Guenter Roeck 2014-02-14 9:15 ` [PATCH 2/2] hwmon: (max6650) Convert to be a platform driver Laszlo Papp 2014-02-14 9:15 ` [lm-sensors] " Laszlo Papp 2014-02-14 12:00 ` Lee Jones 2014-02-14 12:00 ` [lm-sensors] " Lee Jones 2014-02-14 17:45 ` Guenter Roeck 2014-02-14 17:45 ` [lm-sensors] " Guenter Roeck
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20140214114349.GG9462@lee--X1 \ --to=lee.jones@linaro.org \ --cc=jdelvare@suse.de \ --cc=linux-kernel@vger.kernel.org \ --cc=linux@roeck-us.net \ --cc=lm-sensors@lm-sensors.org \ --cc=lpapp@kde.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.