Selaa lähdekoodia

Enable booting from sata on A20 boards

Bob Mottram 6 vuotta sitten
vanhempi
commit
8b4ada33d3

+ 9
- 0
src/freedombone-image Näytä tiedosto

@@ -153,6 +153,10 @@ MULTIPATH_TOOLS_REPO="https://aur.archlinux.org/multipath-tools.git"
153 153
 MBR_REPO="https://aur.archlinux.org/mbr.git"
154 154
 CLIAPP_REPO="git://git.liw.fi/cliapp"
155 155
 
156
+# Whether to use a SATA drive and if so what its device/partition name is
157
+# eg. sda2
158
+EXTERNAL_DRIVE=
159
+
156 160
 function image_setup {
157 161
     setup_type=$1
158 162
 
@@ -453,6 +457,10 @@ do
453 457
             shift
454 458
             LOCAL_NAME="$1"
455 459
             ;;
460
+        --sata|--hdd)
461
+            shift
462
+            EXTERNAL_DRIVE="$1"
463
+            ;;
456 464
         *)
457 465
             # unknown option
458 466
             ;;
@@ -601,6 +609,7 @@ make "$IMAGE_TYPE" \
601 609
      INSECURE="$INSECURE" \
602 610
      AMNESIC="$AMNESIC" \
603 611
      SOCIALINSTANCE="$SOCIALINSTANCE" \
612
+     EXTERNAL_DRIVE="$EXTERNAL_DRIVE" \
604 613
      LOCAL_NAME="$LOCAL_NAME"
605 614
 
606 615
 # shellcheck disable=SC2181

+ 4
- 0
src/freedombone-image-customise Näytä tiedosto

@@ -141,6 +141,10 @@ BMX7_COMMIT='0a82c7c10fef44b259b35e77ab33632aa132d219'
141 141
 
142 142
 PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin
143 143
 
144
+# Whether to use a SATA drive and if so what its device/partition name is
145
+# eg. sda2
146
+EXTERNAL_DRIVE=
147
+
144 148
 configure_backports() {
145 149
     echo "deb http://${DEBIAN_REPO}/debian/ ${DEBIAN_VERSION}-backports main" >> "$rootdir/etc/apt/sources.list"
146 150
 }

+ 11
- 7
src/freedombone-image-hardware-setup Näytä tiedosto

@@ -155,6 +155,10 @@ beaglebone_repack_kernel() {
155 155
 
156 156
 a20_setup_boot() {
157 157
     dtb="$1"
158
+    a20_root_device='mmcblk0p2'
159
+    if [ "$2" ]; then
160
+        a20_root_device="$2"
161
+    fi
158 162
 
159 163
     # Setup boot.cmd
160 164
     if grep -q btrfs /etc/fstab ; then
@@ -173,7 +177,7 @@ a20_setup_boot() {
173 177
 setenv mmcdev 0
174 178
 setenv mmcpart 1
175 179
 
176
-setenv mmcroot /dev/mmcblk0p2 ro
180
+setenv mmcroot /dev/${a20_root_device} ro
177 181
 setenv mmcrootfstype $fstype rootwait fixrtc
178 182
 setenv mmcrootflags subvol=@
179 183
 
@@ -239,27 +243,27 @@ case "$MACHINE" in
239 243
         enable_serial_console ttyO0
240 244
         ;;
241 245
     cubietruck)
242
-        a20_setup_boot sun7i-a20-cubietruck.dtb
246
+        a20_setup_boot sun7i-a20-cubietruck.dtb "$EXTERNAL_DRIVE"
243 247
         enable_serial_console ttyS0
244 248
         ;;
245 249
     a20-olinuxino-lime)
246
-        a20_setup_boot sun7i-a20-olinuxino-lime.dtb
250
+        a20_setup_boot sun7i-a20-olinuxino-lime.dtb "$EXTERNAL_DRIVE"
247 251
         enable_serial_console ttyS0
248 252
         ;;
249 253
     a20-olinuxino-lime2)
250
-        a20_setup_boot sun7i-a20-olinuxino-lime2.dtb
254
+        a20_setup_boot sun7i-a20-olinuxino-lime2.dtb "$EXTERNAL_DRIVE"
251 255
         enable_serial_console ttyS0
252 256
         ;;
253 257
     a20-olinuxino-micro)
254
-        a20_setup_boot sun7i-a20-olinuxino-micro.dtb
258
+        a20_setup_boot sun7i-a20-olinuxino-micro.dtb "$EXTERNAL_DRIVE"
255 259
         enable_serial_console ttyS0
256 260
         ;;
257 261
     cubieboard2)
258
-        a20_setup_boot sun7i-a20-cubieboard2.dtb
262
+        a20_setup_boot sun7i-a20-cubieboard2.dtb "$EXTERNAL_DRIVE"
259 263
         enable_serial_console ttyS0
260 264
         ;;
261 265
     pcduino3)
262
-        a20_setup_boot sun7i-a20-pcduino3.dtb
266
+        a20_setup_boot sun7i-a20-pcduino3.dtb "$EXTERNAL_DRIVE"
263 267
         enable_serial_console ttyS0
264 268
         ;;
265 269
 esac

+ 2
- 0
src/freedombone-image-make Näytä tiedosto

@@ -77,6 +77,7 @@ export INSECURE
77 77
 export AMNESIC
78 78
 export SOCIALINSTANCE
79 79
 export LOCAL_NAME
80
+export EXTERNAL_DRIVE
80 81
 
81 82
 # Locate vmdebootstrap program fetched in Makefile
82 83
 basedir=`pwd`
@@ -225,6 +226,7 @@ sed -i "s|INSECURE=.*|INSECURE=\"${INSECURE}\"|g" "$TEMP_CUSTOMISE3"
225 226
 sed -i "s|AMNESIC=.*|AMNESIC=\"${AMNESIC}\"|g" "$TEMP_CUSTOMISE3"
226 227
 sed -i "s|SOCIALINSTANCE=.*|SOCIALINSTANCE=\"${SOCIALINSTANCE}\"|g" "$TEMP_CUSTOMISE3"
227 228
 sed -i "s|LOCAL_NAME=.*|LOCAL_NAME=\"${LOCAL_NAME}\"|g" "$TEMP_CUSTOMISE3"
229
+sed -i "s|EXTERNAL_DRIVE=.*|EXTERNAL_DRIVE=\"${EXTERNAL_DRIVE}\"|g" "$TEMP_CUSTOMISE3"
228 230
 sed -i 's|#!/bin/bash||g' "$TEMP_CUSTOMISE3"
229 231
 
230 232
 cat $TEMP_CUSTOMISE2 $TEMP_CUSTOMISE3 > $TEMP_CUSTOMISE4