Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4d4bac44 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'usb-for-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next



Felipe writes:

usb: patches for v3.20 merge window

Here's the big pull request for Gadgets and PHYs. It's
a total of 217 non-merge commits with pretty much everything
being touched.

The most important bits are a ton of new documentation for
almost all usb gadget functions, a new isp1760 UDC driver,
several improvements to the old net2280 UDC driver, and
some minor tracepoint improvements to dwc3.

Other than that, a big list of minor cleanups, smaller bugfixes
and new features all over the place.

Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parents 7fa40910 9298b4aa
Loading
Loading
Loading
Loading
+265 −0
Original line number Diff line number Diff line
What:		/config/usb-gadget/gadget/functions/uvc.name
Date:		Dec 2014
KernelVersion:	3.20
Description:	UVC function directory

		streaming_maxburst	- 0..15 (ss only)
		streaming_maxpacket	- 1..1023 (fs), 1..3072 (hs/ss)
		streaming_interval	- 1..16

What:		/config/usb-gadget/gadget/functions/uvc.name/control
Date:		Dec 2014
KernelVersion:	3.20
Description:	Control descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/class
Date:		Dec 2014
KernelVersion:	3.20
Description:	Class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/class/ss
Date:		Dec 2014
KernelVersion:	3.20
Description:	Super speed control class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/class/fs
Date:		Dec 2014
KernelVersion:	3.20
Description:	Full speed control class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal
Date:		Dec 2014
KernelVersion:	3.20
Description:	Terminal descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal/output
Date:		Dec 2014
KernelVersion:	3.20
Description:	Output terminal descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal/output/default
Date:		Dec 2014
KernelVersion:	3.20
Description:	Default output terminal descriptors

		All attributes read only:
		iTerminal	- index of string descriptor
		bSourceID 	- id of the terminal to which this terminal
				is connected
		bAssocTerminal	- id of the input terminal to which this output
				terminal is associated
		wTerminalType	- terminal type
		bTerminalID	- a non-zero id of this terminal

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera
Date:		Dec 2014
KernelVersion:	3.20
Description:	Camera terminal descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera/default
Date:		Dec 2014
KernelVersion:	3.20
Description:	Default camera terminal descriptors

		All attributes read only:
		bmControls		- bitmap specifying which controls are
					supported for the video stream
		wOcularFocalLength	- the value of Locular
		wObjectiveFocalLengthMax- the value of Lmin
		wObjectiveFocalLengthMin- the value of Lmax
		iTerminal		- index of string descriptor
		bAssocTerminal		- id of the output terminal to which
					this terminal is connected
		wTerminalType		- terminal type
		bTerminalID		- a non-zero id of this terminal

What:		/config/usb-gadget/gadget/functions/uvc.name/control/processing
Date:		Dec 2014
KernelVersion:	3.20
Description:	Processing unit descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/processing/default
Date:		Dec 2014
KernelVersion:	3.20
Description:	Default processing unit descriptors

		All attributes read only:
		iProcessing	- index of string descriptor
		bmControls	- bitmap specifying which controls are
				supported for the video stream
		wMaxMultiplier	- maximum digital magnification x100
		bSourceID	- id of the terminal to which this unit is
				connected
		bUnitID		- a non-zero id of this unit

What:		/config/usb-gadget/gadget/functions/uvc.name/control/header
Date:		Dec 2014
KernelVersion:	3.20
Description:	Control header descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/header/name
Date:		Dec 2014
KernelVersion:	3.20
Description:	Specific control header descriptors

dwClockFrequency
bcdUVC
What:		/config/usb-gadget/gadget/functions/uvc.name/streaming
Date:		Dec 2014
KernelVersion:	3.20
Description:	Streaming descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/class
Date:		Dec 2014
KernelVersion:	3.20
Description:	Streaming class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/class/ss
Date:		Dec 2014
KernelVersion:	3.20
Description:	Super speed streaming class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/class/hs
Date:		Dec 2014
KernelVersion:	3.20
Description:	High speed streaming class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/class/fs
Date:		Dec 2014
KernelVersion:	3.20
Description:	Full speed streaming class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching
Date:		Dec 2014
KernelVersion:	3.20
Description:	Color matching descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching/default
Date:		Dec 2014
KernelVersion:	3.20
Description:	Default color matching descriptors

		All attributes read only:
		bMatrixCoefficients	- matrix used to compute luma and
					chroma values from the color primaries
		bTransferCharacteristics- optoelectronic transfer
					characteristic of the source picutre,
					also called the gamma function
		bColorPrimaries		- color primaries and the reference
					white

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg
Date:		Dec 2014
KernelVersion:	3.20
Description:	MJPEG format descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg/name
Date:		Dec 2014
KernelVersion:	3.20
Description:	Specific MJPEG format descriptors

		All attributes read only,
		except bmaControls and bDefaultFrameIndex:
		bmaControls		- this format's data for bmaControls in
					the streaming header
		bmInterfaceFlags	- specifies interlace information,
					read-only
		bAspectRatioY		- the X dimension of the picture aspect
					ratio, read-only
		bAspectRatioX		- the Y dimension of the picture aspect
					ratio, read-only
		bmFlags			- characteristics of this format,
					read-only
		bDefaultFrameIndex	- optimum frame index for this stream

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg/name/name
Date:		Dec 2014
KernelVersion:	3.20
Description:	Specific MJPEG frame descriptors

		dwFrameInterval		- indicates how frame interval can be
					programmed; a number of values
					separated by newline can be specified
		dwDefaultFrameInterval	- the frame interval the device would
					like to use as default
		dwMaxVideoFrameBufferSize- the maximum number of bytes the
					compressor will produce for a video
					frame or still image
		dwMaxBitRate		- the maximum bit rate at the shortest
					frame interval in bps
		dwMinBitRate		- the minimum bit rate at the longest
					frame interval in bps
		wHeight			- height of decoded bitmap frame in px
		wWidth			- width of decoded bitmam frame in px
		bmCapabilities		- still image support, fixed frame-rate
					support

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed
Date:		Dec 2014
KernelVersion:	3.20
Description:	Uncompressed format descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed/name
Date:		Dec 2014
KernelVersion:	3.20
Description:	Specific uncompressed format descriptors

		bmaControls		- this format's data for bmaControls in
					the streaming header
		bmInterfaceFlags	- specifies interlace information,
					read-only
		bAspectRatioY		- the X dimension of the picture aspect
					ratio, read-only
		bAspectRatioX		- the Y dimension of the picture aspect
					ratio, read-only
		bDefaultFrameIndex	- optimum frame index for this stream
		bBitsPerPixel		- number of bits per pixel used to
					specify color in the decoded video
					frame
		guidFormat		- globally unique id used to identify
					stream-encoding format

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed/name/name
Date:		Dec 2014
KernelVersion:	3.20
Description:	Specific uncompressed frame descriptors

		dwFrameInterval		- indicates how frame interval can be
					programmed; a number of values
					separated by newline can be specified
		dwDefaultFrameInterval	- the frame interval the device would
					like to use as default
		dwMaxVideoFrameBufferSize- the maximum number of bytes the
					compressor will produce for a video
					frame or still image
		dwMaxBitRate		- the maximum bit rate at the shortest
					frame interval in bps
		dwMinBitRate		- the minimum bit rate at the longest
					frame interval in bps
		wHeight			- height of decoded bitmap frame in px
		wWidth			- width of decoded bitmam frame in px
		bmCapabilities		- still image support, fixed frame-rate
					support

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/header
Date:		Dec 2014
KernelVersion:	3.20
Description:	Streaming header descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/header/name
Date:		Dec 2014
KernelVersion:	3.20
Description:	Specific streaming header descriptors

		All attributes read only:
		bTriggerUsage		- how the host software will respond to
					a hardware trigger interrupt event
		bTriggerSupport		- flag specifying if hardware
					triggering is supported
		bStillCaptureMethod	- method of still image caputre
					supported
		bTerminalLink		- id of the output terminal to which
					the video endpoint of this interface
					is connected
		bmInfo			- capabilities of this video streaming
					interface
+4 −1
Original line number Diff line number Diff line
@@ -51,7 +51,10 @@ usb1: gadget@fffa4000 {
Atmel High-Speed USB device controller

Required properties:
 - compatible: Should be "atmel,at91sam9rl-udc"
 - compatible: Should be one of the following
	       "at91sam9rl-udc"
	       "at91sam9g45-udc"
	       "sama5d3-udc"
 - reg: Address and length of the register set for the device
 - interrupts: Should contain usba interrupt
 - ep childnode: To specify the number of endpoints and their properties.
+4 −0
Original line number Diff line number Diff line
@@ -20,6 +20,10 @@ Optional properties:
Refer to phy/phy-bindings.txt for generic phy consumer properties
- dr_mode: shall be one of "host", "peripheral" and "otg"
  Refer to usb/generic.txt
- g-use-dma: enable dma usage in gadget driver.
- g-rx-fifo-size: size of rx fifo size in gadget mode.
- g-np-tx-fifo-size: size of non-periodic tx fifo size in gadget mode.
- g-tx-fifo-size: size of periodic tx fifo per endpoint (except ep0) in gadget mode.

Example:

+2 −0
Original line number Diff line number Diff line
@@ -14,6 +14,8 @@ Optional properties:
			 function should be enabled
  - phys: phandle + phy specifier pair
  - phy-names: must be "usb"
  - dmas: Must contain a list of references to DMA specifiers.
  - dma-names : Must contain a list of DMA names, "tx" or "rx".

Example:
	usbhs: usb@e6590000 {
+9 −1
Original line number Diff line number Diff line
@@ -13,10 +13,15 @@ Optional properties:
- clock-frequency: the clock frequency (in Hz) that the PHY clock must
  be configured to.

- vcc-supply: phandle to the regulator that provides RESET to the PHY.
- vcc-supply: phandle to the regulator that provides power to the PHY.

- reset-gpios: Should specify the GPIO for reset.

- vbus-detect-gpio: should specify the GPIO detecting a VBus insertion
                    (see Documentation/devicetree/bindings/gpio/gpio.txt)
- vbus-regulator : should specifiy the regulator supplying current drawn from
  the VBus line (see Documentation/devicetree/bindings/regulator/regulator.txt).

Example:

	hsusb1_phy {
@@ -26,8 +31,11 @@ Example:
		clock-names = "main_clk";
		vcc-supply = <&hsusb1_vcc_regulator>;
		reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
		vbus-detect-gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>;
		vbus-regulator = <&vbus_regulator>;
	};

hsusb1_phy is a NOP USB PHY device that gets its clock from an oscillator
and expects that clock to be configured to 19.2MHz by the NOP PHY driver.
hsusb1_vcc_regulator provides power to the PHY and GPIO 7 controls RESET.
GPIO 13 detects VBus insertion, and accordingly notifies the vbus-regulator.
Loading