Jump to content

anthony winner

Members
  • Posts

    12
  • Joined

  • Last visited

Profile Information

  • Gender
    Male
  • Location
    aloha, or

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. anthony winner

    anthony winner

  2. tried adding the LP versions of the files specified # TI AM62 quad core 2GB 2xGBE OSPI HDMI BOARD_NAME="SK-AM62B" BOARDFAMILY="k3" BOARD_MAINTAINER="glneo" BOOTCONFIG="am62x_evm_a53_defconfig" BOOTFS_TYPE="fat" BOOT_FDT_FILE="ti/k3-am625-lp-sk.dts" TIBOOT3_BOOTCONFIG="am62x_lpsk_r5_defconfig" TIBOOT3_FILE="tiboot3-am62x-hs-fs-evm.bin" DEFAULT_CONSOLE="serial" HAS_VIDEO_OUTPUT="no" KERNEL_TARGET="edge" SERIALCON="ttyS2" ATF_BOARD="lite" in the board file, but still no luck, wish there was a document of "how I got this board to boot with Armbian", so that for similar boards we could try to reproduce the work. Can't find a "sk-am62b board to test the default build on as they are obsolete, being replaced by the one I'm trying to get to work.
  3. I believe this is a difference in a "am62b" and a "am62-lp" any advice on modifying the build to the LP version of the MCU?
  4. That came from some cut and paste code, and truth be told did not look at that section too hard. But the code just above it will set "datafs" as ether a uuid or some other depending if CRYPTROOT_ENABLE (I don't so did not test his path) is enabled. Also notice later I rewrite the fstab file completely to use labels and not uuid's, as in my workflow the UUID's might change as I do FS updates.
  5. I also tried, which is the oldest image I can find, and it acts the same as the other Armbian images. i.e. fail in same way. : Armbian_24.2.1_Sk-am62b_bookworm_edge_6.6.16_minimal.img.xz
  6. I have this in my userpatches/ extensions. It will create 4 partitions, RPICFG (~500mb) , armi_roota(2 /4 g), armi_rootb (2 /4 g), and armbi_data (the rest). I do this so I can use SWupdate to update the root fs as needed. Note: this currently works on a RasPi CM4, so some details may need to change for your board, likely in the boot partition. I also have code in the "firstBoot.sh that will stretch the data partition to the rest of the storage space. I also modify the root fs size if building for developer, due all the dev tools don't fit in 2g partition. # this will change the first root FS lable from "armbi_root" to "armbi_roota function pre_prepare_partitions__600_fix_rootfs_label() { display_alert "fix rootfs label" "${EXTENSION}" "info" ROOT_FS_LABEL="armbi_roota" } # this adds the 3rd and 4th partitions, as well as hooks in the userpatch partition hook function prepare_image_size__601_partition (){ display_alert "Adding partition function" "${EXTENSION}" "info" # this will allow the "CREATE_PARTITION_TABLE" function to be called declare -g USE_HOOK_FOR_PARTITION=yes local rootb_part=3 local data_part=4 } #This sets the partition sizes function prepare_image_size__600_image_size() { display_alert "partition size" "${EXTENSION}" "info" FIXED_IMAGE_SIZE=5000 local old_RFS=${rootfs_size} rootfs_size=2000 display_alert "devloper mode is >${DEVELOPER_MODE}<" "${EXTENSION}" "info" if [[ "$DEVELOPER_MODE" == "yes" ]]; then FIXED_IMAGE_SIZE=16000 rootfs_size=4000 display_alert "Developer extended rootfs_size is ${old_RFS}Mib, changeing to ${rootfs_size}MiB" "${EXTENSION}" "warning" else display_alert "Normal rootfs_size is ${old_RFS}Mib, changeing to ${rootfs_size}MiB" "${EXTENSION}" "info" fi } #this creates the new partition table function create_partition_table() { display_alert "Running partition function" "${EXTENSION}" "info" # stage: calculate partition size # local bootstart=$(($OFFSET * 2048)) # local rootstart=$(($bootstart + ($BOOTSIZE * 2048) )) # local bootend=$(($rootstart - 1)) # local rootstart2=$(($rootstart + ($rootfs_size * 2048) )) # local rootend=$(($rootstart2 - 1)) # local datastart2=$(($rootstart2 + ($rootfs_size * 2048) )) # local rootend2=$(($datastart - 1)) local next=$OFFSET # Create a script in a bracket shell, then pipe it to fdisk. { [[ "$IMAGE_PARTITION_TABLE" == "msdos" ]] && echo "label: dos" || echo "label: $IMAGE_PARTITION_TABLE" if [[ -n "$biospart" ]]; then # gpt: BIOS boot local type="21686148-6449-6E6F-744E-656564454649" echo "$biospart : name=\"bios\", start=${next}MiB, size=${BIOSSIZE}MiB, type=${type}" local next=$(($next + $BIOSSIZE)) fi if [[ -n "$uefipart" ]]; then # dos: EFI (FAT-12/16/32) # gpt: EFI System [[ "$IMAGE_PARTITION_TABLE" != "gpt" ]] && local type="ef" || local type="C12A7328-F81F-11D2-BA4B-00A0C93EC93B" echo "$uefipart : name=\"efi\", start=${next}MiB, size=${UEFISIZE}MiB, type=${type}" local next=$(($next + $UEFISIZE)) fi if [[ -n "$bootpart" ]]; then # Linux extended boot [[ "$IMAGE_PARTITION_TABLE" != "gpt" ]] && local type="ea" || local type="BC13C2FF-59E6-4262-A352-B275FD6F7172" if [[ -n "$rootpart" ]]; then echo "$bootpart : name=\"bootfs\", start=${next}MiB, size=${BOOTSIZE}MiB, type=${type}" local next=$(($next + $BOOTSIZE)) else # no `size` argument mean "as much as possible" echo "$bootpart : name=\"bootfs\", start=${next}MiB, type=${type}" fi fi # create main , and secondary root FS [[ "$IMAGE_PARTITION_TABLE" != "gpt" ]] && local type="83" || local type="0FC63DAF-8483-4772-8E79-3D69D8477DE4" echo "2 : name=\"rootfs_a\", start=${next}MiB, size=${rootfs_size}MiB, type=${type}" local next=$(($next + $rootfs_size)) echo "3 : name=\"rootfs_b\", start=${next}MiB, size=${rootfs_size}MiB, type=${type}" #and finally the data partition local next=$(($next + $rootfs_size)) echo "4 : name=\"data\", start=${next}MiB, type=${type}" } | run_host_command_logged sfdisk "${SDCARD}".raw || exit_with_error "Partition fail." } #this formats the 2 new partitons, and sets up the fstab file in the image function format_partitions__600_format_partitons() { display_alert "${EXTENSION} ${BOARD}" "format_partitions__600_format_partitons" "info" if [[ -n $rootpart ]]; then local rootdeviceb="${LOOP}p3" check_loop_device "${rootdeviceb}" display_alert "Creating second rootfs " "$ROOTFS_TYPE on 3" run_host_command_logged mkfs.${mkfs[$ROOTFS_TYPE]} ${mkopts[$ROOTFS_TYPE]} ${mkopts_label[$ROOTFS_TYPE]:+${mkopts_label[$ROOTFS_TYPE]}"armbi_rootb"} "${rootdeviceb}" [[ $ROOTFS_TYPE == ext4 ]] && run_host_command_logged tune2fs -o journal_data_writeback "${rootdeviceb}" if [[ $ROOTFS_TYPE == btrfs && $BTRFS_COMPRESSION != none ]]; then local fscreateopt="-o compress-force=${BTRFS_COMPRESSION}" fi wait_for_disk_sync "after mkfs" # force writes to be really flushed # store in readonly global for usage in later hooks rootb_part_uuid="$(blkid -s UUID -o value ${LOOP}p3)" declare -g -r ROOTB_PART_UUID="${rootb_part_uuid}" display_alert "Mounting root b fs" "$rootdevice (UUID=${ROOTB_PART_UUID})" mkdir -p "${MOUNT}/rfs_backup" run_host_command_logged mount ${fscreateopt} $rootdeviceb $MOUNT/rfs_backup # create fstab (and crypttab) entry local rootfsb if [[ $CRYPTROOT_ENABLE == yes ]]; then # map the LUKS container partition via its UUID to be the 'cryptroot' device echo "$ROOT_MAPPER UUID=${root_part_uuid} none luks" >> $SDCARD/etc/crypttab rootfsb=${rootdeviceb} # used in fstab else rootfsb="UUID=$(blkid -s UUID -o value ${rootdeviceb})" fi #ToDo: possibly remove the mount echo "$rootfsb /rfs_backup ${mkfs[$ROOTFS_TYPE]} defaults,noatime${mountopts[$ROOTFS_TYPE]} 0 2" echo "$rootfsb /rfs_backup ${mkfs[$ROOTFS_TYPE]} defaults,noatime${mountopts[$ROOTFS_TYPE]} 0 2" >> $SDCARD/etc/fstab local datadevice="${LOOP}p4" check_loop_device "${datadevice}" display_alert "Creating data rootfs " "$ROOTFS_TYPE on 4" run_host_command_logged mkfs.${mkfs[$ROOTFS_TYPE]} ${mkopts[$ROOTFS_TYPE]} ${mkopts_label[$ROOTFS_TYPE]:+${mkopts_label[$ROOTFS_TYPE]}"armbi_data"} "${datadevice}" [[ $ROOTFS_TYPE == ext4 ]] && run_host_command_logged tune2fs -o journal_data_writeback "${datadevice}" if [[ $ROOTFS_TYPE == btrfs && $BTRFS_COMPRESSION != none ]]; then local fscreateopt="-o compress-force=${BTRFS_COMPRESSION}" fi wait_for_disk_sync "after mkfs" # force writes to be really flushed display_alert "Mounting datafs" "$datadevice (UUID=${ROOT_PART_UUID})" mkdir -p "${MOUNT}/home" run_host_command_logged mount ${fscreateopt} $datadevice $MOUNT/home # store in readonly global for usage in later hooks data_part_uuid="$(blkid -s UUID -o value ${LOOP}p3)" declare -g -r DATA_PARTB_UUID="${data_part_uuid}" # create fstab (and crypttab) entry local datafs if [[ $CRYPTROOT_ENABLE == yes ]]; then # map the LUKS container partition via its UUID to be the 'cryptroot' device echo "$ROOT_MAPPER UUID=${ata_part_uuid} none luks" >> $SDCARD/etc/crypttab datafs=$datadevice # used in fstab else datafs="UUID=$(blkid -s UUID -o value $datadevice)" fi echo "$datafs /home ${mkfs[$ROOTFS_TYPE]} defaults,noatime${mountopts[$ROOTFS_TYPE]} 0 2" >> $SDCARD/etc/fstab fi # stage: create new fstab, with labels and not UUID rm -f $SDCARD/etc/fstab display_alert "${EXTENSION} ${BOARD}" "Adding comments to fstab" "info" echo "LABEL=armbi_roota / ${mkfs[$ROOTFS_TYPE]} defaults,noatime${mountopts[$ROOTFS_TYPE]} 0 1" >> $SDCARD/etc/fstab #echo "LABEL=armbi_rootb /rfs_backup ${mkfs[$ROOTFS_TYPE]} defaults,noatime${mountopts[$ROOTFS_TYPE]} 0 2" >> $SDCARD/etc/fstab echo "LABEL=armbi_data /home ${mkfs[$ROOTFS_TYPE]} defaults,noatime${mountopts[$ROOTFS_TYPE]} 0 2" >> $SDCARD/etc/fstab echo "tmpfs /tmp tmpfs defaults,nosuid 0 0" >> $SDCARD/etc/fstab echo "LABEL=RPICFG ${UEFI_MOUNT_POINT} vfat defaults 0 2" >> $SDCARD/etc/fstab }
  7. The distributed images for sk-am62b do not boot, tried both the "Armbian 24.5.1 Bookworm Minimal" and the "Armbian 24.5.1 Noble CLI" , both only output a u-boot message and then hang: U-Boot SPL 2023.04-g8366064208 (May 20 2024 - 02:37:44 +0000) SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.8--v09.02.08 (Kool Koala)') SPL initial stack usage: 13408 bytes Method of test: Download and write image VIA etcher to a SD card and attempt boot. Note using the same method to write the Debian or Yocto image from TI boots as normal. For reference, messages from TI Debian boot: U-Boot SPL 2023.04 (May 27 2024 - 20:11:30 +0000) SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.8--v09.02.08 (Kool Koala)') SPL initial stack usage: 13392 bytes Trying to boot from MMC2 Authentication passed Authentication passed Authentication passed Authentication passed Authentication passed Starting ATF on ARM64 core... NOTICE: BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b8 NOTICE: BL31: Built : 20:11:18, May 27 2024 I/TC: I/TC: OP-TEE version: 4.1.0-51-g012cdca49 (gcc version 13.2.1 20231009 (Arm GNU Toolchain 13.2.rel1 (Build arm-13.7))) #1 Mon May 27 20:11:23 UTC 2024 aarch64 I/TC: WARNING: This OP-TEE configuration might be insecure! I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html I/TC: Primary CPU initializing I/TC: GIC redistributor base address not provided I/TC: Assuming default GIC group status and modifier I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.8--v09.02.08 (Kool Koala)') I/TC: HUK Initialized I/TC: Activated SA2UL device I/TC: Enabled firewalls for SA2UL TRNG device I/TC: SA2UL TRNG initialized I/TC: SA2UL Drivers initialized I/TC: Primary CPU switching to normal world boot same SD card, same hw / same switch settings on HW, ....
  8. if your using the build system, you can call "add_packages_to_rootfs" with a simple list of packages (i.e. "add_packages_to_rootfs build-essential"), it will handle the references for you. you can also remove packages with "remove-packages" the same way
  9. I also am trying to change RasPi device tree, see my post: What I've discovered thus far: Overlays are not enabled for RasPi, if you try to do an "armbian-add-overlay" you get an error. Only way I know at this point for kernel mods that works is to change "/boot/firmware/config.txt" and "/boot/firmware/armbian.txt" . But what you can do there is very limited. If your running a "jammy" version of the build, then you get the RasPi utilities like "raspi-config" and "dtoverlay" that might help. Also as an aside the overlays are @ "/boot/firmware/overlays" , and "/boot/dtb/overlays". Root device tree @ "/boot/dtb/broadcom/", but I have not gotten any to load as of yet.
  10. I also am trying to change RasPi device tree, see my post: What I've discovered thus far: Overlays are not enabled for RasPi, if you try to do an "armbian-add-overlay" you get an error. Only way I know at this point for kernel mods that works is to change "/boot/firmware/config.txt" and "/boot/firmware/armbian.txt" . But what you can do there is very limited. Also as an aside the overlays are @ "/boot/firmware/overlays" , and "/boot/dtb/overlays". Root device tree @ "/boot/dtb/broadcom/", but I have not gotten any to load as of yet.
  11. other option would be to enable DT overlays, but at present those are disabled as well.
  12. I have a RasPi 4b, I'm trying to understand how the device tree is modified so I can use the methodology eventually for a board that has a CM4 on it. So from a virgin clone of the build repo: ./compile.sh BOARD=rpi4b BRANCH=edge RELEASE=bookworm BUILD_MINIMAL=yes KERNEL_CONFIGURE=no KERNEL_GIT=full install image on SD card and boot the device, go through Armbian-setup. All well and good, then varify device tree used for the boot: cat /proc/device-tree/model gets me a: Raspberry Pi 4 Model B Rev 1.5 OK so now lets modify the device tree: ./compile.sh BOARD=rpi4b BRANCH=edge RELEASE=bookworm BUILD_MINIMAL=yes KERNEL_CONFIGURE=no KERNEL_GIT=full kernel-patch When the build pauses, we open another terminal and change the device tree file (note in the build log below I had modified all the CM4 device tree files): sudo nano ./arch/arm/boot/dts/broadcom/bcm2711-rpi-4-b.dts Only change is to modify the model line with a marker, like my initials, new line is: model = "Raspberry Pi 4 Model B AJW"; close editor, and hit enter to restart the build, then copy resulting patch file to: userpatches/kernel/archive/bcm2711-6.7/0010-simple-device-tree.patch rebuild as before, then burn new image to SD card and retest the device tree model, but no change is apparent. So how do you change the device tree for a RasPi 4? log-build-e9849e69-98be-4710-b3be-e05a30285a44.log
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines