reorganize firmware