SMIA/SMIA++ sensor

SMIA (Standard Mobile Imaging Architecture) is an image sensor standard
defined jointly by Nokia and ST. SMIA++, defined by Nokia, is an extension
of that. These definitions are valid for both types of sensors.

More detailed documentation can be found in
Documentation/devicetree/bindings/media/video-interfaces.txt .

The device node should contain a "port" node which may contain one or more
endpoint nodes, in accordance with video interface bindings defined in
Documentation/devicetree/bindings/media/video-interfaces.txt .

Mandatory properties
--------------------

- compatible: "nokia,smia"
- reg: I2C address (0x10, or an alternative address)
- vana-supply: Analogue voltage supply (VANA), typically 2,8 volts (sensor
  dependent).
- clocks: External clock to the sensor
- clock-frequency: Frequency of the external clock to the sensor
- link-frequencies: List of allowed data link frequencies. An array of
  64-bit elements.


Optional properties
-------------------

- nokia,nvm-size: The size of the NVM, in bytes. If the size is not given,
  the NVM contents will not be read.
- reset-gpios: XSHUTDOWN GPIO
- flash-leds: See ../video-interfaces.txt
- lens-focus: See ../video-interfaces.txt
- rotation: Integer property; valid values are 0 (sensor mounted upright)
	    and 180 (sensor mounted upside down). See
	    ../video-interfaces.txt .


Endpoint node mandatory properties
----------------------------------

- data-lanes: <1..n>


Example
-------

&i2c2 {
	clock-frequency = <400000>;

	camera-sensor@10 {
		compatible = "nokia,smia";
		reg = <0x10>;
		reset-gpios = <&gpio3 20 0>;
		vana-supply = <&vaux3>;
		clocks = <&omap3_isp 0>;
		clock-frequency = <9600000>;
		nokia,nvm-size = <512>; /* 8 * 64 */
		link-frequencies = /bits/ 64 <199200000 210000000 499200000>;
		port {
			smiapp_ep: endpoint {
				data-lanes = <1 2>;
				remote-endpoint = <&csi2a_ep>;
			};
		};
	};
};
