mirror of
https://github.com/torvalds/linux.git
synced 2024-11-29 23:51:37 +00:00
f8fb576658
If the file is written to and sync_state() hasn't been called for the device yet, then call sync_state() for the device independent of the state of its consumers. This is useful for supplier devices that have one or more consumers that don't have a driver but the consumers are in a state that don't use the resources supplied by the supplier device. This gives finer grained control than using the fw_devlink.sync_state=timeout kernel commandline parameter. Signed-off-by: Saravana Kannan <saravanak@google.com> Link: https://lore.kernel.org/r/20230304005355.746421-3-saravanak@google.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
30 lines
1.3 KiB
Plaintext
30 lines
1.3 KiB
Plaintext
What: /sys/devices/.../state_synced
|
|
Date: May 2020
|
|
Contact: Saravana Kannan <saravanak@google.com>
|
|
Description:
|
|
The /sys/devices/.../state_synced attribute is only present for
|
|
devices whose bus types or driver provides the .sync_state()
|
|
callback. The number read from it (0 or 1) reflects the value
|
|
of the device's 'state_synced' field. A value of 0 means the
|
|
.sync_state() callback hasn't been called yet. A value of 1
|
|
means the .sync_state() callback has been called.
|
|
|
|
Generally, if a device has sync_state() support and has some of
|
|
the resources it provides enabled at the time the kernel starts
|
|
(Eg: enabled by hardware reset or bootloader or anything that
|
|
run before the kernel starts), then it'll keep those resources
|
|
enabled and in a state that's compatible with the state they
|
|
were in at the start of the kernel. The device will stop doing
|
|
this only when the sync_state() callback has been called --
|
|
which happens only when all its consumer devices are registered
|
|
and have probed successfully. Resources that were left disabled
|
|
at the time the kernel starts are not affected or limited in
|
|
any way by sync_state() callbacks.
|
|
|
|
Writing "1" to this file will force a call to the device's
|
|
sync_state() function if it hasn't been called already. The
|
|
sync_state() call happens independent of the state of the
|
|
consumer devices.
|
|
|
|
|