1What:		Raise a uevent when a USB charger is inserted or removed
2Date:		2020-01-14
3KernelVersion:	5.6
4Contact:	linux-usb@vger.kernel.org
5Description:	There are two USB charger states:
6
7		- USB_CHARGER_ABSENT
8		- USB_CHARGER_PRESENT
9
10		There are five USB charger types:
11
12		========================  ==========================
13		USB_CHARGER_UNKNOWN_TYPE  Charger type is unknown
14		USB_CHARGER_SDP_TYPE      Standard Downstream Port
15		USB_CHARGER_CDP_TYPE      Charging Downstream Port
16		USB_CHARGER_DCP_TYPE      Dedicated Charging Port
17		USB_CHARGER_ACA_TYPE      Accessory Charging Adapter
18		========================  ==========================
19
20		https://www.usb.org/document-library/battery-charging-v12-spec-and-adopters-agreement
21
22		Here are two examples taken using ``udevadm monitor -p`` when
23		USB charger is online::
24
25		    UDEV  change   /devices/soc0/usbphynop1 (platform)
26		    ACTION=change
27		    DEVPATH=/devices/soc0/usbphynop1
28		    DRIVER=usb_phy_generic
29		    MODALIAS=of:Nusbphynop1T(null)Cusb-nop-xceiv
30		    OF_COMPATIBLE_0=usb-nop-xceiv
31		    OF_COMPATIBLE_N=1
32		    OF_FULLNAME=/usbphynop1
33		    OF_NAME=usbphynop1
34		    SEQNUM=2493
35		    SUBSYSTEM=platform
36		    USB_CHARGER_STATE=USB_CHARGER_PRESENT
37		    USB_CHARGER_TYPE=USB_CHARGER_SDP_TYPE
38		    USEC_INITIALIZED=227422826
39
40		USB charger is offline::
41
42		    KERNEL change   /devices/soc0/usbphynop1 (platform)
43		    ACTION=change
44		    DEVPATH=/devices/soc0/usbphynop1
45		    DRIVER=usb_phy_generic
46		    MODALIAS=of:Nusbphynop1T(null)Cusb-nop-xceiv
47		    OF_COMPATIBLE_0=usb-nop-xceiv
48		    OF_COMPATIBLE_N=1
49		    OF_FULLNAME=/usbphynop1
50		    OF_NAME=usbphynop1
51		    SEQNUM=2494
52		    SUBSYSTEM=platform
53		    USB_CHARGER_STATE=USB_CHARGER_ABSENT
54		    USB_CHARGER_TYPE=USB_CHARGER_UNKNOWN_TYPE
55