Great! Thanks for hanging in there on this. We will take a look at this next week and try to determine what the root cause is.
-Don
On 10/26/06,
Russell Krayer <[EMAIL PROTECTED]> wrote:
>From: "Russell Krayer" <[EMAIL PROTECTED]>
>To: [EMAIL PROTECTED], [EMAIL PROTECTED]
>CC: hplip-devel@lists.sourceforge.net
>Subject: Re: [HPLIP-Devel] big-endian troubles scanning?
>Date: Thu, 26 Oct 2006 20:38:59 -0400
>
>
>>From: "Russell Krayer" <[EMAIL PROTECTED]>
>>To: [EMAIL PROTECTED], [EMAIL PROTECTED]
>>CC: hplip-devel@lists.sourceforge.net
>>Subject: Re: [HPLIP-Devel] big-endian troubles scanning?
>>Date: Thu, 26 Oct 2006 19:57:56 -0400
>>
>>I'm getting a little suspicious of the htole16 macro used in device.cpp,
>>Device::WriteECPChannel(). I wrote this test code and tried it on both of
>>my boxes, the AMD64 box and the powerpc. The output was the same on both
>>boxes:
>>
>>--------------------------------------
>>#include <iostream>
>>#include "hpiod.h"
>>
>>using namespace std;
>>
>>int
>>main(int argc, char* argv[])
>>{
>> unsigned short value = 1;
>>
>> cout << "Value: " << value << endl;
>> cout << "hotle16(value): " << htole16(value) << endl;
>>
>> return 0;
>>}
>>-------------------------------------------------------------------
>>
>>But, I'm not sure if I built my test executables correctly. I see the
>>#define WORDS_BIGENDIAN controls this macro but I don't understand exactly
>>how the configure stuff sets it up. Perhaps WORDS_BIGENDIAN is not
>>getting defined on the powerpc platform. In any case, this macro might
>>deserve some scrutiny.
>>
>>
>>Regards,
>>Russ Krayer
>>
>>
>Ok, I see now that the Makefile on the powerpc has -DWORDS_BIGENDIAN=1 in
>the DEFS variable. And so I compiled my test program that way and then the
>output was swapped vs the AMD64 box. Then, I ran it with the value 77 and
>the output (in hex) was 4d00. Interestingly enough, 4d00 and 004d are one
>of the discrepancies in the usbmon output I captured and posted a few days
>ago. I tried 77 because of this line in mlc.cpp in MlcChannel::Open()
>right after the ClaimInterface() call:
>
> if (pDev->WriteECPChannel(fd, 77))
>
>
>I'm tempted to build without the -DWORDS_BIGENDIAN=1to see what happens but
>it doesn't really make sense to me that I should have to do so.
>
>
>Regards,
>Russ Krayer
>
>
Ok, I left the WORDS_BIGENDIAN business alone. Instead, I took out the
usage of the htole16 macro in all of the usb_control_msg() calls in
io/hpiod/device.cpp, rebuilt hpiod and now it works!!
It seems that the complaints to the log about not claiming the interface may
have disappeared as well.
Yahoo!
Maybe you can check out these findings on the Ubuntu setup.
Many thanks to HP for running this open source project.
Regards,
Russ Krayer
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
HPLIP-Devel mailing list
HPLIP-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hplip-devel
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ HPLIP-Devel mailing list HPLIP-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hplip-devel