From d2ff4c16f2cac212b2a28f308f06d9c7fae9d98a Mon Sep 17 00:00:00 2001 From: Clayton Craft Date: Mon, 7 Mar 2022 17:07:36 -0800 Subject: [PATCH] device-purism-librem5: update boot.scr and uboot flash script (MR 2983) - updates the boot.scr to support SD card boot - updates the uboot flash script to support the latest librem5-uboot package changes --- device/main/device-purism-librem5/APKBUILD | 8 ++--- device/main/device-purism-librem5/deviceinfo | 4 +-- .../device-purism-librem5/flash_script.lst | 4 +-- .../device-purism-librem5/uboot-script.cmd | 32 +++++++++++++++---- 4 files changed, 32 insertions(+), 16 deletions(-) diff --git a/device/main/device-purism-librem5/APKBUILD b/device/main/device-purism-librem5/APKBUILD index 15ba8c50c..f89f66934 100644 --- a/device/main/device-purism-librem5/APKBUILD +++ b/device/main/device-purism-librem5/APKBUILD @@ -3,7 +3,7 @@ # Co-Maintainer: Bhushan Shah pkgname=device-purism-librem5 pkgdesc="Purism Librem 5 Phone" -pkgver=1.30 +pkgver=1.31 pkgrel=0 _confver=49 _purismrel=1 @@ -148,14 +148,14 @@ eb96cb23f2fe28ef528afe0d267453461611bfe7e8dffaf5afcd2de96f8e3c1f4612c3a9ec43feb5 2e72d9a084ecd6c96cafbbd8fda461ae8b2ebd14ffda601d9f36d73f08f04088213de17da078293ddd958d4c76d33148c7af6e252eb0709f6934855a55578509 00-mesa.sh 8b6fa7b12c15f439c561901f3ffe24a1ef2a0c343401c0a79281060854ab29e08a1fb5e7adae8684b12aa9f535ed99e2dad993dce9724822cb0fbf2497dd86e5 70-wifi-pm.rules 00355d9ad085a77e157f3c62eb4f1bcac2823d3b341e34d1128edbfb1444fba83e8eacd263ea61da9f6d853f1328ab7fbe5ea63bd08c8a1bc9b8eaf44ae1f1c6 77-mm-broadmobi-port-types.rules -f67ff150e4113b1e4a1432daa52df595ce6a67d52d593918fc25215d138c9f6450b075ff095a49b9bce6391562d2833283742e3574e00fd6ad9a1d808b4e4623 deviceinfo -2703c7a4e7f32cf102dfed644a8213497828ae1fe9f3bd789663157f79c8c8ddb05672e5c9a0c6883e9dee42afcfe9578e611dd1d9fe6cd8129d8d7738d28ad2 flash_script.lst +17c4cf3cfefddee8b47c62c311e177d829fc25140c56c2910ad37f64768e09dc209516d5f97c187ebdf5b1d7851ad7a3518ea5b16b01390b2906407c4f18eae1 deviceinfo +ccb47fd421c5e35a8def8e6fb61dad99e42cf542690068a68f90c257e41d33f45f1069db0a8d89372d9029681812957033995639a6a8a5e3eed48019325e0f4d flash_script.lst 110630f959e3f3a2acc335d755defeb0f49fb40f46cb2423205511f43d1dfdbb91722271fac34a6cbf04a5f0406e6a34ed77e75555acc3f420041d32224027d6 modprobe.d-ship_mode.conf 3f62c04eb92d850e32d5e1b17534dec753563342ea6c4f9dc2572700d4f6eeb8ae8cd8e8e4f1b0f5c61f21d87bc61c02212f27313986157220003d78e2d69505 modprobe.d_rsi.conf a0740e405781ec6ef765fdc9f5700c95adbb241c45c97b9384ba68cdece662cb216ca5918640042f6e65a5d1b1a9099936382c99b49a44303f7b6d77a075a471 modules-load.d_librem5.conf 8ef4ec7a9e9a4fb801d207e7d94b627aacc9243a93b0ec28e0823a6f44b8102416c040e4ddf499f87bb9dfa960cf6f627b008b79f197f6814b3fd881e18ae8ef pcscd-librem5-reader.conf 2618b40eebd3602066ee75ab85cbdbb4cfee498def9879c95a304f05a6eeedf1ab28c5dd9fa5efc8f88c790f49c96458c61d5dfe8a3ca0f96bcc0e244313ab01 pcscd-librem5.initd -5da1e39c36d8d83d159f8f9aa0b77c3de98b5d65054d0c3d376d64d87ef1e21b7570e0039e761b015917d4808e896e102d432dc8229e6189e80104dbd148ae4b uboot-script.cmd +6971669a7ae4206f6d38f5050747ebc9ffb591a92921a00623e20bb9369ed25d6168dba719de0abec900f1dc5f2f02089a05b5f4e871d6a7cee5afcf38c581fc uboot-script.cmd 1cbc65cf2cb8fad4b0332d012a0256a266205b9b64371f5c0dae09dbb7f1e45b254e8c43993b896097e9d7035a72d547d9bce1ab2133addc56a5abdb80b44616 xorg.conf fad386071fc45f9880a94cc8004fabd5d98b3e6a12606c98d8e72e0208f22ab54f03b921f5967a959782507e2bff67d2fa92e46d8cd242011a3afcdbda529279 70-librem5-xwayland-accel.sh f535b43b8defe75e72049e4eee181bfe821f6304a096413bccf6d08c8bb11b947fa1fee305af85616abd778745fadd52ebd610c2d135a4f907915b99ab2c526a 0001-librem5-pm.udev-disable-PM-for-broadmobi-modem.patch diff --git a/device/main/device-purism-librem5/deviceinfo b/device/main/device-purism-librem5/deviceinfo index b5321d9a3..15660b661 100644 --- a/device/main/device-purism-librem5/deviceinfo +++ b/device/main/device-purism-librem5/deviceinfo @@ -8,7 +8,7 @@ deviceinfo_codename="purism-librem5" deviceinfo_year="2019" deviceinfo_dtb="freescale/imx8mq-librem5-r2 freescale/imx8mq-librem5-r3 freescale/imx8mq-librem5-r4" deviceinfo_append_dtb="false" -deviceinfo_modules_initfs="dwc3 edt-ft5x06 goodix gpio_vibra led_bl libcomposite phy_fsl_imx8mq_usb pwm_vibra tps6598x udc_core usbhid xhci_hcd xhci_plat_hcd bq25890_charger " +deviceinfo_modules_initfs="dwc3 edt-ft5x06 goodix gpio_vibra led_bl libcomposite phy_fsl_imx8mq_usb pwm_vibra tps6598x udc_core usbhid xhci_hcd xhci_plat_hcd bq25890_charger usb_storage uas" deviceinfo_arch="aarch64" deviceinfo_mesa_driver="mxsfb-drm" @@ -23,5 +23,5 @@ deviceinfo_screen_height="1440" # Bootloader related deviceinfo_flash_method="uuu" deviceinfo_generate_legacy_uboot_initfs="false" -deviceinfo_sd_embed_firmware="u-boot/librem5/phone-boot.img:2" +deviceinfo_sd_embed_firmware="u-boot/librem5/phone-boot.img:33" deviceinfo_boot_part_start="4096" diff --git a/device/main/device-purism-librem5/flash_script.lst b/device/main/device-purism-librem5/flash_script.lst index 40ba7bad8..671ad0539 100644 --- a/device/main/device-purism-librem5/flash_script.lst +++ b/device/main/device-purism-librem5/flash_script.lst @@ -17,7 +17,5 @@ SDPV: jump SDPS: boot -f /mnt/rootfs_purism-librem5/usr/share/u-boot/librem5/phone-boot.img FB: ucmd mmc dev 0 -FB: ucmd setenv fastboot_dev mmc -FB: ucmd setenv mmcdev 0 -FB: flash -raw2sparse all /home/pmos/rootfs/purism-librem5.img +FB: flash -raw2sparse mmc0 /home/pmos/rootfs/purism-librem5.img FB: Done diff --git a/device/main/device-purism-librem5/uboot-script.cmd b/device/main/device-purism-librem5/uboot-script.cmd index 980095166..a944c9e28 100644 --- a/device/main/device-purism-librem5/uboot-script.cmd +++ b/device/main/device-purism-librem5/uboot-script.cmd @@ -1,8 +1,23 @@ -setenv bootargs init=/init.sh rw console=ttymxc0,115200 cma=256M PMOS_NO_OUTPUT_REDIRECT PMOS_FORCE_PARTITION_RESIZE -setenv mmcdev 0 -setenv mmcpart 1 +# Uses the following env. vars: +# devtype e.g. mmc/scsi etc +# devnum The device number of the given type +# bootpart The partition containing the boot files +# board_rev Librem 5 board revision -printenv + +# Default to devtype=mmc, devnum=0, bootpart=1 if they are unset in the +# environment. For supporting older u-boot where these may not be configured. +if itest.s "x" == "x$devtype" ; then + devtype="mmc" +fi +if itest.s "x" == "x$devnum" ; then + devnum=0 +fi +if itest.s "x" == "x$bootpart" ; then + bootpart=1 +fi + +setenv bootargs init=/init.sh rw console=ttymxc0,115200 cma=256M PMOS_NO_OUTPUT_REDIRECT PMOS_FORCE_PARTITION_RESIZE # select the correct dtb based on device revision # default to "-r2" if board_rev isn't set, since it'll boot on any librem5 @@ -15,17 +30,20 @@ elif itest.s "x4" == "x$board_rev" ; then fi echo Loading DTB -ext2load mmc ${mmcdev}:${mmcpart} ${fdt_addr_r} ${dtb_file} +ext2load $devtype ${devnum}:${bootpart} ${fdt_addr_r} ${dtb_file} echo Loading Initramfs -ext2load mmc ${mmcdev}:${mmcpart} ${ramdisk_addr_r} initramfs +ext2load $devtype ${devnum}:${bootpart} ${ramdisk_addr_r} initramfs echo Loading Kernel -ext2load mmc ${mmcdev}:${mmcpart} ${kernel_addr_r} vmlinuz +ext2load $devtype ${devnum}:${bootpart} ${kernel_addr_r} vmlinuz echo Resizing FDT fdt addr ${fdt_addr_r} fdt resize +# For debug +printenv + echo Booting kernel booti ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r}