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

* Renesas SH-Mobile Serial Communication Interface

Required properties:

  - compatible: Must contain one or more of the following:

    - "renesas,scif-r7s72100" for R7S72100 (RZ/A1H) SCIF compatible UART.
    - "renesas,scifa-r8a73a4" for R8A73A4 (R-Mobile APE6) SCIFA compatible UART.
    - "renesas,scifb-r8a73a4" for R8A73A4 (R-Mobile APE6) SCIFB compatible UART.
    - "renesas,scifa-r8a7740" for R8A7740 (R-Mobile A1) SCIFA compatible UART.
    - "renesas,scifb-r8a7740" for R8A7740 (R-Mobile A1) SCIFB compatible UART.
    - "renesas,scif-r8a7743" for R8A7743 (RZ/G1M) SCIF compatible UART.
    - "renesas,scifa-r8a7743" for R8A7743 (RZ/G1M) SCIFA compatible UART.
    - "renesas,scifb-r8a7743" for R8A7743 (RZ/G1M) SCIFB compatible UART.
    - "renesas,hscif-r8a7743" for R8A7743 (RZ/G1M) HSCIF compatible UART.
    - "renesas,scif-r8a7745" for R8A7745 (RZ/G1E) SCIF compatible UART.
    - "renesas,scifa-r8a7745" for R8A7745 (RZ/G1E) SCIFA compatible UART.
    - "renesas,scifb-r8a7745" for R8A7745 (RZ/G1E) SCIFB compatible UART.
    - "renesas,hscif-r8a7745" for R8A7745 (RZ/G1E) HSCIF compatible UART.
    - "renesas,scif-r8a7778" for R8A7778 (R-Car M1) SCIF compatible UART.
    - "renesas,scif-r8a7779" for R8A7779 (R-Car H1) SCIF compatible UART.
    - "renesas,scif-r8a7790" for R8A7790 (R-Car H2) SCIF compatible UART.
    - "renesas,scifa-r8a7790" for R8A7790 (R-Car H2) SCIFA compatible UART.
    - "renesas,scifb-r8a7790" for R8A7790 (R-Car H2) SCIFB compatible UART.
    - "renesas,hscif-r8a7790" for R8A7790 (R-Car H2) HSCIF compatible UART.
    - "renesas,scif-r8a7791" for R8A7791 (R-Car M2-W) SCIF compatible UART.
    - "renesas,scifa-r8a7791" for R8A7791 (R-Car M2-W) SCIFA compatible UART.
    - "renesas,scifb-r8a7791" for R8A7791 (R-Car M2-W) SCIFB compatible UART.
    - "renesas,hscif-r8a7791" for R8A7791 (R-Car M2-W) HSCIF compatible UART.
    - "renesas,scif-r8a7792" for R8A7792 (R-Car V2H) SCIF compatible UART.
    - "renesas,hscif-r8a7792" for R8A7792 (R-Car V2H) HSCIF compatible UART.
    - "renesas,scif-r8a7793" for R8A7793 (R-Car M2-N) SCIF compatible UART.
    - "renesas,scifa-r8a7793" for R8A7793 (R-Car M2-N) SCIFA compatible UART.
    - "renesas,scifb-r8a7793" for R8A7793 (R-Car M2-N) SCIFB compatible UART.
    - "renesas,hscif-r8a7793" for R8A7793 (R-Car M2-N) HSCIF compatible UART.
    - "renesas,scif-r8a7794" for R8A7794 (R-Car E2) SCIF compatible UART.
    - "renesas,scifa-r8a7794" for R8A7794 (R-Car E2) SCIFA compatible UART.
    - "renesas,scifb-r8a7794" for R8A7794 (R-Car E2) SCIFB compatible UART.
    - "renesas,hscif-r8a7794" for R8A7794 (R-Car E2) HSCIF compatible UART.
    - "renesas,scif-r8a7795" for R8A7795 (R-Car H3) SCIF compatible UART.
    - "renesas,hscif-r8a7795" for R8A7795 (R-Car H3) HSCIF compatible UART.
    - "renesas,scif-r8a7796" for R8A7796 (R-Car M3-W) SCIF compatible UART.
    - "renesas,hscif-r8a7796" for R8A7796 (R-Car M3-W) HSCIF compatible UART.
    - "renesas,scifa-sh73a0" for SH73A0 (SH-Mobile AG5) SCIFA compatible UART.
    - "renesas,scifb-sh73a0" for SH73A0 (SH-Mobile AG5) SCIFB compatible UART.
    - "renesas,rcar-gen1-scif" for R-Car Gen1 SCIF compatible UART,
    - "renesas,rcar-gen2-scif" for R-Car Gen2 SCIF compatible UART,
    - "renesas,rcar-gen3-scif" for R-Car Gen3 SCIF compatible UART,
    - "renesas,rcar-gen2-scifa" for R-Car Gen2 SCIFA compatible UART,
    - "renesas,rcar-gen2-scifb" for R-Car Gen2 SCIFB compatible UART,
    - "renesas,rcar-gen1-hscif" for R-Car Gen1 HSCIF compatible UART,
    - "renesas,rcar-gen2-hscif" for R-Car Gen2 HSCIF compatible UART,
    - "renesas,rcar-gen3-hscif" for R-Car Gen3 HSCIF compatible UART,
    - "renesas,scif" for generic SCIF compatible UART.
    - "renesas,scifa" for generic SCIFA compatible UART.
    - "renesas,scifb" for generic SCIFB compatible UART.
    - "renesas,hscif" for generic HSCIF compatible UART.
    - "renesas,sci" for generic SCI compatible UART.

    When compatible with the generic version, nodes must list the
    SoC-specific version corresponding to the platform first, followed by the
    family-specific and/or generic versions.

  - reg: Base address and length of the I/O registers used by the UART.
  - interrupts: Must contain an interrupt-specifier for the SCIx interrupt.

  - clocks: Must contain a phandle and clock-specifier pair for each entry
    in clock-names.
  - clock-names: Must contain "fck" for the SCIx UART functional clock.
    Apart from the divided functional clock, there may be other possible
    sources for the sampling clock, depending on SCIx variant.
    On (H)SCI(F) and some SCIFA, an additional clock may be specified:
      - "hsck" for the optional external clock input (on HSCIF),
      - "sck" for the optional external clock input (on other variants).
    On UARTs equipped with a Baud Rate Generator for External Clock (BRG)
    (some SCIF and HSCIF), additional clocks may be specified:
      - "brg_int" for the optional internal clock source for the frequency
	divider (typically the (AXI or SHwy) bus clock),
      - "scif_clk" for the optional external clock source for the frequency
	divider (SCIF_CLK).

Note: Each enabled SCIx UART should have an alias correctly numbered in the
"aliases" node.

Optional properties:
  - 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".
  - {cts,dsr,dcd,rng,rts,dtr}-gpios: Specify GPIOs for modem lines, cfr. the
    generic serial DT bindings in serial.txt.
  - uart-has-rtscts: Indicates dedicated lines for RTS/CTS hardware flow
    control, cfr. the generic serial DT bindings in serial.txt.

Example:
	aliases {
		serial0 = &scifa0;
	};

	scifa0: serial@e6c40000 {
		compatible = "renesas,scifa-r8a7790",
			     "renesas,rcar-gen2-scifa", "renesas,scifa";
		reg = <0 0xe6c40000 0 64>;
		interrupt-parent = <&gic>;
		interrupts = <0 144 IRQ_TYPE_LEVEL_HIGH>;
		clocks = <&mstp2_clks R8A7790_CLK_SCIFA0>;
		clock-names = "fck";
		dmas = <&dmac0 0x21>, <&dmac0 0x22>;
		dma-names = "tx", "rx";
	};