#705[thinkpads] Handling detachment of cables via presence signals

-LCD_PRESENCE should be used to detect lid and thus internal display being connected at power on. Use this to disable rails and interfaces going to that connector when possible, to prevent hardware failure from user attempting to hotplug such connectors.

Also it should detect lid being disconnected during OS runtime via ACPI:

Detect -LCD_PRESENCE going high (SMI/SCI interrupt )

GPI[15:0] can be configured to cause a SMI# or SCI. Note that a GPI can be routed to either an SMI# or an SCI, but not both.

GPIO6 on X200

GPIO_ROUT - GPIO Routing Control Register

If santa rosa or newer just skip directly to softbrick, as they have VBL shorted to VINT with a fuse (ie. they lack control)

Napa thinkpads still have ability to disable VBL rail going to the lid connector.

this also means power-on detection of panel isn't as effective on older platforms, since backlight rail will have to remain powered on.

perhaps beep on detecting disconnected lid during coreboot execution - since usually an LED indicator would be used to observe coreboot running, but without lid connected there is no way to tell, as fan spin is caused solely by EC firmware execution.

Perform emergency shutdown (via softbrick if possible, as this will require user to remove ALL of the power sources before turning it on again - which is what user should do to begin with when attaching/detaching the lid connector)

This won't help with somebody submerging LED backlit panel in water or hotplugging connector on panel side, as PWM control is right next to backlight positive supply. Such occurrences though have not been observed in the userbase unlike rampant LID/keyboard hotplug.

If done, repeat for every other connector with presence detection and relatively HV (Consult Absolute Maximum ratings of chips on each signal), or when reverse polarity is possible

`-LCD_PRESENCE` should be used to detect lid and thus internal display being connected at power on. Use this to disable rails and interfaces going to that connector when possible, to prevent hardware failure from user attempting to hotplug such connectors.
Also it should detect lid being disconnected during OS runtime via ACPI:
* Detect `-LCD_PRESENCE` going high (`SMI`/`SCI` interrupt )
* *GPI[15:0] can be configured to cause a SMI# or SCI. Note that a GPI can be routed to either an SMI# or an SCI, but not both.*
* GPIO6 on X200
* `GPIO_ROUT` - GPIO Routing Control Register
* If santa rosa or newer just skip directly to softbrick, as they have `VBL` shorted to `VINT` with a fuse (ie. they lack control)
* Napa thinkpads still have ability to disable `VBL` rail going to the lid connector.
* this also means power-on detection of panel isn't as effective on older platforms, since backlight rail will have to remain powered on.
* perhaps beep on detecting disconnected lid during coreboot execution - since usually an LED indicator would be used to observe coreboot running, but without lid connected there is no way to tell, as fan spin is caused solely by EC firmware execution.
* Turn off `VBL`/`VCC3P` rails via PMIC (`PANEL_POWER_ON` signal, `L_VDD_EN` on a chipset)
* Turn off ThinkLight rail (`KBD_LIGHT_ON`)
* Emit continuous beep (via EC)
* Perform emergency shutdown (via softbrick if possible, as this will require user to remove ALL of the power sources before turning it on again - which is what user should do to begin with when attaching/detaching the lid connector)
This won't help with somebody submerging LED backlit panel in water or hotplugging connector on panel side, as PWM control is right next to backlight positive supply. Such occurrences though have not been observed in the userbase unlike rampant LID/keyboard hotplug.
--------
If done, repeat for every other connector with presence detection and relatively HV (Consult Absolute Maximum ratings of chips on each signal), or when reverse polarity is possible