Message ID | 20200317201710.23180-1-alazar@startmail.com (mailing list archive) |
---|---|
Headers | show |
Series | Maxim MAX1241 driver | expand |
On 3/17/20 9:17 PM, Alexandru Lazar wrote: > Hello! > > This patch series adds support for the Maxim MAX1241, a 12-bit, > single-channel, SPI-connected ADC. It's a pretty sturdy ADC that I've > used for some time now and I figured my driver may be useful to others > as well. > > I originally thought I might get this under the max1027 driver but the > 124x family is different enough that shoehorning it in there didn't seem > like a good idea. The 1241 has a single channel, no FIFO, uses a > different mechanism to signal conversion start and has a low-power > operation mode which it uses in a pretty different way. This is actually > closer to MAX111x, but those also have a pretty different signaling > convention. > > Needless to say, though, if anyone who is more familiar with this > situation disagrees and wants to point me in the direction of the > appropriate driver, I'm happy to make the changes there instead of > providing a separate driver. I think your approach is the best approach here. Trying to build "generic" drivers that support lots of only partially related devices can get messy real quick. > > Also please note that I am somewhat unfamiliar with the idioms of the > IIO subsystem's tree. Jonathan Cameron was kind enough to give me a few > pointers but there are a few questions I didn't bother him with (so I'm > guess I'm gonna bother you instead now). > > 1. There are two ADCs in this family, MAX1240 and MAX1241. This driver > only supports the MAX1241. The scaffolding to get MAX1240 support is in > there, but I didn't have access to a MAX1240 and I didn't want to submit > untested code for review. Can we add MAX1240 support later, or should I > do it from the very beginning? Either way is fine by me (I'm just a > little concerned about how quickly I might *get* a MAX1240 these > days...) > Can be added later. Its always good to start with a small tested baseline. But either way it is up to you, no problem with having it supported by the initial patch either. > 2. Looking at other drivers, it seems to me that, on ADCs that require > an external reference, it's customary to make a voltage regulator a > required property in the DT bindings. Am I correct here? Yes. > > 3. checkpatch.pl warns me that the MAINTAINERS file might need > updating. I'm not sure what the appropriate thing to do is here -- I can > maintain this driver indefinitely (I am actively using it anways) but > it's a 200-line driver, does that warrant inclusion in MAINTAINERS? Different people will have different options on this. My opinion is that it is not needed for small drivers. get_maintainers.pl will list your name anyway since you are the author for the commit. > My apologies if anything here is distinctly bad -- this isn't the first > time I'm writing kernel code but it's definitely the first time I'm > sending ay upstream. Any bugs are due to my own incompetence, everything > else is just temporary ignorance :-). The driver's code looks very clean. Top job! - Lars