> Think a little more about what a non-ACPI implementation > would look like: > > 1) Would producers and consumers still need you to set CONFIG_ACPI_WBRF? I would expect there to be an CONFIG_WBRF, and then under that a CONFIG_WBRF_ACPI, CONFIG_WBRF_DT, CONFIG_WBRF_FOOBAR, each indicating they are mutual exclusive to the other. > 2) How would you indicate you need WBRF support? As far as i understand it, you have something in ACPI which indicates it? Could that not also be a DT property? > 3) How would notifications from one device to another work? Linux notified chains? This is something which happens a lot in networking. A physical interface goes down and needs to tell team/bonding interface stack on top of it that its status has changed. It just calls a notification chain. > I don't think those are trivial problems that can be solved by > just making the pointer 'struct device' particularly as with the > ACPI implementation consumers are expecting the notification from > ACPI. Do consumers really care who the notification is from? Isn't the event and its content what matters, not who sent it? But I agree, i don't expect it is trivial. But it is going to get harder and harder to make abstract as more and more users are added. So we need to consider, do you want to do that work now, or later? Do we want to merge something we know is limited and not using the generic kernel abstractions? Andrew