Ndas

From HyperSecurity Wiki
Jump to: navigation, search

READ FIRST: https://github.com/iocellnetworks/ndas4linux/wiki/How-to-export-NDAS-source-for-different-architectures

ALSO READ: https://github.com/iocellnetworks/ndas4linux/wiki

More build Notes: http://freetz.org/wiki/packages/ndas

To compile souce code from root dir:

Config file can be found here:

arch/targets/linux64.mk

Make command example with no RAID:

make linux64

Make command example with RAID support:

make linux64-raid-dev

Must be built in the following order:

  1. make linux64
  2. make linux64-raid-dev

DPKG Build:

tar zxvf ndas-3.9.0.x86_64.dbg.tar.gz
cd ndas-3.9.0.x86_64.dbg
dpkg-buildpackage -rfakeroot
cd .

DPKG Installation:

dpkg -i ndasadmin_1.1-24_amd64.deb

RPM Build:

Once compiled, cd into dist/ and run the following command to build RPM.

rpmbuild -tb ndas-3.9.0.x86_64.tar.gz

RPM files will be found here:

cd ~/rpmbuild/RPMS/x86_64

RPM installation:

rpm -Uvh ndas-kernel-3.9.0.x86_64-fc18.x86_64.rpm ndas-admin-3.9.0.x86_64-fc18.x86_64.rpm


Full build arguments

X_64 linux

linux64:

       make nxp-cpu=x86_64 nxp-os=linux nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n all

linux64-rel:

       make nxp-cpu=x86_64 nxp-os=linux nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n nxpo-release=y all

linux64-automated:

       make nxp-cpu=x86_64 nxp-os=linux nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n nxpo-release=y nxpo-automated=y all-automated


Without NDAS raid

linux64-dev:

make nxp-cpu=x86_64 nxp-os=linux nxpo-sio=y nxpo-hix=y nxpo-uni=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n nxpo-debug=y nxpo-probe=y nxpo-serial2id=y EXPORT_LOCAL=y all

linux64-devall:

NDAS_DEBUG=y make nxp-cpu=x86_64 nxp-os=linux nxpo-sio=y nxpo-hix=y nxpo-uni=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n nxpo-debug=y nxpo-probe=y nxpo-serial2id=y EXPORT_LOCAL=y complete

linux64-emu-rel:

make nxp-cpu=x86_64 nxp-os=linux nxpo-emu=y nxpo-sio=n nxpo-hix=n nxpo-asy=y nxpo-persist=n nxpo-pnp=n nxpo-bpc=y nxpo-raid=n nxpo-release=y nxpo-automated=y nxpo-debug=n nxpo-nolanscsi=y emu

linux64-emu-debug:

 NDAS_DEBUG=y make nxp-cpu=x86_64 nxp-os=linux nxpo-emu=y nxpo-sio=n nxpo-hix=n nxpo-asy=y nxpo-persist=n nxpo-pnp=n nxpo-bpc=y nxpo-raid=n nxpo-release=n nxpo-automated=y nxpo-debug=y nxpo-nolanscsi=y emu

With NDAS raid

linux64-raid-dev:

       make nxp-cpu=x86_64 EXPORT_LOCAL=y nxpo-debug=y nxp-os=linux nxpo-sio=y nxpo-hix=y nxpo-uni=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=y all

linux64-clean:

       make nxp-cpu=x86_64 nxp-os=linux clean

X86 Linux

       make nxp-os=linux nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n all

Linux with xixfs support

linux-xix:

       make nxp-os=linux nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n nxpo-xixfsevent=y all

NDAS Raid is default

linux-automated:

       make nxp-os=linux nxpo-release=y nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y XPLAT_OBFUSCATE=y nxpo-bpc=y nxpo-raid=n nxpo-automated=y all-automated

linux-emu-rel:

       make nxp-os=linux nxpo-release=y nxpo-debug=n nxpo-sio=n nxpo-hix=n nxpo-asy=y nxpo-persist=n nxpo-pnp=n nxpo-bpc=y nxpo-raid=n nxpo-automated=y nxpo-emu=y nxpo-nolanscsi=y complete

linux-emu-embed:

       make nxp-os=linux nxpo-release=y nxpo-debug=n nxpo-sio=n nxpo-hix=n nxpo-asy=y nxpo-persist=n nxpo-pnp=n nxpo-bpc=y nxpo-raid=n nxpo-automated=y nxpo-emu=y nxpo-nolanscsi=y nxpo-embedded=y all-automated

linux-emu-debug:

       NDAS_DEBUG=y make nxp-os=linux nxpo-release=n nxpo-debug=y nxpo-sio=n nxpo-hix=n nxpo-asy=y nxpo-persist=n nxpo-pnp=n nxpo-bpc=y nxpo-raid=n nxpo-automated=y nxpo-emu=y nxpo-nolanscsi=y complete

linux-rel:

       make nxp-os=linux nxpo-release=y nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y XPLAT_OBFUSCATE=y nxpo-bpc=y nxpo-raid=n all

linux-rel-s:

       make -s nxp-os=linux nxpo-release=y nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y XPLAT_OBFUSCATE=y nxpo-bpc=y nxpo-raid=n all

linux-rel-pogo:

       make nxp-cpu=arm nxp-os=linux nxpo-release=y nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n all

linux-rel-noob:

       make nxp-os=linux nxpo-release=y nxpo-uni=y nxpo-sio=y nxpo-hix=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n all


Linux Driver

Without NDAS raid

linux-raid-dev:

       make EXPORT_LOCAL=y nxpo-debug=y nxp-os=linux nxpo-sio=y nxpo-hix=y nxpo-uni=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=y nxpo-probe=y all

With NDAS raid

linux-dev:

       make EXPORT_LOCAL=y nxpo-debug=y nxp-os=linux nxpo-sio=y nxpo-hix=y nxpo-uni=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n nxpo-probe=y all

linux-devall:

       NDAS_DEBUG=y make EXPORT_LOCAL=y nxpo-debug=y nxp-os=linux nxpo-sio=y nxpo-hix=y nxpo-uni=y nxpo-asy=y nxpo-persist=y nxpo-pnp=y nxpo-bpc=y nxpo-raid=n nxpo-probe=y nxpo-emu=y complete

linux-clean:

       make nxp-os=linux clean


ndasadmin Commands

Register a device:

ndasadmin register 8Y7EG-N89JU-RRVRS-XXXXX-XXXXX -n {name}

Please find the slot # by:

cat /proc/ndas/devices/{name}/slots

Then execute the following command to enable the slot

For read-only mode:

ndasadmin enable -s <slot#> -o r

For exclusive-write mode:

ndasadmin enable -s <slot#> -o w

For GFS mode:

ndasadmin enable -s <slot#> -o s