[Linux-parport] parport data_reverse patch

Johann Klammer klammerr at aon.at
Thu Mar 4 07:30:41 EST 2010


Steve deRosier wrote:
> All,
> 
> I am having some trouble with parallel ports with VMWare server
> running on Ubuntu.
> 
> When you try to use the parallel port, it won't work and the dmesg
> output will show something like:
> 
> [78100.870664] parport0 (ppdev0): use data_reverse for this!
> [78106.513997] parport0 (ppdev0): use data_reverse for this!
> [78181.921856] parport0 (ppdev0): use data_reverse for this!
> 
> A few searches came up with information leading to the following code
> work around:
> 
> --- include/linux/parport_pc.h.orig     2009-12-03 11:27:03.000000000 -0800
> +++ include/linux/parport_pc.h  2009-12-02 12:24:53.000000000 -0800
> @@ -144,7 +144,7 @@
>  static __inline__ void parport_pc_data_reverse (struct parport *p)
>  {
> -       __parport_pc_frob_control (p, 0x20, 0x20);
> +//     __parport_pc_frob_control (p, 0x20, 0x20);
>  }
>  static __inline__ void parport_pc_data_forward (struct parport *p)
> 
Hellow,
AFAIK Above message appears if you try to set the direction bit using xxx_write_control instead of using xxx_data_reverse.
On my box(kernel version 2.6.30) it does work as expected despite the message. The corresponding code snippet is in include/linux/parport_pc.h function parport_pc_write_control.
I don't think your 'patch' solves your problem. It effectively disables the data_reverse function which would (probably) break existing code.

BTW What _exactly_ does not work?

regards
JK



More information about the Linux-parport mailing list