Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
What:		Raise a uevent when a USB charger is inserted or removed
Date:		2020-01-14
KernelVersion:	5.6
Contact:	linux-usb@vger.kernel.org
Description:	There are two USB charger states:

		- USB_CHARGER_ABSENT
		- USB_CHARGER_PRESENT

		There are five USB charger types:

		========================  ==========================
		USB_CHARGER_UNKNOWN_TYPE  Charger type is unknown
		USB_CHARGER_SDP_TYPE      Standard Downstream Port
		USB_CHARGER_CDP_TYPE      Charging Downstream Port
		USB_CHARGER_DCP_TYPE      Dedicated Charging Port
		USB_CHARGER_ACA_TYPE      Accessory Charging Adapter
		========================  ==========================

		https://www.usb.org/document-library/battery-charging-v12-spec-and-adopters-agreement

		Here are two examples taken using ``udevadm monitor -p`` when
		USB charger is online::

		    UDEV  change   /devices/soc0/usbphynop1 (platform)
		    ACTION=change
		    DEVPATH=/devices/soc0/usbphynop1
		    DRIVER=usb_phy_generic
		    MODALIAS=of:Nusbphynop1T(null)Cusb-nop-xceiv
		    OF_COMPATIBLE_0=usb-nop-xceiv
		    OF_COMPATIBLE_N=1
		    OF_FULLNAME=/usbphynop1
		    OF_NAME=usbphynop1
		    SEQNUM=2493
		    SUBSYSTEM=platform
		    USB_CHARGER_STATE=USB_CHARGER_PRESENT
		    USB_CHARGER_TYPE=USB_CHARGER_SDP_TYPE
		    USEC_INITIALIZED=227422826

		USB charger is offline::

		    KERNEL change   /devices/soc0/usbphynop1 (platform)
		    ACTION=change
		    DEVPATH=/devices/soc0/usbphynop1
		    DRIVER=usb_phy_generic
		    MODALIAS=of:Nusbphynop1T(null)Cusb-nop-xceiv
		    OF_COMPATIBLE_0=usb-nop-xceiv
		    OF_COMPATIBLE_N=1
		    OF_FULLNAME=/usbphynop1
		    OF_NAME=usbphynop1
		    SEQNUM=2494
		    SUBSYSTEM=platform
		    USB_CHARGER_STATE=USB_CHARGER_ABSENT
		    USB_CHARGER_TYPE=USB_CHARGER_UNKNOWN_TYPE