This change add a new optional console method cn_resume and a kernel
console interface cnresume. Consoles that may need to re-initialize
their hardware after suspend (e.g., because firmware does not care to do
it) will implement cn_resume. Note that it is called in rather early
environment not unlike early boot, so the same restrictions apply.
Platform specific code, for platforms that support hardware suspend,
should call cnresume early after resume, before any console output is
expected..
Details
Details
This change fixes a problem with a system of mine failing to resume when
a serial console is used. I found that the serial port was in a strange
configuration and an attempt to write to it likely resulted in an
infinite loop.
Diff Detail
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
This looks good.
sys/x86/acpica/acpi_wakeup.c | ||
---|---|---|
304–305 ↗ | (On Diff #42926) | I'd remove these two lines because (a) it's not true (video works and thus supports resuming) and (b) UART may need it, but only rarely. Statements like this go stale too quickly. |
sys/x86/acpica/acpi_wakeup.c | ||
---|---|---|
304–305 ↗ | (On Diff #42926) | What I intended to say was that only uart driver supports the resume method. In any case, I agree that that statement does not add much value and can become stale rather soon. |