git-subtree-dir: qcom/camera git-subtree-mainline:8263fe365e
git-subtree-split:a1378b76f0
169 lines
3.6 KiB
Plaintext
169 lines
3.6 KiB
Plaintext
* Qualcomm Technologies, Inc. MSM Camera OPE
|
|
|
|
The ope device node has properties defined to hint the driver
|
|
about the number of OPE nodes available during the
|
|
probe sequence. Each node has multiple properties defined
|
|
for interrupts, clocks and regulators.
|
|
|
|
=======================
|
|
Required Node Structure
|
|
=======================
|
|
OPE root interface node takes care of the handling account for number
|
|
of OPE devices present on the hardware.
|
|
|
|
- compatible
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Should be "qcom,cam-ope".
|
|
|
|
- compat-hw-name
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Should be "qcom,ope".
|
|
|
|
- num-ope
|
|
Usage: required
|
|
Value type: <u32>
|
|
Definition: Number of supported OPE HW blocks.
|
|
|
|
Example:
|
|
qcom,cam-ope {
|
|
compatible = "qcom,cam-ope";
|
|
compat-hw-name = "qcom,ope";
|
|
num-ope = <2>;
|
|
status = "ok";
|
|
};
|
|
|
|
=======================
|
|
Required Node Structure
|
|
=======================
|
|
OPE Node provides interface for Image Control Processor driver
|
|
about the OPE register map, interrupt map, clocks, regulators.
|
|
|
|
- cell-index
|
|
Usage: required
|
|
Value type: <u32>
|
|
Definition: Node instance number.
|
|
|
|
- compatible
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Should be "qcom,ope".
|
|
|
|
- reg-names
|
|
Usage: optional
|
|
Value type: <string>
|
|
Definition: Name of the register resources.
|
|
|
|
- reg
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Definition: Register values.
|
|
|
|
- reg-cam-base
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Definition: Register values.
|
|
|
|
- interrupt-names
|
|
Usage: optional
|
|
Value type: <string>
|
|
Definition: Name of the interrupt.
|
|
|
|
- interrupts
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Definition: Interrupt associated with OPE HW.
|
|
|
|
- regulator-names
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Name of the regulator resources for OPE HW.
|
|
|
|
- camss-supply
|
|
Usage: required
|
|
Value type: <phandle>
|
|
Definition: Regulator reference corresponding to the names listed
|
|
in "regulator-names".
|
|
|
|
- clock-names
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: List of clock names required for CDM HW.
|
|
|
|
- src-clock-name
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Source clock name.
|
|
|
|
- clock-control-debugfs
|
|
Usage: optional
|
|
Value type: <string>
|
|
Definition: Enable/Disable clk rate control.
|
|
|
|
- clocks
|
|
Usage: required
|
|
Value type: <phandle>
|
|
Definition: List of clocks used for CDM HW.
|
|
|
|
- clock-cntl-level
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: List of strings corresponds clock-rates levels.
|
|
Supported strings: lowsvs, svs, svs_l1, nominal, turbo.
|
|
|
|
- clock-rates
|
|
Usage: required
|
|
Value type: <u32>
|
|
Definition: List of clocks rates.
|
|
|
|
Examples:
|
|
qcom,cam-ope {
|
|
compatible = "qcom,cam-ope";
|
|
compat-hw-name = "qcom,ope";
|
|
num-ope = <1>;
|
|
status = "ok";
|
|
};
|
|
|
|
ope: qcom,ope@ac00000 {
|
|
cell-index = <0>;
|
|
compatible = "qcom,ope";
|
|
reg =
|
|
<0x42000 0x400>,
|
|
<0x42400 0x200>,
|
|
<0x42600 0x200>,
|
|
<0x42800 0x4400>,
|
|
<0x46c00 0x190>,
|
|
<0x46d90 0x1270>;
|
|
reg-names =
|
|
"ope_cdm",
|
|
"ope_top",
|
|
"ope_qos",
|
|
"ope_pp",
|
|
"ope_bus_rd",
|
|
"ope_bus_wr";
|
|
reg-cam-base = <0x42000 0x42400 0x42600 0x42800 0x46c00 0x46d90>;
|
|
interrupts = <GIC_SPI 463 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-names = "ope";
|
|
regulator-names = "camss-vdd";
|
|
camss-vdd-supply = <&gcc_camss_top_gdsc>;
|
|
clock-names =
|
|
"ope_ahb_clk_src",
|
|
"ope_ahb_clk",
|
|
"ope_clk_src",
|
|
"ope_clk";
|
|
clocks =
|
|
<&gcc GCC_CAMSS_OPE_AHB_CLK_SRC>,
|
|
<&gcc GCC_CAMSS_OPE_AHB_CLK>,
|
|
<&gcc GCC_CAMSS_OPE_CLK_SRC>,
|
|
<&gcc GCC_CAMSS_OPE_CLK>;
|
|
|
|
clock-rates =
|
|
<200000000 0 480000000 0>,
|
|
<400000000 0 600000000 0>;
|
|
|
|
clock-cntl-level = "svs", "turbo";
|
|
src-clock-name = "ope_clk_src";
|
|
status = "ok";
|
|
};
|