xref: /freebsd/sys/contrib/device-tree/Bindings/display/tegra/nvidia,tegra114-mipi.yaml (revision b97ee269eae3cbaf35c18f51a459aea581c2a7dc)
1*b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*b97ee269SEmmanuel Vadot%YAML 1.2
3*b97ee269SEmmanuel Vadot---
4*b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/display/tegra/nvidia,tegra114-mipi.yaml#
5*b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*b97ee269SEmmanuel Vadot
7*b97ee269SEmmanuel Vadottitle: NVIDIA Tegra MIPI pad calibration controller
8*b97ee269SEmmanuel Vadot
9*b97ee269SEmmanuel Vadotmaintainers:
10*b97ee269SEmmanuel Vadot  - Thierry Reding <thierry.reding@gmail.com>
11*b97ee269SEmmanuel Vadot  - Jon Hunter <jonathanh@nvidia.com>
12*b97ee269SEmmanuel Vadot
13*b97ee269SEmmanuel Vadotproperties:
14*b97ee269SEmmanuel Vadot  $nodename:
15*b97ee269SEmmanuel Vadot    pattern: "^mipi@[0-9a-f]+$"
16*b97ee269SEmmanuel Vadot
17*b97ee269SEmmanuel Vadot  compatible:
18*b97ee269SEmmanuel Vadot    enum:
19*b97ee269SEmmanuel Vadot      - nvidia,tegra114-mipi
20*b97ee269SEmmanuel Vadot      - nvidia,tegra210-mipi
21*b97ee269SEmmanuel Vadot      - nvidia,tegra186-mipi
22*b97ee269SEmmanuel Vadot
23*b97ee269SEmmanuel Vadot  reg:
24*b97ee269SEmmanuel Vadot    maxItems: 1
25*b97ee269SEmmanuel Vadot
26*b97ee269SEmmanuel Vadot  clocks:
27*b97ee269SEmmanuel Vadot    items:
28*b97ee269SEmmanuel Vadot      - description: module clock
29*b97ee269SEmmanuel Vadot
30*b97ee269SEmmanuel Vadot  clock-names:
31*b97ee269SEmmanuel Vadot    items:
32*b97ee269SEmmanuel Vadot      - const: mipi-cal
33*b97ee269SEmmanuel Vadot
34*b97ee269SEmmanuel Vadot  power-domains:
35*b97ee269SEmmanuel Vadot    maxItems: 1
36*b97ee269SEmmanuel Vadot
37*b97ee269SEmmanuel Vadot  "#nvidia,mipi-calibrate-cells":
38*b97ee269SEmmanuel Vadot    description: The number of cells in a MIPI calibration specifier.
39*b97ee269SEmmanuel Vadot      Should be 1. The single cell specifies a bitmask of the pads that
40*b97ee269SEmmanuel Vadot      need to be calibrated for a given device.
41*b97ee269SEmmanuel Vadot    $ref: "/schemas/types.yaml#/definitions/uint32"
42*b97ee269SEmmanuel Vadot    const: 1
43*b97ee269SEmmanuel Vadot
44*b97ee269SEmmanuel VadotadditionalProperties: false
45*b97ee269SEmmanuel Vadot
46*b97ee269SEmmanuel Vadotrequired:
47*b97ee269SEmmanuel Vadot  - compatible
48*b97ee269SEmmanuel Vadot  - reg
49*b97ee269SEmmanuel Vadot  - clocks
50*b97ee269SEmmanuel Vadot  - "#nvidia,mipi-calibrate-cells"
51*b97ee269SEmmanuel Vadot
52*b97ee269SEmmanuel Vadotexamples:
53*b97ee269SEmmanuel Vadot  - |
54*b97ee269SEmmanuel Vadot    #include <dt-bindings/clock/tegra114-car.h>
55*b97ee269SEmmanuel Vadot
56*b97ee269SEmmanuel Vadot    mipi@700e3000 {
57*b97ee269SEmmanuel Vadot        compatible = "nvidia,tegra114-mipi";
58*b97ee269SEmmanuel Vadot        reg = <0x700e3000 0x100>;
59*b97ee269SEmmanuel Vadot        clocks = <&tegra_car TEGRA114_CLK_MIPI_CAL>;
60*b97ee269SEmmanuel Vadot        clock-names = "mipi-cal";
61*b97ee269SEmmanuel Vadot        #nvidia,mipi-calibrate-cells = <1>;
62*b97ee269SEmmanuel Vadot    };
63*b97ee269SEmmanuel Vadot
64*b97ee269SEmmanuel Vadot    dsia: dsi@54300000 {
65*b97ee269SEmmanuel Vadot        compatible = "nvidia,tegra114-dsi";
66*b97ee269SEmmanuel Vadot        reg = <0x54300000 0x00040000>;
67*b97ee269SEmmanuel Vadot        clocks = <&tegra_car TEGRA114_CLK_DSIA>,
68*b97ee269SEmmanuel Vadot                 <&tegra_car TEGRA114_CLK_DSIALP>,
69*b97ee269SEmmanuel Vadot                 <&tegra_car TEGRA114_CLK_PLL_D_OUT0>;
70*b97ee269SEmmanuel Vadot        clock-names = "dsi", "lp", "parent";
71*b97ee269SEmmanuel Vadot        resets = <&tegra_car 48>;
72*b97ee269SEmmanuel Vadot        reset-names = "dsi";
73*b97ee269SEmmanuel Vadot        nvidia,mipi-calibrate = <&mipi 0x060>; /* DSIA & DSIB pads */
74*b97ee269SEmmanuel Vadot    };
75