Atmel Image Sensor Controller (ISC)
----------------------------------------------

Required properties for ISC:
- compatible
	Must be "atmel,sama5d2-isc".
- reg
	Physical base address and length of the registers set for the device.
- interrupts
	Should contain IRQ line for the ISC.
- clocks
	List of clock specifiers, corresponding to entries in
	the clock-names property;
	Please refer to clock-bindings.txt.
- clock-names
	Required elements: "hclock", "iscck", "gck".
- #clock-cells
	Should be 0.
- clock-output-names
	Should be "isc-mck".
- pinctrl-names, pinctrl-0
	Please refer to pinctrl-bindings.txt.

ISC supports a single port node with parallel bus. It should contain one
'port' child node with child 'endpoint' node. Please refer to the bindings
defined in Documentation/devicetree/bindings/media/video-interfaces.txt.

Example:
isc: isc@f0008000 {
	compatible = "atmel,sama5d2-isc";
	reg = <0xf0008000 0x4000>;
	interrupts = <46 IRQ_TYPE_LEVEL_HIGH 5>;
	clocks = <&isc_clk>, <&iscck>, <&isc_gclk>;
	clock-names = "hclock", "iscck", "gck";
	#clock-cells = <0>;
	clock-output-names = "isc-mck";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_isc_base &pinctrl_isc_data_8bit &pinctrl_isc_data_9_10 &pinctrl_isc_data_11_12>;

	port {
		isc_0: endpoint {
			remote-endpoint = <&ov7740_0>;
			hsync-active = <1>;
			vsync-active = <0>;
			pclk-sample = <1>;
		};
	};
};

i2c1: i2c@fc028000 {
	ov7740: camera@21 {
		compatible = "ovti,ov7740";
		reg = <0x21>;
		clocks = <&isc>;
		clock-names = "xvclk";
		assigned-clocks = <&isc>;
		assigned-clock-rates = <24000000>;

		port {
			ov7740_0: endpoint {
				remote-endpoint = <&isc_0>;
			};
		};
	};
};
