reggen already supports optional attributes for both registers and their fields. The list of permitted optional attributes currently is a list in the upstream code base. For integrators who want to define their own optional register and field attributes, this means they have to patch upstream code as they ingest it, which is not ideal.
To improve the situation for integrators, we can add a mechanism through which integrators can define additional optional attributes for reggen registers and register fields without having to modify any source code that is part of the upstream repository. Those attributes wouldn't be supported in any way by the upstream code (e.g., no code gets generated from them); the upstream code just wouldn't reject them (unless they clash with attributes defined upstream -- no guarantees on that).