firmware update with descriptor length fix