mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
120 lines
3.7 KiB
120 lines
3.7 KiB
ZTE VOU Display Controller |
|
|
|
This is a display controller found on ZTE ZX296718 SoC. It includes multiple |
|
Graphic Layer (GL) and Video Layer (VL), two Mixers/Channels, and a few blocks |
|
handling scaling, color space conversion etc. VOU also integrates the support |
|
for typical output devices, like HDMI, TV Encoder, VGA, and RGB LCD. |
|
|
|
* Master VOU node |
|
|
|
It must be the parent node of all the sub-device nodes. |
|
|
|
Required properties: |
|
- compatible: should be "zte,zx296718-vou" |
|
- #address-cells: should be <1> |
|
- #size-cells: should be <1> |
|
- ranges: list of address translations between VOU and sub-devices |
|
|
|
* VOU DPC device |
|
|
|
Required properties: |
|
- compatible: should be "zte,zx296718-dpc" |
|
- reg: Physical base address and length of DPC register regions, one for each |
|
entry in 'reg-names' |
|
- reg-names: The names of register regions. The following regions are required: |
|
"osd" |
|
"timing_ctrl" |
|
"dtrc" |
|
"vou_ctrl" |
|
"otfppu" |
|
- interrupts: VOU DPC interrupt number to CPU |
|
- clocks: A list of phandle + clock-specifier pairs, one for each entry |
|
in 'clock-names' |
|
- clock-names: A list of clock names. The following clocks are required: |
|
"aclk" |
|
"ppu_wclk" |
|
"main_wclk" |
|
"aux_wclk" |
|
|
|
* HDMI output device |
|
|
|
Required properties: |
|
- compatible: should be "zte,zx296718-hdmi" |
|
- reg: Physical base address and length of the HDMI device IO region |
|
- interrupts : HDMI interrupt number to CPU |
|
- clocks: A list of phandle + clock-specifier pairs, one for each entry |
|
in 'clock-names' |
|
- clock-names: A list of clock names. The following clocks are required: |
|
"osc_cec" |
|
"osc_clk" |
|
"xclk" |
|
|
|
* TV Encoder output device |
|
|
|
Required properties: |
|
- compatible: should be "zte,zx296718-tvenc" |
|
- reg: Physical base address and length of the TVENC device IO region |
|
- zte,tvenc-power-control: the phandle to SYSCTRL block followed by two |
|
integer cells. The first cell is the offset of SYSCTRL register used |
|
to control TV Encoder DAC power, and the second cell is the bit mask. |
|
|
|
* VGA output device |
|
|
|
Required properties: |
|
- compatible: should be "zte,zx296718-vga" |
|
- reg: Physical base address and length of the VGA device IO region |
|
- interrupts : VGA interrupt number to CPU |
|
- clocks: Phandle with clock-specifier pointing to VGA I2C clock. |
|
- clock-names: Must be "i2c_wclk". |
|
- zte,vga-power-control: the phandle to SYSCTRL block followed by two |
|
integer cells. The first cell is the offset of SYSCTRL register used |
|
to control VGA DAC power, and the second cell is the bit mask. |
|
|
|
Example: |
|
|
|
vou: vou@1440000 { |
|
compatible = "zte,zx296718-vou"; |
|
#address-cells = <1>; |
|
#size-cells = <1>; |
|
ranges = <0 0x1440000 0x10000>; |
|
|
|
dpc: dpc@0 { |
|
compatible = "zte,zx296718-dpc"; |
|
reg = <0x0000 0x1000>, <0x1000 0x1000>, |
|
<0x5000 0x1000>, <0x6000 0x1000>, |
|
<0xa000 0x1000>; |
|
reg-names = "osd", "timing_ctrl", |
|
"dtrc", "vou_ctrl", |
|
"otfppu"; |
|
interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; |
|
clocks = <&topcrm VOU_ACLK>, <&topcrm VOU_PPU_WCLK>, |
|
<&topcrm VOU_MAIN_WCLK>, <&topcrm VOU_AUX_WCLK>; |
|
clock-names = "aclk", "ppu_wclk", |
|
"main_wclk", "aux_wclk"; |
|
}; |
|
|
|
vga: vga@8000 { |
|
compatible = "zte,zx296718-vga"; |
|
reg = <0x8000 0x1000>; |
|
interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; |
|
clocks = <&topcrm VGA_I2C_WCLK>; |
|
clock-names = "i2c_wclk"; |
|
zte,vga-power-control = <&sysctrl 0x170 0xe0>; |
|
}; |
|
|
|
hdmi: hdmi@c000 { |
|
compatible = "zte,zx296718-hdmi"; |
|
reg = <0xc000 0x4000>; |
|
interrupts = <GIC_SPI 82 IRQ_TYPE_EDGE_RISING>; |
|
clocks = <&topcrm HDMI_OSC_CEC>, |
|
<&topcrm HDMI_OSC_CLK>, |
|
<&topcrm HDMI_XCLK>; |
|
clock-names = "osc_cec", "osc_clk", "xclk"; |
|
}; |
|
|
|
tvenc: tvenc@2000 { |
|
compatible = "zte,zx296718-tvenc"; |
|
reg = <0x2000 0x1000>; |
|
zte,tvenc-power-control = <&sysctrl 0x170 0x10>; |
|
}; |
|
};
|
|
|