Hi, This series is the rough beginnings of the QEMU Object Model. This is basically qdev generalized on steroids.
This series includes the core infrastructure, a strawman Device type, and the beginnings of the conversion of CharDriverState. This is in a rougher state than I would like it to be but I wanted to get the concepts on the list as soon as possible. My plan is to drop the Device parts from future versions of the series and just focus on backends to start with. Please note that this series has an awful lot of ramifications. Most of our current command line options would become deprecated, the build system will change significantly, and a lot of our QMP functions will become deprecated. It seems like a lot of change, but hopefully this series illustrates how we can do it very incrementally with value being added at each stage of the conversion.