这不是我看到的行为。它看起来几乎好像没有背压来自设备,除非它变得不响应。如果FX3有50个缓冲器,并且我尝试发送足够的OUTURBS来填充70个缓冲器,则前50个缓冲器每次发送8个,并立即被攻击。在FX3缓冲区被填充之后,Linux停止调用我的写回调处理程序(意味着它可能不会从设备接收任何ACK或NAK),即使在FX3缓冲区被GPIF接口消耗掉之后。
当FX3从50个缓冲区中满50个到50个满49个时,不应该被FX3通知吗?
如果这个过程不是自动的,我怎么才能在FX3上启用它呢?
以上来自于百度翻译
以下为原文
This is not the behavior I'm seeing. It appears almost as if there is no back pressure from the device except for it becoming non-responsive. If the FX3 has 50 buffers, and I try to send enough OUT URBs to fill up 70 buffers the first 50 buffers are sent 8 at a time and are ACKed immediately. After the FX3 buffers are filled Linux stops calling my write callback handler (meaning it might not be receiving any ACK or NAK from the device) even after the FX3 buffers are being consumed by the GPIF interface.
Shouldn't Linux be notified by the FX3 when the FX3 goes from haveing 50 out of 50 buffers full to only 49 out of 50 being full?
If this process isn't automatic how do I enable it on the FX3?
这不是我看到的行为。它看起来几乎好像没有背压来自设备,除非它变得不响应。如果FX3有50个缓冲器,并且我尝试发送足够的OUTURBS来填充70个缓冲器,则前50个缓冲器每次发送8个,并立即被攻击。在FX3缓冲区被填充之后,Linux停止调用我的写回调处理程序(意味着它可能不会从设备接收任何ACK或NAK),即使在FX3缓冲区被GPIF接口消耗掉之后。
当FX3从50个缓冲区中满50个到50个满49个时,不应该被FX3通知吗?
如果这个过程不是自动的,我怎么才能在FX3上启用它呢?
以上来自于百度翻译
以下为原文
This is not the behavior I'm seeing. It appears almost as if there is no back pressure from the device except for it becoming non-responsive. If the FX3 has 50 buffers, and I try to send enough OUT URBs to fill up 70 buffers the first 50 buffers are sent 8 at a time and are ACKed immediately. After the FX3 buffers are filled Linux stops calling my write callback handler (meaning it might not be receiving any ACK or NAK from the device) even after the FX3 buffers are being consumed by the GPIF interface.
Shouldn't Linux be notified by the FX3 when the FX3 goes from haveing 50 out of 50 buffers full to only 49 out of 50 being full?
If this process isn't automatic how do I enable it on the FX3?
举报