On Sun, Oct 12, 2014 at 12:32:56PM +0300, Octavian Purdila wrote: > On Sat, Oct 11, 2014 at 11:14 PM, Mark Roszko <mark.roszko@xxxxxxxxx> wrote: > > > This seems limiting to arches with peripherals that can support a range of > > frequencies rather than fixed numbers. > > Also it creates some portability quirkiness between platforms when all the > > i2c bus drivers have different supported freq lists and you have to match > > exactly the right frequency. I.e. one guy does 60khz but another only has > > 80khz. > > Sorry, I don't understand your points here. If this limitations exists > they are not introduced by this patch. This patch just exposes the > frequency so that it can be read or changed in userspace. > > > Another issue is in systems where you have i2c devices on the same bus as > > the sysfs user space driver. User space could set a bus frequency that > > prevents operation with a system i2c device. > > Changing the frequency is limited to root. Also, bus drivers do not > have to implement set_freq if it is thought not to be safe. > > On a different not, I have noticed that a fixed set of frequencies > might not be the best API, since multiple drivers rather support a > rather large set of frequencies in a range. A better API might be to > expose a min-max range and let the bus driver adjust the requested > frequency. I will follow up with a second version that does that. As two separate sysfs attributes, maybe ? sysfs is supposed to provide one value per attribute. For the patch itself, I would find it better if you used is_visible to determine if the new attributes should be visible (and/or writable) instead of returning -EOPNOTSUPP. Guenter -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html