## system memory map
00000000-00000000 : aml_dummy_codec_audio.0
00000001-00000001 : smc0_reset_level
01200230-0120024c : AMLOGIC_CARD
80000000-83ffffff : System RAM
8030b000-80b1c1b7 : Kernel text
80b1e000-80d14fb7 : Kernel data
84100000-850fffff : mesonfb.0
85100000-851fffff : mesonfb.0
85200000-891fffff : mesonstream.0
89200000-8d1fffff : vdin
89200000-8d1fffff : vdin
8d200000-8f4fffff : deinterlace.0
8f500000-920d3fff : ppmgr.0
92100000-92afffff : mesonstream.0
92b00000-9fefffff : System RAM
a0000000-bfffffff : System RAM
c1108600-c1108624 : aml_nand.0
cc000000-cfffffff : AMLOGIC_SPI_NOR
d0060000-d0060100 : Mali_GP
d0061000-d0061200 : Mali_L2
d0063000-d0063100 : Mali_GP_MMU
d0064000-d0064100 : Mali_PP0_MMU
d0065000-d0065100 : Mali_PP1_MMU
d0068000-d0069100 : Mali_PP0
d006a000-d006b100 : Mali_PP1
## mtd table
dev: size erasesize name
mtd0: 00800000 00400000 "logo"
mtd1: 00800000 00400000 "aml_logo"
mtd2: 00800000 00400000 "recovery"
mtd3: 00800000 00400000 "boot"
mtd4: 88800000 00400000 "system"
mtd5: 21000000 00400000 "cache"
mtd6: 20000000 00400000 "backup"
mtd7: 20400000 00400000 "update"
mtd8: 11c00000 00400000 "data"
mtd9: 00400000 00001000 "bootloader"
mtd10: 00008000 00001000 "ubootenv"
## symbolic links
symlink("Roboto-Bold.ttf","/system/fonts/DroidSans-Bold.ttf");
symlink("Roboto-Regular.ttf","/system/fonts/DroidSans.ttf");
symlink("busybox","/system/xbin/[");
symlink("busybox","/system/xbin/[[");
symlink("busybox","/system/xbin/adjtimex");
symlink("busybox","/system/xbin/arp");
symlink("busybox","/system/xbin/ash");
symlink("busybox","/system/xbin/awk");
symlink("busybox","/system/xbin/base64");
symlink("busybox","/system/xbin/basename");
symlink("busybox","/system/xbin/bbconfig");
symlink("busybox","/system/xbin/blkid");
symlink("busybox","/system/xbin/blockdev");
symlink("busybox","/system/xbin/brctl");
symlink("busybox","/system/xbin/bunzip2");
symlink("busybox","/system/xbin/bzcat");
symlink("busybox","/system/xbin/bzip2");
symlink("busybox","/system/xbin/cal");
symlink("busybox","/system/xbin/cat");
symlink("busybox","/system/xbin/catv");
symlink("busybox","/system/xbin/chattr");
symlink("busybox","/system/xbin/chgrp");
symlink("busybox","/system/xbin/chmod");
symlink("busybox","/system/xbin/chown");
symlink("busybox","/system/xbin/chroot");
symlink("busybox","/system/xbin/clear");
symlink("busybox","/system/xbin/cmp");
symlink("busybox","/system/xbin/comm");
symlink("busybox","/system/xbin/cp");
symlink("busybox","/system/xbin/cpio");
symlink("busybox","/system/xbin/crond");
symlink("busybox","/system/xbin/crontab");
symlink("busybox","/system/xbin/cut");
symlink("busybox","/system/xbin/date");
symlink("busybox","/system/xbin/dc");
symlink("busybox","/system/xbin/dd");
symlink("busybox","/system/xbin/depmod");
symlink("busybox","/system/xbin/devmem");
symlink("busybox","/system/xbin/df");
symlink("busybox","/system/xbin/diff");
symlink("busybox","/system/xbin/dirname");
symlink("busybox","/system/xbin/dmesg");
symlink("busybox","/system/xbin/dnsd");
symlink("busybox","/system/xbin/dos2unix");
symlink("busybox","/system/xbin/du");
symlink("busybox","/system/xbin/echo");
symlink("busybox","/system/xbin/ed");
symlink("busybox","/system/xbin/egrep");
symlink("busybox","/system/xbin/env");
symlink("busybox","/system/xbin/expand");
symlink("busybox","/system/xbin/expr");
symlink("busybox","/system/xbin/false");
symlink("busybox","/system/xbin/fbset");
symlink("busybox","/system/xbin/fbsplash");
symlink("busybox","/system/xbin/fdisk");
symlink("busybox","/system/xbin/fgrep");
symlink("busybox","/system/xbin/find");
symlink("busybox","/system/xbin/flash_lock");
symlink("busybox","/system/xbin/flash_unlock");
symlink("busybox","/system/xbin/flashcp");
symlink("busybox","/system/xbin/flock");
symlink("busybox","/system/xbin/fold");
symlink("busybox","/system/xbin/free");
symlink("busybox","/system/xbin/freeramdisk");
symlink("busybox","/system/xbin/fstrim");
symlink("busybox","/system/xbin/fsync");
symlink("busybox","/system/xbin/ftpget");
symlink("busybox","/system/xbin/ftpput");
symlink("busybox","/system/xbin/fuser");
symlink("busybox","/system/xbin/getopt");
symlink("busybox","/system/xbin/grep");
symlink("busybox","/system/xbin/groups");
symlink("busybox","/system/xbin/gunzip");
symlink("busybox","/system/xbin/gzip");
symlink("busybox","/system/xbin/halt");
symlink("busybox","/system/xbin/head");
symlink("busybox","/system/xbin/hexdump");
symlink("busybox","/system/xbin/id");
symlink("busybox","/system/xbin/ifconfig");
symlink("busybox","/system/xbin/inetd");
symlink("busybox","/system/xbin/insmod");
symlink("busybox","/system/xbin/install");
symlink("busybox","/system/xbin/ionice");
symlink("busybox","/system/xbin/iostat");
symlink("busybox","/system/xbin/ip");
symlink("busybox","/system/xbin/kill");
symlink("busybox","/system/xbin/killall");
symlink("busybox","/system/xbin/killall5");
symlink("busybox","/system/xbin/less");
symlink("busybox","/system/xbin/ln");
symlink("busybox","/system/xbin/losetup");
symlink("busybox","/system/xbin/ls");
symlink("busybox","/system/xbin/lsattr");
symlink("busybox","/system/xbin/lsmod");
symlink("busybox","/system/xbin/lsof");
symlink("busybox","/system/xbin/lsusb");
symlink("busybox","/system/xbin/lzcat");
symlink("busybox","/system/xbin/lzma");
symlink("busybox","/system/xbin/lzop");
symlink("busybox","/system/xbin/lzopcat");
symlink("busybox","/system/xbin/man");
symlink("busybox","/system/xbin/md5sum");
symlink("busybox","/system/xbin/mesg");
symlink("busybox","/system/xbin/mkdir");
symlink("busybox","/system/xbin/mkdosfs");
symlink("busybox","/system/xbin/mke2fs");
symlink("busybox","/system/xbin/mkfifo");
symlink("busybox","/system/xbin/mkfs.ext2");
symlink("busybox","/system/xbin/mkfs.vfat");
symlink("busybox","/system/xbin/mknod");
symlink("busybox","/system/xbin/mkswap");
symlink("busybox","/system/xbin/mktemp");
symlink("busybox","/system/xbin/modinfo");
symlink("busybox","/system/xbin/modprobe");
symlink("busybox","/system/xbin/more");
symlink("busybox","/system/xbin/mount");
symlink("busybox","/system/xbin/mountpoint");
symlink("busybox","/system/xbin/mpstat");
symlink("busybox","/system/xbin/mv");
symlink("busybox","/system/xbin/nanddump");
symlink("busybox","/system/xbin/nandwrite");
symlink("busybox","/system/xbin/nbd-client");
symlink("busybox","/system/xbin/netstat");
symlink("busybox","/system/xbin/nice");
symlink("busybox","/system/xbin/nohup");
symlink("busybox","/system/xbin/nslookup");
symlink("busybox","/system/xbin/ntpd");
symlink("busybox","/system/xbin/od");
symlink("busybox","/system/xbin/patch");
symlink("busybox","/system/xbin/pgrep");
symlink("busybox","/system/xbin/pidof");
symlink("busybox","/system/xbin/ping");
symlink("busybox","/system/xbin/pipe_progress");
symlink("busybox","/system/xbin/pkill");
symlink("busybox","/system/xbin/pmap");
symlink("busybox","/system/xbin/poweroff");
symlink("busybox","/system/xbin/printenv");
symlink("busybox","/system/xbin/printf");
symlink("busybox","/system/xbin/ps");
symlink("busybox","/system/xbin/pstree");
symlink("busybox","/system/xbin/pwd");
symlink("busybox","/system/xbin/pwdx");
symlink("busybox","/system/xbin/rdev");
symlink("busybox","/system/xbin/readlink");
symlink("busybox","/system/xbin/realpath");
symlink("busybox","/system/xbin/reboot");
symlink("busybox","/system/xbin/renice");
symlink("busybox","/system/xbin/reset");
symlink("busybox","/system/xbin/resize");
symlink("busybox","/system/xbin/rev");
symlink("busybox","/system/xbin/rm");
symlink("busybox","/system/xbin/rmdir");
symlink("busybox","/system/xbin/rmmod");
symlink("busybox","/system/xbin/route");
symlink("busybox","/system/xbin/run-parts");
symlink("busybox","/system/xbin/rx");
symlink("busybox","/system/xbin/sed");
symlink("busybox","/system/xbin/seq");
symlink("busybox","/system/xbin/setconsole");
symlink("busybox","/system/xbin/setserial");
symlink("busybox","/system/xbin/setsid");
symlink("busybox","/system/xbin/sh");
symlink("busybox","/system/xbin/sha1sum");
symlink("busybox","/system/xbin/sha256sum");
symlink("busybox","/system/xbin/sha3sum");
symlink("busybox","/system/xbin/sha512sum");
symlink("busybox","/system/xbin/sleep");
symlink("busybox","/system/xbin/sort");
symlink("busybox","/system/xbin/split");
symlink("busybox","/system/xbin/stat");
symlink("busybox","/system/xbin/strings");
symlink("busybox","/system/xbin/stty");
symlink("busybox","/system/xbin/sum");
symlink("busybox","/system/xbin/swapoff");
symlink("busybox","/system/xbin/swapon");
symlink("busybox","/system/xbin/sync");
symlink("busybox","/system/xbin/sysctl");
symlink("busybox","/system/xbin/tac");
symlink("busybox","/system/xbin/tail");
symlink("busybox","/system/xbin/tar");
symlink("busybox","/system/xbin/taskset");
symlink("busybox","/system/xbin/tee");
symlink("busybox","/system/xbin/telnet");
symlink("busybox","/system/xbin/telnetd");
symlink("busybox","/system/xbin/test");
symlink("busybox","/system/xbin/tftp");
symlink("busybox","/system/xbin/tftpd");
symlink("busybox","/system/xbin/time");
symlink("busybox","/system/xbin/timeout");
symlink("busybox","/system/xbin/top");
symlink("busybox","/system/xbin/touch");
symlink("busybox","/system/xbin/tr");
symlink("busybox","/system/xbin/traceroute");
symlink("busybox","/system/xbin/true");
symlink("busybox","/system/xbin/ttysize");
symlink("busybox","/system/xbin/tune2fs");
symlink("busybox","/system/xbin/umount");
symlink("busybox","/system/xbin/uname");
symlink("busybox","/system/xbin/uncompress");
symlink("busybox","/system/xbin/unexpand");
symlink("busybox","/system/xbin/uniq");
symlink("busybox","/system/xbin/unix2dos");
symlink("busybox","/system/xbin/unlzma");
symlink("busybox","/system/xbin/unlzop");
symlink("busybox","/system/xbin/unxz");
symlink("busybox","/system/xbin/unzip");
symlink("busybox","/system/xbin/uptime");
symlink("busybox","/system/xbin/usleep");
symlink("busybox","/system/xbin/uudecode");
symlink("busybox","/system/xbin/uuencode");
symlink("busybox","/system/xbin/vi");
symlink("busybox","/system/xbin/watch");
symlink("busybox","/system/xbin/wc");
symlink("busybox","/system/xbin/wget");
symlink("busybox","/system/xbin/whoami");
symlink("busybox","/system/xbin/xargs");
symlink("busybox","/system/xbin/xz");
symlink("busybox","/system/xbin/xzcat");
symlink("busybox","/system/xbin/yes");
symlink("busybox","/system/xbin/zcat");
symlink("mksh","/system/bin/sh");
symlink("toolbox","/system/bin/cat");
symlink("toolbox","/system/bin/chmod");
symlink("toolbox","/system/bin/chown");
symlink("toolbox","/system/bin/cmp");
symlink("toolbox","/system/bin/cp");
symlink("toolbox","/system/bin/date");
symlink("toolbox","/system/bin/dd");
symlink("toolbox","/system/bin/df");
symlink("toolbox","/system/bin/dmesg");
symlink("toolbox","/system/bin/du");
symlink("toolbox","/system/bin/getevent");
symlink("toolbox","/system/bin/getprop");
symlink("toolbox","/system/bin/grep");
symlink("toolbox","/system/bin/hd");
symlink("toolbox","/system/bin/id");
symlink("toolbox","/system/bin/ifconfig");
symlink("toolbox","/system/bin/iftop");
symlink("toolbox","/system/bin/insmod");
symlink("toolbox","/system/bin/ioctl");
symlink("toolbox","/system/bin/ionice");
symlink("toolbox","/system/bin/kill");
symlink("toolbox","/system/bin/ln");
symlink("toolbox","/system/bin/log");
symlink("toolbox","/system/bin/ls");
symlink("toolbox","/system/bin/lsmod");
symlink("toolbox","/system/bin/lsof");
symlink("toolbox","/system/bin/md5");
symlink("toolbox","/system/bin/mkdir");
symlink("toolbox","/system/bin/mount");
symlink("toolbox","/system/bin/mv");
symlink("toolbox","/system/bin/nandread");
symlink("toolbox","/system/bin/netstat");
symlink("toolbox","/system/bin/newfs_msdos");
symlink("toolbox","/system/bin/notify");
symlink("toolbox","/system/bin/printenv");
symlink("toolbox","/system/bin/ps");
symlink("toolbox","/system/bin/reboot");
symlink("toolbox","/system/bin/renice");
symlink("toolbox","/system/bin/rm");
symlink("toolbox","/system/bin/rmdir");
symlink("toolbox","/system/bin/rmmod");
symlink("toolbox","/system/bin/route");
symlink("toolbox","/system/bin/schedtop");
symlink("toolbox","/system/bin/sendevent");
symlink("toolbox","/system/bin/setconsole");
symlink("toolbox","/system/bin/setprop");
symlink("toolbox","/system/bin/sleep");
symlink("toolbox","/system/bin/smd");
symlink("toolbox","/system/bin/start");
symlink("toolbox","/system/bin/stop");
symlink("toolbox","/system/bin/sync");
symlink("toolbox","/system/bin/top");
symlink("toolbox","/system/bin/touch");
symlink("toolbox","/system/bin/umount");
symlink("toolbox","/system/bin/uptime");
symlink("toolbox","/system/bin/vmstat");
symlink("toolbox","/system/bin/watchprops");
symlink("toolbox","/system/bin/wipe");
## diretory permissions
set_perm_recursive(0,0,0755,0644,"/system");
set_perm_recursive(0,0,0711,0644,"/system/bin/.ext");
set_perm_recursive(0,2000,0755,0755,"/system/bin");
set_perm_recursive(0,2000,0755,0644,"/system/vendor");
set_perm_recursive(0,2000,0755,0644,"/system/vendor/lib");
set_perm_recursive(0,2000,0755,0644,"/system/vendor/lib/drm");
set_perm_recursive(0,2000,0755,0755,"/system/xbin");
## file permissions
set_perm(0,0,0544,"/system/etc/install-recovery.sh");
set_perm(0,0,0555,"/system/etc/ppp/ip-up");
set_perm(0,0,0555,"/system/etc/ppp/ip-up-vpn");
set_perm(0,0,0555,"/system/etc/ppp/peers/mcli-cdma");
set_perm(0,0,0555,"/system/etc/ppp/peers/mcli-gsm");
set_perm(0,0,0644,"/system/vendor/lib/drm/libdrmwvmplugin.so");
set_perm(0,0,0644,"/system/vendor/lib/libWVStreamControlAPI_L3.so");
set_perm(0,0,0644,"/system/vendor/lib/libwvdrm_L3.so");
set_perm(0,0,0644,"/system/vendor/lib/libwvm.so");
set_perm(0,0,06755,"/system/bin/.ext/.su");
set_perm(0,0,06755,"/system/xbin/su");
set_perm(0,2000,0550,"/system/etc/init.goldfish.sh");
set_perm(0,2000,06750,"/system/bin/run-as");
set_perm(0,3003,02750,"/system/bin/netcfg");
set_perm(0,3004,02755,"/system/bin/ping");
set_perm(1002,1002,0440,"/system/etc/dbus.conf");
set_perm(1014,2000,0550,"/system/etc/dhcpcd/dhcpcd-run-hooks");