- 1-2 hours of your life
- build envirment for the Kernel
- device with Ubuntu and nvflash
- AC100
- mini-usb cabel
- usb-stick >512MB
-
setup the build enviorment
-
create the work directory:
mkdir -p ~/ac100/output_files
-
-
get the kernel source
-
get the sources:
curl -LO https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.5.2.tar.xz
cd linux-4.5.2
-
-
build the kernel
-
genrate the config
make tegra_defconfig ARCH=arm
-
adjust the config for:
-
Kernel low-level debugging options
in Kernel hacking
to OFF
-
USB Video Class
in Device drivers --> Multimedia support --> Media USB Adapters
to MODULE
-
USB NETWORK Device [only if like to use anadapter] you will find the availbe Modules under
in Device drivers --> Network device support --> USB Network Adapters
to MODULE
make menuconfig ARCH=arm
-
-
build zIMAGE, modules, dtb
make zImage modules dtbs INSTALL_MOD_STRIP=1 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
-
build install-modules
make modules_install INSTALL_MOD_PATH=../output_files INSTALL_MOD_STRIP=1 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
-
copy dtb and zImage to the output_files directory
cp arch/arm/boot/dts/tegra20-paz00.dtb ../output_files
cp arch/arm/boot/zImage ../output_files
-
-
make output flashable
-
change into output_files directory
cd ../output_files
-
create needed folders
mkdir boot usr
-
move lib into usr [to avoid breaks of arch]
mv lib usr
-
move zImage and dtb into boot
mv zImage boot
mv tegra20-paz00.dtb boot
-
create boot.cmd
cat <<'EOF' > ~/ac100/output_files/boot/boot.cmd setenv bootargs 'root=/dev/mmcblk0p1 rootfstype=ext4 rootwait' ext2load mmc 0:1 0x1000000 /boot/zImage ext2load mmc 0:1 0x2000000 /boot/tegra20-paz00.dtb bootz 0x1000000 - 0x2000000 EOF
-
create directory etc
mkdir etc
-
add fstab
cat <<'EOF' > ~/ac100/output_files/etc/fstab /dev/mmcblk0p1 / ext4 rw,noatime,commit=30,barrier=1,data=ordered 0 0 EOF
-
pack the files
tar cf kernel.tar boot usr etc
-
-
prepare pen drive
-
copy kernel.tar to pen drive
cp ~/ac100/output_files/kernel.tar < mountpoint of the pen drive >
-
get Arch Linux filesystem for Tegra systems
curl -o < mountpoint of the pen drive > http://archlinuxarm.org/os/ArchLinuxARM-trimslice-latest.tar.gz
-
-
boot AC100 into recovery mode
- press ctrl + esc + Power
-
install on the flash host nvflash
curl -O /tmp https://phablet-paz00.googlecode.com/files/nvflash_20110628-2_all.deb ; sudo dpkg -i nvflash_20110628-2_all.deb
-
connect AC100 with your flash Host
-
get and boot a minimal SOSUBOOT
-
on the flash Host
curl -O /tmp https://dl.dropboxusercontent.com/u/40761340/Test/sos-uboot-r5-2013-11-10.bin nvflash --bl sos-uboot-r5-2013-11-10.bin --go
-
on the AC100
./switch-to-uboot
-
-
prepare the AC100
-
create one new partions [maybe u like to backup the old once]
parted /dev/mmcblk0 mklabel gpt parted /dev/mmcblk0 -s mkpart primary 7168s '100%' parted /dev/mmcblk0 -s name 1 UDB
-
create filesystem
mkfs.ext4 /dev/mmcblk0p1
-
-
Install Kernel and OS
-
create mount point
mkdir /target mkdir /source
-
mount the emmc
mount -t ext4 /dev/mmcblk0p1 /target
-
inserte the stick and mount it
mount -t vfat /dev/sda1 /source
-
change into directory /target
cd /target
-
extract the ARCH Linux filesystem
gzip -dc /source/ArchLinuxARM-trimslice-latest.tar.gz | tar xp
-
erase /boot to add new builded kernel for the AC100
rm -rf boot/*
-
unpack kernel.tar
tar xf /source/kern.tar
-
change into the /boot directory
cd /target/boot
-
make the kernel bootable
mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "ubootscript" -d boot.cmd boot.scr
-
sync for safety
sync
-
unmount the pen drive and the emmc
cd /; umount /target; umount /source
-
Source:
@pryg-skok: Nice to hear that you got your basic installation working.
This is what I can tell you about the issue you faced.
I do remember that I also had to use "root=/dev/mmcblk1p1".
I don't remember whether or not I had wpa_supplicant available after the initial installation. The easiest way is probably to create an open Wlan network temporally and install the wpa_supplicant package with its dependencies. Afterwards you should be able to connect to a WPA2 protected network. With an Android phone you should be able to create a hotspot without security (I have that option in Android10). Normal LAN/WLAN routers nowadays also have the option to create a so called 'guest network'. That should also allow you to temporally create an open Wlan network. To connect your ac100 to an open wlan network with arch linux, have a look here... https://wiki.archlinux.org/index.php/Network_configuration/Wireless#iw
I do not have any problems with USB sticks. The sticks are auto mounted by the system. Can you mount them manually? It might be that auto mount is only 'available' once you have a desktop environment installed. Maybe that is installed as a dependency (Don't hang me on that). In my case I have 'enlightenment' and 'i3' installed.