diff --git a/bindings/arm/msm/android.txt b/bindings/arm/msm/android.txt new file mode 100644 index 00000000..32e418fd --- /dev/null +++ b/bindings/arm/msm/android.txt @@ -0,0 +1,118 @@ +Android firmware + +Node to specify early mount of vendor and system partition. + +Required properties + +-compatible: "android,firmware" + +Child nodes: +------------ + +fstab: +------------------------------ + +fstab entry to specify mount attributes of vendor partition. + +Required properties: + +-compatible: "android,fstab" + +Child nodes: +------------ + +vendor: +----------------- + +vendor partition specification. + +Required properties: + +-compatible: "android, vendor" +-dev: block device corresponding to vendor partition +-type: file system type of vendor partition +-mnt_flags: mount flags +-fsmgr_flags: fsmgr flags + +Example: + + firmware: firmware { + android { + compatible = "android,firmware"; + fstab { + compatible = "android,fstab"; + vendor { + compatible = "android,vendor"; + dev = "/dev/block/platform/soc/1da4000.ufshc/by-name/vendor"; + type = "ext4"; + mnt_flags = "ro,barrier=1,discard"; + fsmgr_flags = "wait,slotselect"; + status = "ok"; + }; + }; + }; + }; + +odm: +----------------- + +odm partition specification. + +Required properties: + +-compatible: "android, odm" +-dev: block device corresponding to odm partition +-type: file system type of odm partition +-mnt_flags: mount flags +-fsmgr_flags: fsmgr flags + +Example: + + firmware: firmware { + android { + compatible = "android,firmware"; + fstab { + compatible = "android,fstab"; + odm { + compatible = "android,odm"; + dev = "/dev/block/platform/soc/1da4000.ufshc/by-name/odm"; + type = "ext4"; + mnt_flags = "ro,barrier=1,discard"; + fsmgr_flags = "wait,slotselect"; + status = "ok"; + }; + }; + }; + }; + +system: +----------------- + +system partition specification. + +Required properties: + +-compatible: "android,system" +-dev: block device corresponding to system partition +-type: file system type of system partition +-mnt_flags: mount flags +-fsmgr_flags: fsmgr flags + +Example: + + firmware: firmware { + android { + compatible = "android,firmware"; + fstab { + compatible = "android,fstab"; + system { + compatible = "android,system"; + dev = "/dev/block/platform/soc/1da4000.ufshc/by-name/system"; + type = "ext4"; + mnt_flags = "ro,barrier=1,discard"; + fsmgr_flags = "wait,slotselect"; + status = "ok"; + }; + }; + }; + }; diff --git a/bindings/firmware/qcom,scm.txt b/bindings/firmware/qcom,scm.txt index 3f29ea04..ace40adc 100644 --- a/bindings/firmware/qcom,scm.txt +++ b/bindings/firmware/qcom,scm.txt @@ -21,6 +21,8 @@ Required properties: * "qcom,scm-sm8150" and: * "qcom,scm" + * "android,firmware" for firmware image + * "android,vbmeta" for setting system properties for verified boot. - clocks: Specifies clocks needed by the SCM interface, if any: * core clock required for "qcom,scm-apq8064", "qcom,scm-msm8660" and "qcom,scm-msm8960" @@ -42,3 +44,26 @@ Example for MSM8916: clock-names = "core", "bus", "iface"; }; }; + +Example for SM6150: + +firmware: firmware { + android { + compatible = "android,firmware"; + vbmeta { + compatible = "android,vbmeta"; + parts = "vbmeta,boot,system,vendor,dtbo"; + }; + fstab { + compatible = "android,fstab"; + vendor { + compatible = "android,vendor"; + dev = "/dev/block/platform/soc/1d84000.ufshc/by-name/vendor"; + type = "ext4"; + mnt_flags = "ro,barrier=1,discard"; + fsmgr_flags = "wait,slotselect,avb"; + status = "ok"; + }; + }; + }; + }; diff --git a/bindings/vendor-prefixes.yaml b/bindings/vendor-prefixes.yaml index 6992bbbb..585995d0 100644 --- a/bindings/vendor-prefixes.yaml +++ b/bindings/vendor-prefixes.yaml @@ -81,6 +81,8 @@ patternProperties: description: Analogix Semiconductor, Inc. "^andestech,.*": description: Andes Technology Corporation + "^android,.*": + description: Google Inc. "^apm,.*": description: Applied Micro Circuits Corporation (APM) "^aptina,.*":