The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/display/brcm,bcm-vc4.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 Broadcom VC4 (VideoCore4) GPU
    2 
    3 The VC4 device present on the Raspberry Pi includes a display system
    4 with HDMI output and the HVS (Hardware Video Scaler) for compositing
    5 display planes.
    6 
    7 Required properties for VC4:
    8 - compatible:   Should be "brcm,bcm2835-vc4" or "brcm,cygnus-vc4"
    9 
   10 Required properties for Pixel Valve:
   11 - compatible:   Should be one of "brcm,bcm2835-pixelvalve0",
   12                   "brcm,bcm2835-pixelvalve1", or "brcm,bcm2835-pixelvalve2"
   13 - reg:          Physical base address and length of the PV's registers
   14 - interrupts:   The interrupt number
   15                   See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
   16 
   17 Required properties for HVS:
   18 - compatible:   Should be "brcm,bcm2835-hvs"
   19 - reg:          Physical base address and length of the HVS's registers
   20 - interrupts:   The interrupt number
   21                   See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
   22 
   23 Required properties for HDMI
   24 - compatible:   Should be "brcm,bcm2835-hdmi"
   25 - reg:          Physical base address and length of the two register ranges
   26                   ("HDMI" and "HD", in that order)
   27 - interrupts:   The interrupt numbers
   28                   See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
   29 - ddc:          phandle of the I2C controller used for DDC EDID probing
   30 - clocks:       a) hdmi: The HDMI state machine clock
   31                 b) pixel: The pixel clock.
   32 
   33 Optional properties for HDMI:
   34 - hpd-gpios:    The GPIO pin for HDMI hotplug detect (if it doesn't appear
   35                   as an interrupt/status bit in the HDMI controller
   36                   itself).  See bindings/pinctrl/brcm,bcm2835-gpio.txt
   37 - dmas:         Should contain one entry pointing to the DMA channel used to
   38                 transfer audio data
   39 - dma-names:    Should contain "audio-rx"
   40 
   41 Required properties for DPI:
   42 - compatible:   Should be "brcm,bcm2835-dpi"
   43 - reg:          Physical base address and length of the registers
   44 - clocks:       a) core: The core clock the unit runs on
   45                 b) pixel: The pixel clock that feeds the pixelvalve
   46 - port:         Port node with a single endpoint connecting to the panel
   47                   device, as defined in [1]
   48 
   49 Required properties for VEC:
   50 - compatible:   Should be "brcm,bcm2835-vec"
   51 - reg:          Physical base address and length of the registers
   52 - clocks:       The core clock the unit runs on
   53 - interrupts:   The interrupt number
   54                   See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
   55 
   56 Required properties for V3D:
   57 - compatible:   Should be "brcm,bcm2835-v3d" or "brcm,cygnus-v3d"
   58 - reg:          Physical base address and length of the V3D's registers
   59 - interrupts:   The interrupt number
   60                   See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
   61 
   62 Optional properties for V3D:
   63 - clocks:       The clock the unit runs on
   64 
   65 Required properties for DSI:
   66 - compatible:   Should be "brcm,bcm2835-dsi0" or "brcm,bcm2835-dsi1"
   67 - reg:          Physical base address and length of the DSI block's registers
   68 - interrupts:   The interrupt number
   69                   See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
   70 - clocks:       a) phy: The DSI PLL clock feeding the DSI analog PHY
   71                 b) escape: The DSI ESC clock from CPRMAN
   72                 c) pixel: The DSI pixel clock from CPRMAN
   73 - clock-output-names:
   74                 The 3 clocks output from the DSI analog PHY: dsi[01]_byte,
   75                 dsi[01]_ddr2, and dsi[01]_ddr
   76 
   77 Required properties for the TXP (writeback) block:
   78 - compatible:   Should be "brcm,bcm2835-txp"
   79 - reg:          Physical base address and length of the TXP block's registers
   80 - interrupts:   The interrupt number
   81                   See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
   82 
   83 [1] Documentation/devicetree/bindings/media/video-interfaces.txt
   84 
   85 Example:
   86 pixelvalve@7e807000 {
   87         compatible = "brcm,bcm2835-pixelvalve2";
   88         reg = <0x7e807000 0x100>;
   89         interrupts = <2 10>; /* pixelvalve */
   90 };
   91 
   92 hvs@7e400000 {
   93         compatible = "brcm,bcm2835-hvs";
   94         reg = <0x7e400000 0x6000>;
   95         interrupts = <2 1>;
   96 };
   97 
   98 hdmi: hdmi@7e902000 {
   99         compatible = "brcm,bcm2835-hdmi";
  100         reg = <0x7e902000 0x600>,
  101               <0x7e808000 0x100>;
  102         interrupts = <2 8>, <2 9>;
  103         ddc = <&i2c2>;
  104         hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
  105         clocks = <&clocks BCM2835_PLLH_PIX>,
  106                  <&clocks BCM2835_CLOCK_HSM>;
  107         clock-names = "pixel", "hdmi";
  108 };
  109 
  110 dpi: dpi@7e208000 {
  111         compatible = "brcm,bcm2835-dpi";
  112         reg = <0x7e208000 0x8c>;
  113         clocks = <&clocks BCM2835_CLOCK_VPU>,
  114                  <&clocks BCM2835_CLOCK_DPI>;
  115         clock-names = "core", "pixel";
  116         #address-cells = <1>;
  117         #size-cells = <0>;
  118 
  119         port {
  120                 dpi_out: endpoint@0 {
  121                         remote-endpoint = <&panel_in>;
  122                 };
  123         };
  124 };
  125 
  126 dsi1: dsi@7e700000 {
  127         compatible = "brcm,bcm2835-dsi1";
  128         reg = <0x7e700000 0x8c>;
  129         interrupts = <2 12>;
  130         #address-cells = <1>;
  131         #size-cells = <0>;
  132         #clock-cells = <1>;
  133 
  134         clocks = <&clocks BCM2835_PLLD_DSI1>,
  135                  <&clocks BCM2835_CLOCK_DSI1E>,
  136                  <&clocks BCM2835_CLOCK_DSI1P>;
  137         clock-names = "phy", "escape", "pixel";
  138 
  139         clock-output-names = "dsi1_byte", "dsi1_ddr2", "dsi1_ddr";
  140 
  141         pitouchscreen: panel@0 {
  142                 compatible = "raspberrypi,touchscreen";
  143                 reg = <0>;
  144 
  145                 <...>
  146         };
  147 };
  148 
  149 vec: vec@7e806000 {
  150         compatible = "brcm,bcm2835-vec";
  151         reg = <0x7e806000 0x1000>;
  152         clocks = <&clocks BCM2835_CLOCK_VEC>;
  153         interrupts = <2 27>;
  154 };
  155 
  156 v3d: v3d@7ec00000 {
  157         compatible = "brcm,bcm2835-v3d";
  158         reg = <0x7ec00000 0x1000>;
  159         interrupts = <1 10>;
  160 };
  161 
  162 vc4: gpu {
  163         compatible = "brcm,bcm2835-vc4";
  164 };
  165 
  166 panel: panel {
  167         compatible = "ontat,yx700wv03", "simple-panel";
  168 
  169         port {
  170                 panel_in: endpoint {
  171                         remote-endpoint = <&dpi_out>;
  172                 };
  173         };
  174 };

Cache object: 7a52a84dbab37646932cf97de53edd52


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.