[PATCH 03/20] Staging: ipack/bridges/tpci200: provide new callbacks to tpci200

Dan Carpenter dan.carpenter at oracle.com
Wed Sep 12 11:59:26 UTC 2012


On Wed, Sep 12, 2012 at 01:21:17PM +0200, Samuel Iglesias Gonsálvez wrote:
> On Wed, 2012-09-12 at 14:13 +0300, Dan Carpenter wrote:
> > On Wed, Sep 12, 2012 at 11:28:33AM +0200, Jens Taprogge wrote:
> > > On Tue, Sep 11, 2012 at 11:47:02AM +0300, Dan Carpenter wrote:
> > > > > +static int tpci200_get_clockrate(struct ipack_device *dev)
> > > > > +{
> > > > > +	struct tpci200_board *tpci200 = check_slot(dev);
> > > > > +	__le16 __iomem *addr;
> > > > 
> > > > The point of the underscores in the __le16 is that you don't want to
> > > > pollute user space headers in glibc with a bunch of kernel typedefs.
> > > > It is not needed here.  (Or if it is, then we would need to replace
> > > > the u16 uses as well).
> > > 
> > > I was under the impression that "__le16" is used to indicate the
> > > byteorder of the pointed to memory.  As far as I can see that
> > > information is lost when we use u16.  Am I missing something?
> > > 
> > 
> > Use the no-underscore version unless it's inside a header which is
> > exported to userspace.
> > 
> > 	le16 __iomem *addr;
> > 
> 
> But it is not declared in linux/types, it is?
> 
> I have found only this typedef in a quick search:
> 
> http://lxr.linux.no/#linux+v3.5.3/fs/ntfs/types.h#L28
> 
> Should we define them in ipack.h header file or they are defined in
> other place?
> 

Oh crap!  You're right.  That's embarrassing.  I'm just totally
wrong here.  Sorry for that.

regards,
dan carpenter




More information about the devel mailing list