162306a36Sopenharmony_ciIFM camera sensor interface on mpc5200 LocalPlus bus
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciRequired properties:
462306a36Sopenharmony_ci- compatible: "ifm,o2d-csi"
562306a36Sopenharmony_ci- reg: specifies sensor chip select number and associated address range
662306a36Sopenharmony_ci- interrupts: external interrupt line number and interrupt sense mode
762306a36Sopenharmony_ci  of the interrupt line signaling frame valid events
862306a36Sopenharmony_ci- gpios: three gpio-specifiers for "capture", "reset" and "master enable"
962306a36Sopenharmony_ci  GPIOs (strictly in this order).
1062306a36Sopenharmony_ci- ifm,csi-clk-handle: the phandle to a node in the DT describing the sensor
1162306a36Sopenharmony_ci  clock generator. This node is usually a general purpose timer controller.
1262306a36Sopenharmony_ci- ifm,csi-addr-bus-width: address bus width (valid values are 16, 24, 25)
1362306a36Sopenharmony_ci- ifm,csi-data-bus-width: data bus width (valid values are 8 and 16)
1462306a36Sopenharmony_ci- ifm,csi-wait-cycles: sensor bus wait cycles
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ciOptional properties:
1762306a36Sopenharmony_ci- ifm,csi-byte-swap: if this property is present, the byte swapping on
1862306a36Sopenharmony_ci  the bus will be enabled.
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciExample:
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ci	csi@3,0 {
2362306a36Sopenharmony_ci		compatible = "ifm,o2d-csi";
2462306a36Sopenharmony_ci		reg = <3 0 0x00100000>;		/* CS 3, 1 MiB range */
2562306a36Sopenharmony_ci		interrupts = <1 1 2>;		/* IRQ1, edge falling */
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci		ifm,csi-clk-handle = <&timer7>;
2862306a36Sopenharmony_ci		gpios = <&gpio_simple 23 0	/* image_capture */
2962306a36Sopenharmony_ci			 &gpio_simple 26 0	/* image_reset */
3062306a36Sopenharmony_ci			 &gpio_simple 29 0>;	/* image_master_en */
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci		ifm,csi-addr-bus-width = <24>;
3362306a36Sopenharmony_ci		ifm,csi-data-bus-width = <8>;
3462306a36Sopenharmony_ci		ifm,csi-wait-cycles = <0>;
3562306a36Sopenharmony_ci	};
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ciThe base address of the used chip select is specified in the
3862306a36Sopenharmony_ciranges property of the parent localbus node, for example:
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci	ranges = <0 0 0xff000000 0x01000000
4162306a36Sopenharmony_ci		  3 0 0xe3000000 0x00100000>;
42