Hi Aaron,
applied the patch and it worked, but it seems that it doesn't solve my 
problem:

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Sep  9 11:17:46 vaio-z1 hpiod: unexpected DOT4CreditRequest: cmd=4, 
hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 144
Sep  9 11:17:46 vaio-z1 hpiod: unexpected DOT4CreditRequest: cmd=4, 
hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 144
Sep  9 11:17:46 vaio-z1 hpiod: unexpected DOT4CreditRequest: cmd=4, 
hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 144
Sep  9 11:17:46 vaio-z1 hpiod: unexpected DOT4CreditRequest: cmd=4, 
hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 144
Sep  9 11:20:31 vaio-z1 hpiod: unable to read Dot4ReverseReply header: 
Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 252
Sep  9 11:20:31 vaio-z1 hpiod: invalid DOT4InitReply retrying command... 
io/hpiod/dot4.cpp 339
Sep  9 11:20:35 vaio-z1 hpiod: unable to read Dot4ReverseReply header: 
Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 252
Sep  9 11:20:35 vaio-z1 hpiod: invalid DOT4InitReply: cmd=0, result=20 , 
revision=0 io/hpiod/dot4.cpp 350
Sep  9 11:20:36 vaio-z1 
hp_color_LaserJet_2550_series?serial=00CNHHK03579: INFO: open print 
channel failed; will retry in 30 seconds...
Sep  9 11:21:10 vaio-z1 hpiod: unable to read Dot4ReverseReply header: 
Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 252
Sep  9 11:21:10 vaio-z1 hpiod: invalid DOT4InitReply retrying command... 
io/hpiod/dot4.cpp 339
Sep  9 11:21:14 vaio-z1 hpiod: unable to read Dot4ReverseReply header: 
Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 252
Sep  9 11:21:14 vaio-z1 hpiod: invalid DOT4InitReply: cmd=0, result=20 , 
revision=0 io/hpiod/dot4.cpp 350
Sep  9 11:21:15 vaio-z1 
hp_color_LaserJet_2550_series?serial=00CNHHK03579: INFO: open print 
channel failed; will retry in 30 seconds...
Sep  9 11:21:33 vaio-z1 hpiod: device cleanup 
uri=hp:/usb/hp_color_LaserJet_2550_series?serial=00CNHHK03579
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Still the printer doesn't start to print anything....


Aaron J Albright wrote:
> Markus,
> 
> Sorry, correct file attached.
> 
> A
> 
> Markus Huschka wrote:
>> Hi Aaron,
>>
>> did you attach the correct file? It has a different name
>> (hplip-0.9.11-1.patch vs. hpiod-1.6.7-1.patch) and is an update to
>> data/xml/models.xml. So maybe thats the reason why I can't execute the
>> patch:
>>
>> =====================================================================
>> patch -p1 < hplip-0.9.11-1.patch
>> can't find file to patch at input line 4
>> Perhaps you used the wrong -p or --strip option?
>> The text leading up to this was:
>> --------------------------
>> |diff -uNr hplip-0.9.11.old/data/xml/models.xml
>> hplip-0.9.11.new/data/xml/models.xml
>> |--- hplip-0.9.11.old/data/xml/models.xml       2006-05-08
>> 12:27:06.000000000 -0700
>> |+++ hplip-0.9.11.new/data/xml/models.xml       2006-05-10
>> 15:46:29.413942616 -0700
>> --------------------------
>> File to patch:
>> =====================================================================
>>
>> Thanks,
>> Markus
>>
>> Aaron J Albright wrote:
>>> Markus,
>>>
>>> Can you try again but with this patch?
>>>
>>> Thanks.
>>>
>>> tar xzvf hplip-1.6.7.tar.gz
>>>  > > cp hpiod-1.6.7-1.patch hplip-1.6.7/io/hpiod
>>>  > > cd hplip-1.6.7/io/hpiod
>>>  > > patch -p1 < hpiod-1.6.7-1.patch
>>>  > > cd ../..
>>>  > > ./configure --prefix=/usr
>>>  > > make
>>>  > > make install
>>>
>>> Aaron
>>>
>>> Markus Huschka wrote:
>>>> Hi,
>>>>
>>>> I got my new printer, a Color LaserJet 2550LN, and tried to print using
>>>> hplip 1.6.7 and cups 1.2.2. It's connected via USB to my gentoo box.
>>>> Everything seems to work except that I'm not able to print using hplip.
>>>> I can check the printerstatus with hp-toolbox and all information about
>>>> cartridges, printerstatus, etc are shown correctly, but it's impossible
>>>> to print a testpage or any other document. If I try to print I get the
>>>> following errors in /var/log/messages and the printer never starts 
>>>> to print:
>>>>
>>>> ----------------------------------------------------------------------------------------------------------------------------------------------------------
>>>>  
>>>>
>>>> Aug 28 15:35:27 lumpen hpiod: unable to read Dot4ReverseReply header:
>>>> Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 245
>>>> Aug 28 15:35:27 lumpen hpiod: invalid DOT4InitReply retrying command...
>>>> io/hpiod/dot4.cpp 332
>>>> Aug 28 15:35:31 lumpen hpiod: unable to read Dot4ReverseReply header:
>>>> Resource temporarily unavailable bytesRead=0 io/hpiod/dot4.cpp 245
>>>> Aug 28 15:35:31 lumpen hpiod: invalid DOT4InitReply: cmd=0, result=20 ,
>>>> revision=74 io/hpiod/dot4.cpp 343
>>>> Aug 28 15:35:32 lumpen
>>>> hp_color_LaserJet_2550_series?serial=00CNHHK03579: INFO: open print
>>>> channel failed; will retry in 30 seconds...
>>>> ----------------------------------------------------------------------------------------------------------------------------------------------------------
>>>>  
>>>>
>>>>
>>>> When starting hp-toolbox these messages appear in /var/log/messages:
>>>>
>>>> ----------------------------------------------------------------------------------------------------------------------------------------------------------
>>>>  
>>>>
>>>> Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4,
>>>> hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137
>>>> Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4,
>>>> hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137
>>>> Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4,
>>>> hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137
>>>> Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4,
>>>> hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137
>>>> Aug 28 15:34:58 lumpen hpiod: unexpected DOT4CreditRequest: cmd=4,
>>>> hid=1, pid=1, maxcredit=8: io/hpiod/dot4.cpp 137
>>>> ----------------------------------------------------------------------------------------------------------------------------------------------------------
>>>>  
>>>>
>>>>
>>>> The printer works fine using the usb:// backend or MS Windows XP and 
>>>> has
>>>> the most recent firmware installed.  How can this problem be solved?
>>>> If you need any other infos, log-files, etc. tell me!
>>>> Thanks for your help!
>>>>
>>>> ------------------------------------------------------------------------- 
>>>>
>>>> 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-Help mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/hplip-help
>>>>
>>> ------------------------------------------------------------------------
>>>
>>> diff -uNr hplip-0.9.11.old/data/xml/models.xml 
>>> hplip-0.9.11.new/data/xml/models.xml
>>> --- hplip-0.9.11.old/data/xml/models.xml    2006-05-08 
>>> 12:27:06.000000000 -0700
>>> +++ hplip-0.9.11.new/data/xml/models.xml    2006-05-10 
>>> 15:46:29.413942616 -0700
>>> @@ -7797,6 +7797,32 @@
>>>      </r0>
>>>  </model>
>>>  
>>> +<model name="PSC_950xi">
>>> +    <id>MFG:Hewlett-Packard;MDL:PSC 900 Series;SKU:PSC 
>>> 950;CMD:2,PCL,PML;CLASS:PRINTER;DESCRIPTION:Hewlett-Packard PSC 900 
>>> Series;1284.3M:f7f,f7f;1284.4DL:4d,4e,1;SERN:MY15U31143WP;VSTATUS:$AU0$AU0,ff,DN,PENF,CUT,K0,C0,SM,NR,KP066,CP095;AiO:00;DW-PCL;</id>
>>>  
>>>
>>> +    <icon>PSC_900_Series.png</icon>
>>> +    <support type="2"/>
>>> +    <case-model>
>>> +    </case-model>
>>> +    <io support="2" mode="1" control="0" mfp-mode="2" scan-port="0"/>
>>> +    <align type="9"/>
>>> +    <clean type="3"/>
>>> +    <color-cal type="0"/>
>>> +    <status type="1"/>
>>> +    <scan type="1"/>
>>> +    <fax type="0"/>
>>> +    <pcard type="1"/>
>>> +    <copy type="0"/>
>>> +    <tech class="DJ9xx" type="2"/>
>>> +    <embedded-server type="0"/>
>>> +    <panel-check type="1"/>
>>> +    <linefeed-cal type="0"/>
>>> +    <pq-diag type="0"/>
>>> +    <r0>
>>> +        <agent1 kind="3" type="1" sku="15 (C6615DN)"/>
>>> +        <agent2 kind="3" type="2" sku="78 (C6578AN / C6578DN)"/>
>>> +    </r0>
>>> +</model>
>>> +
>>>  <model name="Photosmart_2570_series">
>>>      <id></id>
>>>      <icon>psc_2300_series.png</icon>
>>
>>
>> -------------------------------------------------------------------------
>> 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-Help mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/hplip-help
>>
> 
> ------------------------------------------------------------------------
> 
> diff -uNr old/device.cpp new/device.cpp
> --- old/device.cpp    2006-08-28 12:24:04.192691635 -0700
> +++ new/device.cpp    2006-08-28 12:22:47.078508175 -0700
> @@ -448,11 +448,20 @@
>     hd = FD[fd].pHD;
>  
>     len = usb_control_msg(hd, 
> +             USB_ENDPOINT_OUT | USB_TYPE_CLASS | USB_RECIP_OTHER, /* 
> bmRequestType */
> +             0x02,        /* bRequest */
> +             0,        /* wValue */
> +             0, /* wIndex */
> +             NULL, 0, LIBUSB_CONTROL_REQ_TIMEOUT);
> +
> +#if 0
> +   len = usb_control_msg(hd, 
>               USB_ENDPOINT_IN | USB_TYPE_CLASS | USB_RECIP_OTHER, /* 
> bmRequestType */
>               0x02,        /* bRequest */
>               0,        /* wValue */
>               0, /* wIndex */
>               NULL, 0, LIBUSB_CONTROL_REQ_TIMEOUT);
> +#endif
>  
>     if (len < 0)
>     {
> diff -uNr old/dot4.cpp new/dot4.cpp
> --- old/dot4.cpp      2006-08-28 12:23:54.154974760 -0700
> +++ new/dot4.cpp      2006-08-28 12:22:33.824184882 -0700
> @@ -88,6 +88,13 @@
>        {
>           /* Got a valid data packet handle it. This can happen when ReadData 
> timeouts and p2hcredit=1. */
>           pC = (Dot4Channel *)pDev->pChannel[i];
> +
> +         if (pC->GetP2HCredit() <= 0)
> +         {
> +            syslog(LOG_ERR, "invalid data packet credit=%d: %s %d\n", 
> pC->GetP2HCredit(), __FILE__, __LINE__);
> +            return 0;
> +         }
> +
>           size = ntohs(pCmd->h.length) - sizeof(DOT4Header);
>           if (size > (MAX_RECEIVER_DATA - pC->rcnt))
>           {
> @@ -459,7 +466,7 @@
>  /* Read data from peripheral. */
>  int Dot4Channel::Dot4ReverseData(int fd, int sockid, unsigned char *buf, int 
> length, int timeout)
>  {
> -   int len, size, total;
> +   int len, size, total, i;
>     DOT4Header *pPk;
>  
>     pPk = (DOT4Header *)buf;
> @@ -517,6 +524,43 @@
>              Dot4ExecReverseCmd(fd, buf);
>              continue;   /* try again for data packet */
>           }
> +         else if ((pPk->psid == pPk->ssid) && ((i = 
> Dot4Socket2Channel(pPk->psid)) >= 0))
> +         {
> +            /* Got a valid data packet for another channel handle it. This 
> can happen when ReadData timeouts and p2hcredit=1. */
> +            Dot4Channel *pC = (Dot4Channel *)pDev->pChannel[i];
> +            unsigned char *pBuf;
> +
> +            if (pC->GetP2HCredit() <= 0)
> +            {
> +               syslog(LOG_ERR, "invalid data packet credit=%d: %s %d\n", 
> pC->GetP2HCredit(), __FILE__, __LINE__);
> +               goto bugout;
> +            }
> +
> +            if (size > (MAX_RECEIVER_DATA - pC->rcnt))
> +            {
> +               syslog(LOG_ERR, "invalid data packet size=%d: %s %d\n", size, 
> __FILE__, __LINE__);
> +               goto bugout;
> +            }
> +            
> +            total = 0;
> +            pBuf = &pC->rbuf[pC->rcnt];
> +            while (size > 0)
> +            {
> +               if ((len = pDev->Read(fd, pBuf+total, size)) < 0)
> +               {
> +                  syslog(LOG_ERR, "unable to read Dot4ReverseData: %m %s 
> %d\n", __FILE__, __LINE__);
> +                  goto bugout;
> +               }
> +               size-=len;
> +               total+=len;
> +            }
> +
> +            pC->rcnt += total;
> +            if (pPk->credit)
> +               pC->SetH2PCredit(pC->GetH2PCredit() + pPk->credit);  /* note, 
> piggy back credit is 1 byte wide */ 
> +            pC->SetP2HCredit(pC->GetP2HCredit()-1); /* one data packet was 
> read, decrement credit count */
> +            continue;   /* try again for data packet */
> +         }
>           else
>           {
>              DOT4Cmd *pCmd = (DOT4Cmd *)buf;
> diff -uNr old/mlc.cpp new/mlc.cpp
> --- old/mlc.cpp       2006-08-28 12:23:44.212244284 -0700
> +++ new/mlc.cpp       2006-08-28 12:22:28.770823225 -0700
> @@ -83,6 +83,13 @@
>        {
>           /* Got a valid data packet handle it. This can happen when ReadData 
> timeouts and p2hcredit=1. */
>           pC = (MlcChannel *)pDev->pChannel[i];
> +
> +         if (pC->GetP2HCredit() <= 0)
> +         {
> +            syslog(LOG_ERR, "invalid data packet credit=%d: %s %d\n", 
> pC->GetP2HCredit(), __FILE__, __LINE__);
> +            return 0;
> +         }
> +
>           size = ntohs(pCmd->h.length) - sizeof(MLCHeader);
>           if (size > (MAX_RECEIVER_DATA - pC->rcnt))
>           {
> @@ -467,7 +474,7 @@
>  /* Read data from peripheral. */
>  int MlcChannel::MlcReverseData(int fd, int sockid, unsigned char *buf, int 
> length, int timeout)
>  {
> -   int len, size, total;
> +   int len, size, total, i;
>     MLCHeader *pPk;
>  
>     pPk = (MLCHeader *)buf;
> @@ -502,7 +509,7 @@
>  
>        if (size > length)
>        {
> -         syslog(LOG_ERR, "invalid MlcReverseData size: size=%d, buf=%d\n", 
> size, length);
> +         syslog(LOG_ERR, "invalid MlcReverseData size: size=%d, buf=%d %s 
> %d\n", size, length, __FILE__, __LINE__);
>           goto bugout;
>        } 
>  
> @@ -516,7 +523,7 @@
>              {
>                 if ((len = pDev->Read(fd, buf+total, size)) < 0)
>                 {
> -                  syslog(LOG_ERR, "unable to read MlcReverseData command: 
> %m\n");
> +                  syslog(LOG_ERR, "unable to read MlcReverseData command: %m 
> %s %d\n", __FILE__, __LINE__);
>                    goto bugout;
>                 }
>                 size-=len;
> @@ -525,10 +532,48 @@
>              MlcExecReverseCmd(fd, buf);
>              continue;   /* try again for data packet */
>           }
> +         else if ((pPk->hsid == pPk->psid) && ((i = 
> MlcSocket2Channel(pPk->hsid)) >= 0))
> +         {
> +            /* Got a valid data packet for another channel handle it. This 
> can happen when ReadData timeouts and p2hcredit=1. */
> +            MlcChannel *pC = (MlcChannel *)pDev->pChannel[i];
> +            unsigned char *pBuf;
> +
> +            if (pC->GetP2HCredit() <= 0)
> +            {
> +               syslog(LOG_ERR, "invalid data packet credit=%d: %s %d\n", 
> pC->GetP2HCredit(), __FILE__, __LINE__);
> +               goto bugout;
> +            }
> +
> +            if (size > (MAX_RECEIVER_DATA - pC->rcnt))
> +            {
> +               syslog(LOG_ERR, "invalid data packet size=%d: %s %d\n", size, 
> __FILE__, __LINE__);
> +               goto bugout;
> +            }
> +            
> +            total = 0;
> +            pBuf = &pC->rbuf[pC->rcnt];
> +            while (size > 0)
> +            {
> +               if ((len = pDev->Read(fd, pBuf+total, size)) < 0)
> +               {
> +                  syslog(LOG_ERR, "unable to read MlcReverseData: %m %s 
> %d\n", __FILE__, __LINE__);
> +                  goto bugout;
> +               }
> +               size-=len;
> +               total+=len;
> +            }
> +
> +            pC->rcnt += total;
> +            if (pPk->credit)
> +               pC->SetH2PCredit(pC->GetH2PCredit() + pPk->credit);  /* note, 
> piggy back credit is 1 byte wide */ 
> +            pC->SetP2HCredit(pC->GetP2HCredit()-1); /* one data packet was 
> read, decrement credit count */
> +            continue;   /* try again for data packet */
> +         }
>           else
>           {
>              MLCCmd *pCmd = (MLCCmd *)buf;
> -            syslog(LOG_ERR, "invalid MlcReverseData state: unexpected packet 
> hsid=%x, psid=%x, cmd=%x\n", pPk->hsid, pPk->psid, pCmd->cmd);
> +            syslog(LOG_ERR, "invalid MlcReverseData state: exp hsid=%x, act 
> hsid=%x, psid=%x, length=%d, credit=%d, status=%x, cmd=%x %s %d\n", sockid, 
> +                                                pPk->hsid, pPk->psid, 
> ntohs(pPk->length), pPk->credit, pPk->status, pCmd->cmd, __FILE__, __LINE__);
>              goto bugout;
>           }
>        }
> @@ -545,7 +590,7 @@
>        {
>           if ((len = pDev->Read(fd, buf+total, size)) < 0)
>           {
> -            syslog(LOG_ERR, "unable to read MlcReverseData: %m\n");
> +            syslog(LOG_ERR, "unable to read MlcReverseData: %m %s %d\n", 
> __FILE__, __LINE__);
>              goto bugout;
>           }
>           size-=len;

-------------------------------------------------------------------------
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-Help mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/hplip-help

Reply via email to