and will include support for features like 32 levels of network traffic prioritization
...a fixed number of levels means a badly designed program. Or else it would not put any limitations on the number of levels.
This is not always true. Consider a real time system. If you want to guarantee response times with bounded computational power, you cannot handle an arbitrary number of priorities. Instead, the number might depend on the available timespan and the worst case execution time of your computation. If you combine this with the creation of a protocol, it might very well make sense to reserve a fixed number of bits for the priority designator. This even can help increasing the number of levels or decrease QOS-associated overhead.
Now, it may very well make sense to code the resulting values of such a constraint based design into constants. If you get into the situation that the specification boundaries change (faster minimum hardware for example), you can derive a new set of parameters, change the constants and the eventual piece of code accordingly and distribute the new firmware.
In the end, reconfigurability is only one of the properties in the equation.
The moon is made of green cheese. -- John Heywood