Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

Device tree configuration for Renesas IIC (sh_mobile) driver

Required properties:
- compatible      :
			- "renesas,iic-r8a73a4" (R-Mobile APE6)
			- "renesas,iic-r8a7740" (R-Mobile A1)
			- "renesas,iic-r8a7790" (R-Car H2)
			- "renesas,iic-r8a7791" (R-Car M2-W)
			- "renesas,iic-r8a7792" (R-Car V2H)
			- "renesas,iic-r8a7793" (R-Car M2-N)
			- "renesas,iic-r8a7794" (R-Car E2)
			- "renesas,iic-r8a7795" (R-Car H3)
			- "renesas,iic-sh73a0" (SH-Mobile AG5)
			- "renesas,rcar-gen2-iic" (generic R-Car Gen2 compatible device)
			- "renesas,rcar-gen3-iic" (generic R-Car Gen3 compatible device)
			- "renesas,rmobile-iic" (generic device)

			When compatible with a generic R-Car version, nodes
			must list the SoC-specific version corresponding to
			the platform first followed by the generic R-Car
			version.

			renesas,rmobile-iic must always follow.

- reg             : address start and address range size of device
- interrupts      : interrupt of device
- clocks          : clock for device
- #address-cells  : should be <1>
- #size-cells     : should be <0>

Optional properties:
- clock-frequency : frequency of bus clock in Hz. Default 100kHz if unset.
- dmas            : Must contain a list of two references to DMA
		    specifiers, one for transmission, and one for
		    reception.
- dma-names       : Must contain a list of two DMA names, "tx" and "rx".


Pinctrl properties might be needed, too. See there.

Example:

	iic0: i2c@e6500000 {
		compatible = "renesas,iic-r8a7790", "renesas,rcar-gen2-iic",
			     "renesas,rmobile-iic";
		reg = <0 0xe6500000 0 0x425>;
		interrupts = <0 174 IRQ_TYPE_LEVEL_HIGH>;
		clocks = <&mstp3_clks R8A7790_CLK_IIC0>;
		clock-frequency = <400000>;
		#address-cells = <1>;
		#size-cells = <0>;
	};