>>>> What is a connection ID and why it cannot be inferred from existing >>>> system API? >> The connection-id determines which hypervisor communication channel the >> guest should use to talk to the VMBus host. Reading from DeviceTree allows >> platforms to specify their preferred communication channel, making it more >> flexible (I will add this detail in the commit message). Presently, this >> We don't add properties to make things flexible. You're right. I should have explained better. The connection ID is a hardware configuration detail that defines which specific VMBus channel is used for host-guest communication. This value is configured by the host and passed to the guest through the host's device tree. Different hypervisor versions and configurations may require different channels, and this needs to be specified by the platform. >>>> There's a reason why you have here generic property - this is generic >>>> and/or discoverable and/or whatever software interface. Adding now more >>>> properties, just because you made it generic, is not the way. >> Presently the value is hardcoded and we want to provide a functionality to >> the user to specify their prefered communication channel. This is a >> virtualized hardware property for us. >> That's not really acceptable reason. With such approach I would add 100 >> properties to make various things "flexible". I understand your concern. Let me clarify: this isn't about making things flexible for flexibility's sake. The connection ID is a fundamental hardware configuration parameter that is set by the host and must be matched in the guest. The host configures this value in its device tree and shares it with the guest. Without the correct channel ID, the VMBus communication fails. Different hypervisor configurations require different channels, and this cannot be automatically discovered. Would you prefer if we handled this configuration through a different mechanism? I'm open to suggestions.
Thanks, Hardik