gen_rpi_sdcard_img.sh 617 B

12345678910111213141516171819202122232425262728
  1. #!/bin/sh
  2. set -e -x
  3. if [ $# -ne 5 ]; then
  4. echo "SYNTAX: $0 <file> <bootfs image> <rootfs image> <bootfs size> <rootfs size>"
  5. exit 1
  6. fi
  7. OUTPUT="$1"
  8. BOOTFS="$2"
  9. ROOTFS="$3"
  10. BOOTFSSIZE="$4"
  11. ROOTFSSIZE="$5"
  12. align=4096
  13. head=4
  14. kernel_type=c
  15. rootfs_type=83
  16. sect=63
  17. set $(ptgen -o $OUTPUT -h $head -s $sect -l $align -t $kernel_type -p ${BOOTFSSIZE}M -t $rootfs_type -p ${ROOTFSSIZE}M ${SIGNATURE:+-S 0x$SIGNATURE})
  18. BOOTOFFSET="$(($1 / 512))"
  19. ROOTFSOFFSET="$(($3 / 512))"
  20. dd bs=512 if="$BOOTFS" of="$OUTPUT" seek="$BOOTOFFSET" conv=notrunc
  21. dd bs=512 if="$ROOTFS" of="$OUTPUT" seek="$ROOTFSOFFSET" conv=notrunc