162306a36Sopenharmony_ciWhat: Raise a uevent when a USB charger is inserted or removed 262306a36Sopenharmony_ciDate: 2020-01-14 362306a36Sopenharmony_ciKernelVersion: 5.6 462306a36Sopenharmony_ciContact: linux-usb@vger.kernel.org 562306a36Sopenharmony_ciDescription: There are two USB charger states: 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci - USB_CHARGER_ABSENT 862306a36Sopenharmony_ci - USB_CHARGER_PRESENT 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci There are five USB charger types: 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci ======================== ========================== 1362306a36Sopenharmony_ci USB_CHARGER_UNKNOWN_TYPE Charger type is unknown 1462306a36Sopenharmony_ci USB_CHARGER_SDP_TYPE Standard Downstream Port 1562306a36Sopenharmony_ci USB_CHARGER_CDP_TYPE Charging Downstream Port 1662306a36Sopenharmony_ci USB_CHARGER_DCP_TYPE Dedicated Charging Port 1762306a36Sopenharmony_ci USB_CHARGER_ACA_TYPE Accessory Charging Adapter 1862306a36Sopenharmony_ci ======================== ========================== 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci https://www.usb.org/document-library/battery-charging-v12-spec-and-adopters-agreement 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci Here are two examples taken using ``udevadm monitor -p`` when 2362306a36Sopenharmony_ci USB charger is online:: 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci UDEV change /devices/soc0/usbphynop1 (platform) 2662306a36Sopenharmony_ci ACTION=change 2762306a36Sopenharmony_ci DEVPATH=/devices/soc0/usbphynop1 2862306a36Sopenharmony_ci DRIVER=usb_phy_generic 2962306a36Sopenharmony_ci MODALIAS=of:Nusbphynop1T(null)Cusb-nop-xceiv 3062306a36Sopenharmony_ci OF_COMPATIBLE_0=usb-nop-xceiv 3162306a36Sopenharmony_ci OF_COMPATIBLE_N=1 3262306a36Sopenharmony_ci OF_FULLNAME=/usbphynop1 3362306a36Sopenharmony_ci OF_NAME=usbphynop1 3462306a36Sopenharmony_ci SEQNUM=2493 3562306a36Sopenharmony_ci SUBSYSTEM=platform 3662306a36Sopenharmony_ci USB_CHARGER_STATE=USB_CHARGER_PRESENT 3762306a36Sopenharmony_ci USB_CHARGER_TYPE=USB_CHARGER_SDP_TYPE 3862306a36Sopenharmony_ci USEC_INITIALIZED=227422826 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci USB charger is offline:: 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci KERNEL change /devices/soc0/usbphynop1 (platform) 4362306a36Sopenharmony_ci ACTION=change 4462306a36Sopenharmony_ci DEVPATH=/devices/soc0/usbphynop1 4562306a36Sopenharmony_ci DRIVER=usb_phy_generic 4662306a36Sopenharmony_ci MODALIAS=of:Nusbphynop1T(null)Cusb-nop-xceiv 4762306a36Sopenharmony_ci OF_COMPATIBLE_0=usb-nop-xceiv 4862306a36Sopenharmony_ci OF_COMPATIBLE_N=1 4962306a36Sopenharmony_ci OF_FULLNAME=/usbphynop1 5062306a36Sopenharmony_ci OF_NAME=usbphynop1 5162306a36Sopenharmony_ci SEQNUM=2494 5262306a36Sopenharmony_ci SUBSYSTEM=platform 5362306a36Sopenharmony_ci USB_CHARGER_STATE=USB_CHARGER_ABSENT 5462306a36Sopenharmony_ci USB_CHARGER_TYPE=USB_CHARGER_UNKNOWN_TYPE 55