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