Hi Uwe, On Wed, 2011-07-13 at 15:07 +0200, Uwe Bonnes wrote: > Ionut> * isn't encoding the first 16-bit half into > Ionut> urb_index wrong? > > There are a lot of devices out there that work as expected, so we can't be > totally of... > > I tested with a real FT232H device and the algorithm in the FTDI, and with > setting the baudrate so that the divisor should change between 2.0, 2.124, > 2.25, ..., 3 I could see the bittime grow continious. Fractional devide make > the edge jitter as expected... > > So I am quite confident with the patch I sent. I just tested your patch and it worked also on my FT232H. Thanks! So, for 115200 bps, the calculated u32 divisor is: 0x2C068 which gets sent as urb_value = 0xc068 and urb_index = 0x200. I also agree with your previous post that the urb_index calculation (urb_index = (__u16)((urb_index << 8) | priv->interface)) is safe for all devices, so you can remove the switch statement. Can you send an updated patch? Regards, Ionut. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html