sm8550-hdk: Update device documentation

Change-Id: I2c625029c7d7a4754e04045058609f47d0fda280
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
diff --git a/docs/devices/index.rst b/docs/devices/index.rst
index 0e22baf..32b0910 100644
--- a/docs/devices/index.rst
+++ b/docs/devices/index.rst
@@ -33,7 +33,7 @@
 
 .. toctree::
         :maxdepth: 1
-        :caption: SM8550-HDK (WIP)
+        :caption: SM8550-HDK
 
 	sm8550-hdk
 
diff --git a/docs/devices/sm8550-hdk.rst b/docs/devices/sm8550-hdk.rst
index 4787d57..5b8897c 100644
--- a/docs/devices/sm8550-hdk.rst
+++ b/docs/devices/sm8550-hdk.rst
@@ -7,9 +7,10 @@
 ==========
 
 .. note::
-    sm8x50-userdebug is a **WIP** AOSP build target for Snapdragon 8 Gen
-    devboards. Primarily supported and tested on sm8550-hdk but also smoke
-    tested on sm8550-qrd and sm8650-qrd devboards.
+    sm8x50-userdebug is an AOSP build target for Snapdragon 8 Gen devboards.
+    It is supported only on v6.8+ kernel versions. Primarily supported and
+    tested on sm8550-hdk. Other devboards (sm8550-qrd and sm8650-qrd) are
+    supported on the best efforts basis.
 
 
 `SM8550-HDK <https://www.lantronix.com/products/snapdragon-8-gen-2-mobile-hardware-development-kit/>`_
@@ -21,24 +22,22 @@
 
 The power-up sequence for sm8550-hdk is similar to that of RB3 and RB5. The wall
 power need to be switched ON first and then connect the USB-C to boot
-automatically without pressing any physical button on the board.
+automatically without pressing any physical button on the board. Make sure that
+switch <7, 8> of S5702 is ON before powering ON the device to enable HDMI out.
 
-Make sure you are running upstream kernel friendly ABL(bootloader) on SM8550-HDK
-Latest bootloader binaries are hosted here <URL>.
-
-You can also update bootloader binaries by running **flashall** script, which is
-a part of the vendor package of the SM8x50 AOSP build target. Boot the device in
-fastboot mode and run the following commands from your HOST machine:
-
-.. code::
-
-   <WIP>
+sm8x50-userdebug boots to UI with v6.8+ android-mainline and upstream kernel
+using software rendering and linux-firmware binaries for now.
+`lunch` target is not added yet and will be added as soon the firmware binaries
+land in linaro-vendor / linux-firmware repo to make sure that the device has
+more features enabled and is in a more usable state. Boot image header v2 is
+used for now, while we are working on releasing ABL with header v4 support.
+Also make sure you are running upstream kernel friendly ABL on SM8550-HDK.
 
 
 Download and Build Kernel and AOSP images from source for SM8x50 devices
 ------------------------------------------------------------------------
 
-#. Download the AOSP source tree and prepare sm8x50-userdebug build target:
+#. Download and build the AOSP source tree for sm8x50-userdebug build target:
 
 .. code::
 
@@ -47,37 +46,13 @@
    repo init -u https://android.googlesource.com/platform/manifest -b master
    repo sync -j`nproc`
    ./device/linaro/dragonboard/fetch-vendor-package.sh
-   cd $AOSP/device/linaro/dragonboard/
-   git remote add d4a https://source.devboardsforandroid.linaro.org/device/linaro/dragonboard
-   git fetch d4a
-   git checkout d4a/d4a
-   mkdir $AOSP/device/linaro/dragonboard-kernel/android-upstream
-
-
-#. Download and build upstream tracking kernel for SM8x50 devices, while we are
-   still working on supporting these devices in android-mainline kernel.
-
-.. code::
-
-   git clone https://git.linaro.org/people/amit.pundir/linux -b rbX-mainline
-   cd linux
-   make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- rbX_aosp_defconfig
-   make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- DTC_FLAGS=-@ -j`nproc`
-   make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- INSTALL_MOD_PATH=./modules/ INSTALL_MOD_STRIP=1 modules_install -j`nproc`
-   cp arch/arm64/boot/Image.gz arch/arm64/boot/dts/qcom/qrb5165-rb5.dtb arch/arm64/boot/dts/qcom/sdm845-db845c.dtb arch/arm64/boot/dts/qcom/sm8550-hdk.dtb arch/arm64/boot/dts/qcom/sm8550-qrd.dtb arch/arm64/boot/dts/qcom/sm8650-qrd.dtb $AOSP/device/linaro/dragonboard-kernel/android-upstream/
-   find ./modules/lib/ -iname \*.ko -exec cp {} $AOSP/device/linaro/dragonboard-kernel/android-upstream/ \;
-
-
-#. Build and flash sm8x50-userdebug AOSP images:
-
-.. code::
-
-   cd $AOSP
    source ./build/envsetup.sh
    lunch sm8x50-trunk_staging-userdebug
-   make TARGET_KERNEL_USE=upstream -j`nproc`
+   make -j`nproc`
 
 
+#. Flash sm8x50-userdebug AOSP images:
+
 Reboot sm8x50 in fastboot mode and run following commands to flash and boot AOSP:
 
 Disable verity and and erase AOSP partitions for any stale images:
@@ -101,6 +76,29 @@
 It should boot sm8x50 devices to UI with software rendering support.
 
 
+#. Download and build upstream tracking kernel for SM8x50 devices.
+
+.. code::
+
+   git clone https://git.linaro.org/people/amit.pundir/linux -b rbX-mainline
+   cd linux
+   make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- rbX_aosp_defconfig
+   make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- DTC_FLAGS=-@ -j`nproc`
+   make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- INSTALL_MOD_PATH=./modules/ INSTALL_MOD_STRIP=1 modules_install -j`nproc`
+   cp arch/arm64/boot/Image.gz arch/arm64/boot/dts/qcom/qrb5165-rb5.dtb arch/arm64/boot/dts/qcom/sdm845-db845c.dtb arch/arm64/boot/dts/qcom/sm8550-hdk.dtb arch/arm64/boot/dts/qcom/sm8550-qrd.dtb arch/arm64/boot/dts/qcom/sm8650-qrd.dtb $AOSP/device/linaro/dragonboard-kernel/android-upstream/
+   find ./modules/lib/ -iname \*.ko -exec cp {} $AOSP/device/linaro/dragonboard-kernel/android-upstream/ \;
+
+
+#. Rebuild sm8x50-userdebug AOSP images with local kernel build:
+
+.. code::
+
+   cd $AOSP
+   source ./build/envsetup.sh
+   lunch sm8x50-trunk_staging-userdebug
+   make TARGET_KERNEL_USE=upstream -j`nproc`
+
+
 Known issues and Troubleshooting on sm8550-hdk
 ----------------------------------------------