/** * struct pwrseq_unit_data - Configuration of a single power sequencing * unit. * @name: Name of the unit. * @deps: Units that must be enabled before this one and disabled after it * in the order they come in this array. Must be NULL-terminated. * @enable: Callback running the part of the power-on sequence provided by * this unit. * @disable: Callback running the part of the power-off sequence provided * by this unit.
*/ struct pwrseq_unit_data { constchar *name; conststruct pwrseq_unit_data **deps;
pwrseq_power_state_func enable;
pwrseq_power_state_func disable;
};
/** * struct pwrseq_target_data - Configuration of a power sequencing target. * @name: Name of the target. * @unit: Final unit that this target must reach in order to be considered * enabled. * @post_enable: Callback run after the target unit has been enabled, *after* * the state lock has been released. It's useful for implementing * boot-up delays without blocking other users from powering up * using the same power sequencer.
*/ struct pwrseq_target_data { constchar *name; conststruct pwrseq_unit_data *unit;
pwrseq_power_state_func post_enable;
};
/** * struct pwrseq_config - Configuration used for registering a new provider. * @parent: Parent device for the sequencer. Must be set. * @owner: Module providing this device. * @drvdata: Private driver data. * @match: Provider callback used to match the consumer device to the sequencer. * @targets: Array of targets for this power sequencer. Must be NULL-terminated.
*/ struct pwrseq_config { struct device *parent; struct module *owner; void *drvdata;
pwrseq_match_func match; conststruct pwrseq_target_data **targets;
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.