From: Jamie Iles <jamie@jamieiles.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Jamie Iles <jamie@jamieiles.com>,
Mike Frysinger <vapier@gentoo.org>,
linux-kernel@vger.kernel.org, gregkh@suse.de
Subject: Re: [RFC PATCHv2 1/4] drivers/otp: add initial support for OTP memory
Date: Sat, 26 Mar 2011 00:21:59 +0000 [thread overview]
Message-ID: <20110326002159.GY3130@pulham.picochip.com> (raw)
In-Reply-To: <201103260002.19291.arnd@arndb.de>
On Sat, Mar 26, 2011 at 12:02:19AM +0100, Arnd Bergmann wrote:
> On Friday 25 March 2011 23:52:20 Jamie Iles wrote:
> > That's what I intended but I guess it isn't that clear from the code.
> > Perhaps instead of:
> >
> > mutex_lock();
> > region->ops->ioctl();
> > mutex_unlock();
> >
> > if I change it to:
> >
> > mutex_lock();
> > switch (cmd) {
> > default:
> > region->ops->ioctl();
> > }
> > mutex_unlock();
> >
> > then that's a bit clearer. If there's stuff common across different OTP
> > implementations then we can add it to the region ops and decode it here
> > and if not fall back to the specific implementation.
>
> This will make it a lot harder to support compat_ioctl as well.
> Just drop the ->ioctl callback into the driver and make one
> callback per command. Any command that could be reused on
> another driver will then be defined in the common header file
> already and just work on new drivers.
OK, you've convinced me :-)
The only use of an ioctl() at the moment is for locking portions of the
OTP so perhaps we add a new region op .lock(unsigned long start_addr,
size_t nr_words).
For the actual ioctl() we should assume byte addressing rather than
words though and do the conversion in the driver so we can cope with
devices that don't have 64-bit words and do the locking on a looping
word-by-word basis.
struct otp_lock_req {
__u32 start_addr;
__u32 byte_count;
};
The start_addr would be relative to the start of the region.
Mike, would this be OK with you if we used a different ioctl() to the
one bfin-otp is using currently? I notice that it's using the OTPLOCK
ioctl() from MTD but I think it's using the argument in a different way.
Jamie
next prev parent reply other threads:[~2011-03-26 0:22 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-24 15:21 [RFC PATCHv2 0/4] Support for OTP memory Jamie Iles
2011-03-24 15:21 ` [RFC PATCHv2 1/4] drivers/otp: add initial support " Jamie Iles
2011-03-24 18:32 ` Mike Frysinger
2011-03-24 20:35 ` Jamie Iles
2011-03-24 21:33 ` Mike Frysinger
2011-03-25 10:08 ` Jamie Iles
2011-03-25 21:32 ` Mike Frysinger
2011-03-25 22:27 ` Jamie Iles
2011-03-25 22:36 ` Mike Frysinger
2011-03-24 19:20 ` Greg KH
2011-03-24 20:49 ` Jamie Iles
2011-03-25 20:12 ` Arnd Bergmann
2011-03-25 21:12 ` Greg KH
2011-03-25 22:01 ` Arnd Bergmann
2011-03-25 23:28 ` Greg KH
2011-03-26 11:25 ` Arnd Bergmann
2011-03-26 15:10 ` Greg KH
2011-03-28 13:11 ` Arnd Bergmann
2011-03-25 22:23 ` Jamie Iles
2011-03-25 22:35 ` Arnd Bergmann
2011-03-25 22:38 ` Mike Frysinger
2011-03-25 22:52 ` Jamie Iles
2011-03-25 23:02 ` Arnd Bergmann
2011-03-26 0:21 ` Jamie Iles [this message]
2011-03-26 2:16 ` Mike Frysinger
2011-03-26 2:40 ` Jamie Iles
2011-03-26 10:54 ` Arnd Bergmann
2011-03-26 17:55 ` Mike Frysinger
2011-03-26 20:51 ` Arnd Bergmann
2011-03-27 3:52 ` Mike Frysinger
2011-03-27 11:18 ` Arnd Bergmann
2011-03-25 22:53 ` Arnd Bergmann
2011-03-24 15:21 ` [RFC PATCHv2 2/4] drivers/otp: add support for Picoxcell PC3X3 OTP Jamie Iles
2011-03-24 18:50 ` Mike Frysinger
2011-03-24 20:59 ` Jamie Iles
2011-03-24 21:40 ` Mike Frysinger
2011-03-24 15:21 ` [RFC PATCHv2 3/4] drivers/otp: allow an ioctl to be specified Jamie Iles
2011-03-24 18:35 ` Mike Frysinger
2011-03-24 20:36 ` Jamie Iles
2011-03-24 15:21 ` [RFC PATCHv2 4/4] drivers/otp: convert bfin otp to generic OTP Jamie Iles
2011-03-24 18:52 ` Mike Frysinger
2011-03-24 20:40 ` Jamie Iles
2011-03-24 17:39 ` [RFC PATCHv2 0/4] Support for OTP memory Mike Frysinger
2011-03-24 17:47 ` Jamie Iles
2011-03-24 17:56 ` Mike Frysinger
2011-03-24 18:32 ` Jamie Iles
2011-03-24 18:36 ` Mike Frysinger
2011-03-24 20:38 ` Jamie Iles
2011-03-25 0:12 ` Mark Brown
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=20110326002159.GY3130@pulham.picochip.com \
--to=jamie@jamieiles.com \
--cc=arnd@arndb.de \
--cc=gregkh@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=vapier@gentoo.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: link
Be 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.