git-subtree-dir: qcom/camera git-subtree-mainline:8263fe365e
git-subtree-split:a1378b76f0
148 lines
3.6 KiB
Plaintext
148 lines
3.6 KiB
Plaintext
* Qualcomm Technologies, Inc. MSM Camera TFE
|
|
|
|
Camera TFE device provides the definitions for enabling
|
|
the TFE hardware. It also provides the functions for the client
|
|
to control the TFE hardware.
|
|
|
|
=======================
|
|
Required Node Structure
|
|
=======================
|
|
The TFE device is described in one level of the device node.
|
|
|
|
======================================
|
|
First Level Node - CAM TFE device
|
|
======================================
|
|
Required properties:
|
|
- compatible
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Should specify the compatibility string for matching the
|
|
driver. e.g. "qcom,tfe640", "qcom,tfe530".
|
|
|
|
- cell-index
|
|
Usage: required
|
|
Value type: <u32>
|
|
Definition: Should specify the hardware index id.
|
|
|
|
- reg-names
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Should specify the name of the register block.
|
|
|
|
- reg
|
|
Usage: required
|
|
Value type: <u32>
|
|
Definition: Register values.
|
|
|
|
- interrupt-names
|
|
Usage: Required
|
|
Value type: <string>
|
|
Definition: Name of the interrupt.
|
|
|
|
- interrupts
|
|
Usage: Required
|
|
Value type: <u32>
|
|
Definition: Interrupt associated with TFE HW.
|
|
|
|
- regulator-names
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Name of the regulator resources for TFE HW.
|
|
|
|
- xxxx-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 TFE HW.
|
|
|
|
- clocks
|
|
Usage: required
|
|
Value type: <phandle>
|
|
Definition: List of clocks used for TFE HW.
|
|
|
|
- clock-rates
|
|
Usage: required
|
|
Value type: <u32>
|
|
Definition: List of clocks rates.
|
|
|
|
- src-clock-name
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: Source clock name.
|
|
|
|
Optional properties:
|
|
- clock-names-option
|
|
Usage: optional
|
|
Value type: <string>
|
|
Definition: Optional clock names.
|
|
|
|
- clocks-option
|
|
Usage: required if clock-names-option defined
|
|
Value type: <phandle>
|
|
Definition: List of optinal clocks used for TFE HW.
|
|
|
|
- clock-rates-option
|
|
Usage: required if clock-names-option defined
|
|
Value type: <u32>
|
|
Definition: List of clocks rates for optional clocks.
|
|
|
|
- clock-control-debugfs
|
|
Usage: optional
|
|
Value type: <string>
|
|
Definition: Enable/Disable clk rate control.
|
|
|
|
- qcom,cam-cx-ipeak:
|
|
Usage: optional
|
|
Value type: <phandle bit>
|
|
phandle - phandle of CX Ipeak device node
|
|
bit - Every bit corresponds to a client of CX Ipeak
|
|
Definition: CX Ipeak is a mitigation scheme which throttles camera frequency
|
|
if all the clients are running at their respective threshold
|
|
frequencies to limit CX peak current.
|
|
driver in the relevant register.
|
|
|
|
- scl-clk-names:
|
|
Usage: optional
|
|
Value type: <string>
|
|
Definition: Scalable clock names to identify which clocks needs to update
|
|
along with source clock.
|
|
|
|
- cam_hw_pid:
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Definition: HW unique Pid values
|
|
|
|
Example:
|
|
cam_tfe0: qcom,tfe0@5c6e000{
|
|
cell-index = <0>;
|
|
compatible = "qcom,tfe530";
|
|
reg-names = "tfe0";
|
|
reg = <0x5c6e000 0x5000>;
|
|
reg-cam-base = <0x6e000>;
|
|
interrupt-names = "tfe0";
|
|
interrupts = <GIC_SPI 211 IRQ_TYPE_EDGE_RISING>;
|
|
regulator-names = "camss";
|
|
camss-supply = <&gcc_camss_top_gdsc>;
|
|
clock-names =
|
|
"tfe_clk_src",
|
|
"tfe_clk",
|
|
"tfe_axi_clk";
|
|
clocks =
|
|
<&gcc GCC_CAMSS_TFE_0_CLK_SRC>,
|
|
<&gcc GCC_CAMSS_TFE_0_CLK>,
|
|
<&gcc GCC_CAMSS_AXI_CLK>;
|
|
clock-rates =
|
|
<256000000 0 150000000>,
|
|
<460800000 0 200000000>,
|
|
<576000000 0 300000000>;
|
|
clock-cntl-level = "svs", "svs_l1", "turbo";
|
|
src-clock-name = "tfe_clk_src";
|
|
clock-control-debugfs = "true";
|
|
status = "ok";
|
|
};
|