/** * struct framer_status - Framer status * @link_is_on: Framer link state. true, the link is on, false, the link is off.
*/ struct framer_status { bool link_is_on;
};
/** * enum framer_event - Event available for notification * @FRAMER_EVENT_STATUS: Event notified on framer_status changes
*/ enum framer_event {
FRAMER_EVENT_STATUS,
};
/** * struct framer - represents the framer device * @dev: framer device * @id: id of the framer device * @ops: function pointers for performing framer operations * @mutex: mutex to protect framer_ops * @init_count: used to protect when the framer is used by multiple consumers * @power_count: used to protect when the framer is used by multiple consumers * @pwr: power regulator associated with the framer * @notify_status_work: work structure used for status notifications * @notifier_list: notifier list used for notifications * @polling_work: delayed work structure used for the polling task * @prev_status: previous read status used by the polling task to detect changes
*/ struct framer { struct device dev; int id; conststruct framer_ops *ops; struct mutex mutex; /* Protect framer */ int init_count; int power_count; struct regulator *pwr; struct work_struct notify_status_work; struct blocking_notifier_head notifier_list; struct delayed_work polling_work; struct framer_status prev_status;
};
#if IS_ENABLED(CONFIG_GENERIC_FRAMER) int framer_pm_runtime_get(struct framer *framer); int framer_pm_runtime_get_sync(struct framer *framer); int framer_pm_runtime_put(struct framer *framer); int framer_pm_runtime_put_sync(struct framer *framer); int framer_init(struct framer *framer); int framer_exit(struct framer *framer); int framer_power_on(struct framer *framer); int framer_power_off(struct framer *framer); int framer_get_status(struct framer *framer, struct framer_status *status); int framer_get_config(struct framer *framer, struct framer_config *config); int framer_set_config(struct framer *framer, conststruct framer_config *config); int framer_notifier_register(struct framer *framer, struct notifier_block *nb); int framer_notifier_unregister(struct framer *framer, struct notifier_block *nb);
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.