18c2ecf20Sopenharmony_ciAtmel Image Sensor Interface (ISI) 28c2ecf20Sopenharmony_ci---------------------------------- 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ciRequired properties for ISI: 58c2ecf20Sopenharmony_ci- compatible: must be "atmel,at91sam9g45-isi" or "microchip,sam9x60-isi". 68c2ecf20Sopenharmony_ci- reg: physical base address and length of the registers set for the device. 78c2ecf20Sopenharmony_ci- interrupts: should contain IRQ line for the ISI. 88c2ecf20Sopenharmony_ci- clocks: list of clock specifiers, corresponding to entries in the clock-names 98c2ecf20Sopenharmony_ci property; please refer to clock-bindings.txt. 108c2ecf20Sopenharmony_ci- clock-names: required elements: "isi_clk". 118c2ecf20Sopenharmony_ci- pinctrl-names, pinctrl-0: please refer to pinctrl-bindings.txt. 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciISI supports a single port node with parallel bus. It shall contain one 148c2ecf20Sopenharmony_ci'port' child node with child 'endpoint' node. Please refer to the bindings 158c2ecf20Sopenharmony_cidefined in Documentation/devicetree/bindings/media/video-interfaces.txt. 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ciEndpoint node properties 188c2ecf20Sopenharmony_ci------------------------ 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci- bus-width: <8> or <10> (mandatory) 218c2ecf20Sopenharmony_ci- hsync-active (default: active high) 228c2ecf20Sopenharmony_ci- vsync-active (default: active high) 238c2ecf20Sopenharmony_ci- pclk-sample (default: sample on falling edge) 248c2ecf20Sopenharmony_ci- remote-endpoint: A phandle to the bus receiver's endpoint node (mandatory). 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ciExample: 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ciisi: isi@f0034000 { 298c2ecf20Sopenharmony_ci compatible = "atmel,at91sam9g45-isi"; 308c2ecf20Sopenharmony_ci reg = <0xf0034000 0x4000>; 318c2ecf20Sopenharmony_ci interrupts = <37 IRQ_TYPE_LEVEL_HIGH 5>; 328c2ecf20Sopenharmony_ci pinctrl-names = "default"; 338c2ecf20Sopenharmony_ci pinctrl-0 = <&pinctrl_isi_data_0_7>; 348c2ecf20Sopenharmony_ci clocks = <&isi_clk>; 358c2ecf20Sopenharmony_ci clock-names = "isi_clk"; 368c2ecf20Sopenharmony_ci port { 378c2ecf20Sopenharmony_ci isi_0: endpoint { 388c2ecf20Sopenharmony_ci remote-endpoint = <&ov2640_0>; 398c2ecf20Sopenharmony_ci bus-width = <8>; 408c2ecf20Sopenharmony_ci vsync-active = <1>; 418c2ecf20Sopenharmony_ci hsync-active = <1>; 428c2ecf20Sopenharmony_ci }; 438c2ecf20Sopenharmony_ci }; 448c2ecf20Sopenharmony_ci}; 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_cii2c1: i2c@f0018000 { 478c2ecf20Sopenharmony_ci ov2640: camera@30 { 488c2ecf20Sopenharmony_ci compatible = "ovti,ov2640"; 498c2ecf20Sopenharmony_ci reg = <0x30>; 508c2ecf20Sopenharmony_ci pinctrl-names = "default"; 518c2ecf20Sopenharmony_ci pinctrl-0 = <&pinctrl_pck0_as_isi_mck &pinctrl_sensor_power &pinctrl_sensor_reset>; 528c2ecf20Sopenharmony_ci resetb-gpios = <&pioE 11 GPIO_ACTIVE_LOW>; 538c2ecf20Sopenharmony_ci pwdn-gpios = <&pioE 13 GPIO_ACTIVE_HIGH>; 548c2ecf20Sopenharmony_ci clocks = <&pck0>; 558c2ecf20Sopenharmony_ci clock-names = "xvclk"; 568c2ecf20Sopenharmony_ci assigned-clocks = <&pck0>; 578c2ecf20Sopenharmony_ci assigned-clock-rates = <25000000>; 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci port { 608c2ecf20Sopenharmony_ci ov2640_0: endpoint { 618c2ecf20Sopenharmony_ci remote-endpoint = <&isi_0>; 628c2ecf20Sopenharmony_ci bus-width = <8>; 638c2ecf20Sopenharmony_ci }; 648c2ecf20Sopenharmony_ci }; 658c2ecf20Sopenharmony_ci }; 668c2ecf20Sopenharmony_ci}; 67