On 12/10/20 6:44 PM, Simon Glass wrote:

[...]

Note also the semantics of what is going on here. The idea of the
existing OS_PREPARE and ACTIVE_DMA flags is that the default for
device_remove() is to remove everything, but if you provide a flag
then it just removes those things. Your flag is the opposite to that,
which is why you are changing so much code.

I obviously cannot remove everything, see the example above.

Do you understand what I am saying about inverting the flag?

No, please elaborate.

The normal situation should be to remove everything. Removing only
non-late things (which I want to call 'basic', or something like that)
should be an option, like we have DM_REMOVE_OS_PREPARE.

We cannot remove everything at once, because then various real hardware cannot work properly. So there needs to be some way to remove e.g. the clock drivers later. Marking a couple of drivers as "remove-late" is much less intrusive than marking most drivers as "do-not-remove-early".

How do you propose this "inverted" remove flag would look like ?

[...]

Reply via email to