| Qualcomm Femtocell (FSM99XX and FSM90XX) Peripheral Image Loader |
| |
| pil-femto-modem is a peripheral image loader (PIL) driver. It is used for |
| loading firmware images on multiple modems resident on the FSM99XX and |
| FSM90XX platforms. |
| |
| The top-level device tree entry has the following properties: |
| |
| Required properties: |
| - compatible: Must be "qcom,pil-femto-modem". |
| - reg: Pair of physical base address and region size of the |
| QDSP6[0] control registers. |
| - reg-names: "qdsp6_base" is required. |
| - qcom,firmware-name: Base name of the MBA firmware image ("mba"). |
| Maximum size is 4 characters. |
| - qcom,max-num-modems: Number of modem child nodes specified. |
| |
| Optional properties: |
| - qcom,q6-freq-row: Row number from the frequency table. Must be specified |
| with qcom,q6-freq-col. Refer to MBA documentation for |
| specifics on frequency table row selection. Current |
| row maximum is 6. |
| - qcom,q6-freq-col: The column numbers from the frequency table. This must |
| be specified if qcom,q6-freq-row is specified. The |
| number of column values corresponds to the number of |
| QDSPs available, and each selection corresponds to a |
| desired frequency. Refer to MBA documentation for |
| specifics on frequency table column selections when |
| paired with a given row. Current column maximum is 7. |
| |
| One child node per modem that must be loaded is required. |
| |
| Required properties: |
| - compatible: Must be "qcom,pil-femto-modem-desc". |
| - reg: Pair of physical base address and region size of the |
| Relay Message Buffer (RMB) registers for this modem. |
| - reg-names: "rmb_base" is required. |
| - qcom,firmware-name: Base filename of the firmware image (e.g. "mdm0"). |
| Maximum size is 4 characters. |
| - qcom,modem-id: Unique ID of this modem. This is not a logical |
| index. |
| - qcom,max-num-images: The maximum number of images that will be loaded to |
| this modem. |
| |
| Optional properties: |
| - qcom,pil-skip-entry-check: |
| Some entry pointers are virtual addresses, |
| which will cause the PIL entry address check |
| to fail. This parameter will disable the |
| check. |
| |
| Example: |
| qcom,modem-femto@fbc00000 { |
| compatible = "qcom,pil-femto-modem"; |
| #address-cells=<1>; |
| #size-cells=<1>; |
| ranges; |
| reg = <0xfbc00000 0x100>; |
| reg-names = "qdsp6_base"; |
| qcom,firmware-name = "mba"; |
| qcom,max-num-modems = <5>; |
| qcom,q6-freq-row = <0>; |
| qcom,q6-freq-col = <2 2 1 1>; |
| |
| qcom,modem@fd4a7000 { |
| compatible = "qcom,pil-femto-modem-desc"; |
| reg = <0xfd4a7000 0x20>; |
| reg-names = "rmb_base"; |
| qcom,firmware-name = "mdm0"; |
| qcom,modem-id = <0>; |
| qcom,max-num-images = <1>; |
| }; |
| |
| qcom,modem@fd4a7030 { |
| compatible = "qcom,pil-femto-modem-desc"; |
| reg = <0xfd4a7030 0x20>; |
| reg-names = "rmb_base"; |
| qcom,firmware-name = "mdm1"; |
| qcom,modem-id = <1>; |
| qcom,max-num-images = <1>; |
| }; |
| |
| qcom,modem@fd4a7060 { |
| compatible = "qcom,pil-femto-modem-desc"; |
| reg = <0xfd4a7060 0x20>; |
| reg-names = "rmb_base"; |
| qcom,firmware-name = "mdm2"; |
| qcom,modem-id = <2>; |
| qcom,max-num-images = <1>; |
| }; |
| |
| qcom,modem@fd4a7090 { |
| compatible = "qcom,pil-femto-modem-desc"; |
| reg = <0xfd4a7090 0x20>; |
| reg-names = "rmb_base"; |
| qcom,firmware-name = "mdm3"; |
| qcom,modem-id = <3>; |
| qcom,max-num-images = <1>; |
| }; |
| |
| qcom,modem@fd4a70c0 { |
| compatible = "qcom,pil-femto-modem-desc"; |
| reg = <0xfd4a70c0 0x20>; |
| reg-names = "rmb_base"; |
| qcom,firmware-name = "mdm4"; |
| qcom,modem-id = <4>; |
| qcom,max-num-images = <8>; |
| qcom,pil-skip-entry-check; |
| }; |
| }; |