mirror of
https://github.com/Evolution-X-Devices/kernel_xiaomi_sm8450-devicetrees
synced 2026-02-01 08:51:30 +00:00
Revert "dt-bindings: msm: vidc: Clean-up dt properties"
This reverts commit 75bc943da9.
Change-Id: Ifcbcb32d70d4c5515b0c1de8f31aa79081507656
This commit is contained in:
@@ -5,18 +5,17 @@ Venus
|
||||
=====
|
||||
Required properties:
|
||||
- compatible : one of:
|
||||
- "msm-vidc"
|
||||
- "lahaina-vidc" : Invokes driver-specific data for LAHAINA.
|
||||
- "qcom,msm-vidc"
|
||||
- "qcom,lahaina-vidc" : Invokes driver-specific data for LAHAINA.
|
||||
|
||||
Optional properties:
|
||||
- reg : offset and length of the register set for the device.
|
||||
- sku-index : sku version of the hardware.
|
||||
- interrupts : should contain the vidc interrupt.
|
||||
- vidc,reg-presets : list of offset-value-mask trios for registers to be written.
|
||||
- qcom,reg-presets : list of offset-value pairs for registers to be written.
|
||||
The offsets are from the base offset specified in 'reg'. This is mainly
|
||||
used for QoS, VBIF, etc. presets for video. The mask specifies which bits
|
||||
of the register to update
|
||||
- vidc,qdss-presets : list of physical address and memory allocation size pairs.
|
||||
used for QoS, VBIF, etc. presets for video.
|
||||
- qcom,qdss-presets : list of physical address and memory allocation size pairs.
|
||||
when fw_debug_mode is set as HFI_DEBUG_MODE_QDSS, all firmware messages will be
|
||||
written to QDSS memory.
|
||||
- *-supply: A phandle pointing to the appropriate regulator. Number of
|
||||
@@ -24,18 +23,18 @@ Optional properties:
|
||||
- clock-names: an array of clocks that the driver is supposed to be
|
||||
manipulating. The clocks names here correspond to the clock names used in
|
||||
clk_get(<name>).
|
||||
- vidc,proxy-clock-names:
|
||||
- vidc,clock-configs = an array of bitmaps of clocks' configurations. The index
|
||||
of the bitmap corresponds to the clock at the same index in vidc,clock-names.
|
||||
- qcom,proxy-clock-names:
|
||||
- qcom,clock-configs = an array of bitmaps of clocks' configurations. The index
|
||||
of the bitmap corresponds to the clock at the same index in qcom,clock-names.
|
||||
The bitmaps describes the actions that the device needs to take regarding the
|
||||
clock (i.e. scale it based on load).
|
||||
|
||||
The bitmap is defined as:
|
||||
scalable = 0x1 (if the driver should vary the clock's frequency based on load)
|
||||
- vidc,allowed-clock-rates = an array of supported clock rates by the chipset.
|
||||
- vidc,clock-freq-tbl = node containing individual domain nodes, each with:
|
||||
- vidc,codec-mask: a bitmap of supported codec types, every two bits
|
||||
represents a codec type.
|
||||
- qcom,allowed-clock-rates = an array of supported clock rates by the chipset.
|
||||
- qcom,clock-freq-tbl = node containing individual domain nodes, each with:
|
||||
- qcom,codec-mask: a bitmap of supported codec types, every two bits
|
||||
represents a codec type.
|
||||
supports mvc encoder = 0x00000001
|
||||
supports mvc decoder = 0x00000003
|
||||
supports h264 encoder = 0x00000004
|
||||
@@ -52,9 +51,9 @@ Optional properties:
|
||||
supports vp8 decoder = 0x03000000
|
||||
supports hevc encoder = 0x04000000
|
||||
supports hevc decoder = 0x0c000000
|
||||
- vidc,cycles-per-mb: number of cycles required to process each macro
|
||||
- qcom,cycles-per-mb: number of cycles required to process each macro
|
||||
block.
|
||||
- vidc,low-power-cycles-per-mb: number of cycles required to process each
|
||||
- qcom,low-power-cycles-per-mb: number of cycles required to process each
|
||||
macro block in low power mode.
|
||||
the required frequency to get the final frequency, the factor is
|
||||
represented in Q16 format.
|
||||
@@ -62,6 +61,25 @@ Optional properties:
|
||||
signal that affects the device, or that the device manages.
|
||||
- reset-names: List of reset signal name strings sorted in the same order as
|
||||
the resets property.
|
||||
- qcom,vidc-iommu-domains = node containing individual domain nodes, each with:
|
||||
- a unique domain name for the domain node (e.g vidc,domain-ns)
|
||||
- qcom,vidc-domain-phandle: phandle for the domain as defined in
|
||||
<target>-iommu-domains.dtsi (e.g msm8974-v1-iommu-domains.dtsi)
|
||||
- qcom,vidc-buffer-types: bitmap of buffer types that can be mapped into each
|
||||
IOMMU domain.
|
||||
- Buffer types are defined as the following:
|
||||
input = 0x1
|
||||
output = 0x2
|
||||
output2 = 0x4
|
||||
extradata input = 0x8
|
||||
extradata output = 0x10
|
||||
extradata output2 = 0x20
|
||||
internal scratch = 0x40
|
||||
internal scratch1 = 0x80
|
||||
internal scratch2 = 0x100
|
||||
internal persist = 0x200
|
||||
internal persist1 = 0x400
|
||||
internal cmd queue = 0x800
|
||||
- cache-slice-names = An array of supported cache slice names by llcc
|
||||
- cache-slices = An array of supported cache slice ids corresponding
|
||||
to cache-slice-names by llcc
|
||||
@@ -71,7 +89,7 @@ Optional properties:
|
||||
- interconnect-names : List of interconnect path name strings sorted in the same
|
||||
order as the interconnects property. Driver will use interconnect-names to match
|
||||
interconnect paths with interconnect specifier pairs.
|
||||
- vidc,bus-range-kbps : An array of ranges (<min max>) that indicate the
|
||||
- qcom,bus-range-kbps : An array of ranges (<min max>) that indicate the
|
||||
minimum and maximum acceptable votes for the bus.
|
||||
In the absence of this property, <0 INT_MAX> is used.
|
||||
|
||||
@@ -80,7 +98,7 @@ Context Banks
|
||||
=============
|
||||
Required properties:
|
||||
- compatible : one of:
|
||||
- "msm-vidc-context-bank"
|
||||
- "qcom,msm-vidc,context-bank"
|
||||
- iommus : A phandle parsed by smmu driver. Number of entries will vary
|
||||
across targets.
|
||||
|
||||
@@ -105,22 +123,32 @@ Optional properties:
|
||||
- qcom,secure-context-bank : bool indicating secure context bank.
|
||||
|
||||
|
||||
Memory Heaps
|
||||
============
|
||||
Required properties:
|
||||
- compatible : one of:
|
||||
- "qcom,msm-vidc,mem-adsp"
|
||||
- "qcom,msm-vidc,mem-cdsp"
|
||||
- memory-region : phandle to the memory heap/region.
|
||||
|
||||
Example:
|
||||
|
||||
vidc@aa00000 {
|
||||
compatible = "msm-vidc";
|
||||
qcom,vidc@fdc00000 {
|
||||
compatible = "qcom,msm-vidc";
|
||||
reg = <0xfdc00000 0xff000>;
|
||||
interrupts = <0 44 0>;
|
||||
venus-supply = <&gdsc>;
|
||||
venus-core0-supply = <&gdsc1>;
|
||||
venus-core1-supply = <&gdsc2>;
|
||||
vidc,reg-presets = <0x80004 0x1>,
|
||||
qcom,reg-presets = <0x80004 0x1>,
|
||||
<0x80178 0x00001FFF>;
|
||||
vidc,qdss-presets = <0xFC307000 0x1000>,
|
||||
qcom,qdss-presets = <0xFC307000 0x1000>,
|
||||
<0xFC322000 0x1000>;
|
||||
clock-names = "foo_clk", "bar_clk", "baz_clk";
|
||||
vidc,clock-configs = <0x3 0x1 0x0>;
|
||||
vidc,allowed-clock-rates = <200000000 300000000 400000000>;
|
||||
qcom,clock-configs = <0x3 0x1 0x0>;
|
||||
qcom,buffer-type-tz-usage-table = <0x1 0x1>,
|
||||
<0x1fe 0x2>;
|
||||
qcom,allowed-clock-rates = <200000000 300000000 400000000>;
|
||||
|
||||
/* Bus Interconnects */
|
||||
interconnect-names = "venus-cnoc", "venus-ddr", "venus-llcc";
|
||||
@@ -131,11 +159,11 @@ Example:
|
||||
<&mmss_noc MASTER_VIDEO_P0
|
||||
&gem_noc SLAVE_LLCC>;
|
||||
/* Bus BW range (low, high) for each bus */
|
||||
vidc,bus-range-kbps = <1000 1000
|
||||
qcom,bus-range-kbps = <1000 1000
|
||||
1000 15000000
|
||||
1000 15000000>;
|
||||
non_secure_cb {
|
||||
compatible = "msm-vidc-context-bank";
|
||||
compatible = "qcom,msm-vidc,context-bank";
|
||||
label = "venus_ns";
|
||||
iommus =
|
||||
<&apps_smmu 0x1300 0x60>;
|
||||
|
||||
Reference in New Issue
Block a user