On Tue, 12 Apr 2011, Michał Mirosław wrote:
> 2011/4/11 John Calixto <john.cali...@modsystems.com>:
> [...]
> > --- /dev/null
> > +++ b/include/linux/mmc/ioctl.h
> > @@ -0,0 +1,32 @@
> > +#ifndef _MMC_IOCTL_H
> > +#define _MMC_IOCTL_H
> > +struct mmc_ioc_cmd {
> > +       /* implies direction of data.  true = write, false = read */
> > +       int write_flag;
> > +
> > +       __u32 opcode;
> > +       __u32 arg;
> > +       __u32 response[4];  /* CMD response */
> > +       unsigned int flags;
> > +       unsigned int blksz;
> > +       unsigned int blocks;
> > +
> > +       /*
> > +        * Sleep at least postsleep_min_us useconds, and at most
> > +        * postsleep_max_us useconds *after* issuing command.  Needed for 
> > some
> > +        * read commands for which cards have no other way of indicating
> > +        * they're ready for the next command (i.e. there is no equivalent 
> > of a
> > +        * "busy" indicator for read operations).
> > +        */
> > +       unsigned int postsleep_min_us;
> > +       unsigned int postsleep_max_us;
> > +
> > +       /*
> > +        * Override driver-computed timeouts.  Note the difference in units!
> > +        */
> > +       unsigned int data_timeout_ns;
> > +       unsigned int cmd_timeout_ms;
> > +       __u64 data_ptr;  /* DAT buffer */
> 
> This will be more natural if you have an anonymous union here:
> union {
>   __u64 data_ptr_l;
>   void *data_ptr;
> };
> 

Ah, but of course!  Thanks!

John

Reply via email to