Updated USB layer from master