| * Qualcomm Technologies, Inc. MSM FLASH |
| |
| The MSM camera Flash driver provides the definitions for |
| enabling and disabling LED Torch/Flash by requesting it to |
| PMIC/I2C/GPIO based hardware. It provides the functions for |
| the Client to control the Flash hardware. |
| |
| ======================================================= |
| Required Node Structure |
| ======================================================= |
| The Flash device is described in one level of the device node. |
| |
| ====================================== |
| First Level Node - CAM FLASH device |
| ====================================== |
| - compatible |
| Usage: required |
| Value type: <string> |
| Definition: Should be "qcom,camera-flash". |
| |
| - cell-index |
| Usage: required |
| Value type: <u32> |
| Definition: Should specify the hardware index id. |
| |
| - reg |
| Usage: required |
| Value type: <u32> |
| Definition: Register values. |
| |
| - flash-source |
| Usage: required |
| Value type: <phandle> |
| Definition: Should contain array of phandles to Flash source nodes. |
| |
| - torch-source |
| Usage: required |
| Value type: <phandle> |
| Definition: Should contain array of phandles to torch source nodes. |
| |
| - switch-source |
| Usage: Optional |
| Value type: <phandle> |
| Definition: Should contain phandle to switch source nodes. |
| |
| - slave-id |
| Usage: optional |
| Value type: <u32> |
| Definition: should contain i2c slave address, device id address |
| and expected id read value. |
| |
| - cci-master |
| Usage: optional |
| Value type: <u32> |
| Definition: should contain i2c master id to be used for this camera |
| flash. |
| |
| - max-current |
| Usage: optional |
| Value type: <u32> |
| Definition: Max current in mA supported by flash |
| |
| - max-duration |
| Usage: optional |
| Value type: <u32> |
| Definition: Max duration in ms flash can glow. |
| |
| - gpios |
| Usage: optional |
| Value type: <u32> |
| Definition: should specify the gpios to be used for the flash. |
| |
| - gpio-req-tbl-num |
| Usage: optional |
| Value type: <u32> |
| Definition: should specify the gpio table index. |
| |
| - gpio-req-tbl-flags |
| Usage: optional |
| Value type: <u32> |
| Definition: should specify the gpio functions. |
| |
| - gpio-req-tbl-label |
| Usage: optional |
| Value type: <u32> |
| Definition: should specify the gpio labels. |
| |
| - gpio-flash-reset |
| Usage: optional |
| Value type: <u32> |
| Definition: should contain index to gpio used by flash's "flash reset" pin. |
| |
| - gpio-flash-en |
| Usage: optional |
| Value type: <u32> |
| Definition: should contain index to gpio used by flash's "flash enable" pin. |
| |
| - gpio-flash-now |
| Usage: optional |
| Value type: <u32> |
| Definition: should contain index to gpio used by flash's "flash now" pin. |
| |
| Example: |
| |
| led_flash_rear: qcom,camera-flash@0 { |
| reg = <0x00 0x00>; |
| cell-index = <0>; |
| compatible = "qcom,camera-flash"; |
| flash-source = <&pmi8998_flash0 &pmi8998_flash1>; |
| torch-source = <&pmi8998_torch0 &pmi8998_torch1>; |
| switch-source = <&pmi8998_switch0>; |
| qcom,slave-id = <0x00 0x00 0x0011>; |
| qcom,cci-master = <0>; |
| gpios = <&msmgpio 23 0>, |
| <&msmgpio 24 0>; |
| <&msmgpio 25 0>; |
| qcom,gpio-flash-reset = <0>; |
| qcom,gpio-flash-en = <0>; |
| qcom,gpio-flash-now = <1>; |
| qcom,gpio-req-tbl-num = <0 1>; |
| qcom,gpio-req-tbl-flags = <0 0>; |
| qcom,gpio-req-tbl-label = "FLASH_EN", |
| "FLASH_NOW"; |
| qcom,max-current = <1500>; |
| qcom,max-duration = <1200>; |
| }; |