MobiCore Daemon in Android
---
Command line
--
The MobiCore Daemon supports 4 command line options. It also displays them with the help option:

# ./mcDriverDaemon -h
usage: ./mcDriverDaemon [-mdsbh]
Start MobiCore Daemon

-h              show this help
-b              fork to background
-m IMAGE        load mobicore from IMAGE to DDR
-s              disable daemon scheduler(default enabled)
-r DRIVER       load dyamic driver

-b Forks the daemon to background

# ./mcDriverDaemon -b

Makes the daemon run in background and returns immediate control to the shell. No need to use shell forking with &

-m Loads a mobicore image to DDR

# ./mcDriverDaemon -m /data/app/mobicore.img

Loads the mobicore.img to DDR and starts executing it.

-s Disables NQ IRQ scheduler

# ./mcDriverDaemon -s

-r Loads dynamic driver at startup. The full path of the driver binary must be given, eg. /data/app/driver.drbin

# ./mcDriverDaemon -r /data/app/driver.drbin

Custom registry locations
--
Registry fallback

In case of a Device wipe in Android the /data/app/mcRegistry folder will be deleted with all it's contents. To overcome
this the daemon supports a fallback location(eg /system/app/mcRegistry): it first tries to load the trustlet
from /data/app/mcRegistry/[uuid].tlbin and if it fails then it tries to read the trustlet from /system/app/mcRegistry/[uuid].tlb

Both paths are completely configurable for the Daemon using 2 environment variables:MC_REGISTRY_PATH and MC_REGISTRY_FALLBACK_PATH

For example if you want to use /data/app/mcRegistry as the default path and /system/app/mcRegistry as the fallback path:

$ export MC_REGISTRY_PATH=/data/app/mcRegistry
$ export MC_REGISTRY_FALLBACK_PATH=/system/app/mcRegistry
$ /data/app/mcDriverDaemon

Custom authtoken path
--

The authtoken file is created at provisioning and is by default located in /data/app/mcRegistry/00000.authtoken

Because a device wipe could delete this file and make MobiCore unusable a new environment variable has been added to change the
default behaviour: MC_AUTH_TOKEN_PATH

$ export MC_AUTH_TOKEN_PATH=/efs
$ /data/app/mcDriverDaemon

This would change the location of the authtoken file to /efs
