diff --git a/iopsys-brcm63xx-arm/base-files/etc/board-db/boards/NVG578_LX_HX b/iopsys-brcm63xx-arm/base-files/etc/board-db/boards/NVG578_LX_HX
new file mode 100644
index 0000000000000000000000000000000000000000..c8b34d342a23ece43914aa3683cfb44ba364babc
--- /dev/null
+++ b/iopsys-brcm63xx-arm/base-files/etc/board-db/boards/NVG578_LX_HX
@@ -0,0 +1,224 @@
+
+config board 'board'
+	# Spec
+	option hasAdsl '0'
+	option hasVdsl '0'
+	option hasEthWan '1'
+	option hasVoice '1'
+	option hasDect '0'
+	option hasUsb '1'
+	option hasWifi '1'
+	option hasSfp '1'
+	option hasCatv '0'
+	# Voice
+	option VoicePorts '2'
+	option VoicePortNames 'Tel_2 Tel_1'
+	option VoicePortOrder 'brcm0 brcm1'
+	# SFP
+	option sfpBus '/dev/i2c-0'
+	# Ethernet
+	option ethernetWanPort 'eth3'
+	option ethernetPortNames 'LAN1 LAN2 LAN3 LAN4'
+	option ethernetPortOrder 'eth0 eth1 eth2 eth3'
+	option ethernetLanPorts  'eth0 eth1 eth2'
+
+
+###############################################################################
+#		Button config, start
+############### gpio buttons, driver config
+
+config gpio_button gpio_buttons
+	list buttons gpio_reset
+	list buttons gpio_wps
+
+config gpio_button gpio_reset
+	option addr 82
+	option active low
+
+config gpio_button gpio_wps
+	option addr 36
+	option active low
+
+############### mapping function button to driver button
+config button RESET
+	list button gpio_reset
+	option minpress 0
+	option minpress_indicator 0
+	option longpress 3000
+	option longpress_indicator 1
+	option hotplug softresetbutton
+	option hotplug_long resetbutton
+
+config button WPS
+	list button gpio_wps
+	option minpress 0
+	option minpress_indicator 0
+	option longpress 3000
+	option longpress_indicator 0
+	option hotplug wpsbutton
+	option hotplug_long wifibutton
+
+###############################################################################
+#		Led config, start
+#
+
+config gpio_led gpio_leds
+	list leds green_lan1
+	list leds green_lan2
+	list leds green_lan3
+	list leds green_lan4
+	list leds green_status
+	list leds green_wan
+	list leds red_wan
+	list leds green_internet
+	list leds red_internet
+	list leds green_wifi
+	list leds red_wifi
+	list leds green_voip
+	list leds red_voip
+
+config gpio_led green_lan1
+	option active		high
+	option sysfs_attr	green:lan1
+	option mode		led_linux
+
+config gpio_led green_lan2
+	option active		high
+	option sysfs_attr	green:lan2
+	option mode		led_linux
+
+config gpio_led green_lan3
+	option active		high
+	option sysfs_attr	green:lan3
+	option mode		led_linux
+
+config gpio_led green_lan4
+	option active		high
+	option sysfs_attr	green:lan4
+	option mode		led_linux
+
+config gpio_led green_status
+	option active		high
+	option sysfs_attr	green:status
+	option mode		led_linux
+
+# controlled by kernel
+config gpio_led green_wan
+	option active		high
+	option sysfs_attr	green:wan
+	option mode		led_linux
+
+config gpio_led red_wan
+	option active		high
+	option sysfs_attr	red:wan
+	option mode		led_linux
+
+config gpio_led green_internet
+	option active		high
+	option sysfs_attr	green:internet
+	option mode		led_linux
+
+config gpio_led red_internet
+	option active		high
+	option sysfs_attr	red:internet
+	option mode		led_linux
+
+config gpio_led green_wifi
+	option active		high
+	option sysfs_attr	green:wlan
+	option mode		led_linux
+
+config gpio_led red_wifi
+	option active		high
+	option sysfs_attr	red:wlan
+	option mode		led_linux
+
+config gpio_led green_voip
+	option active		high
+	option sysfs_attr	green:voip
+	option mode		led_linux
+
+config gpio_led red_voip
+	option active		high
+	option sysfs_attr	red:voip
+	option mode		led_linux
+
+
+config led_map led_map
+	list functions status
+	list functions internet
+	list functions voice
+	list functions wifi
+	list functions wan
+
+
+# Need to decide whether to have this LED controlled by kernel or by peripheral manager
+# right now we use eth-wan, but gpon link controls this led as well
+config led_map led_wan
+	list led_action_ok		'green_wan = ON'
+	list led_action_ok              'red_wan = OFF'
+
+	list led_action_notice		'green_wan = FLASH_SLOW'
+	list led_action_notice		'red_wan = OFF'
+
+	list led_action_error		'green_wan = OFF'
+	list led_action_error		'red_wan = ON'
+
+	list led_action_off		'green_wan = OFF'
+	list led_action_off             'red_wan = OFF'
+
+config led_map led_internet
+	list led_action_ok		'green_internet = ON'
+	list led_action_ok              'red_internet = OFF'
+
+	list led_action_notice		'green_internet = FLASH_SLOW'
+	list led_action_notice		'red_internet = OFF'
+
+	list led_action_error		'green_internet = OFF'
+	list led_action_error		'red_internet = ON'
+
+	list led_action_off		'green_internet = OFF'
+	list led_action_off             'red_internet = OFF'
+
+
+config led_map led_status
+	list led_action_ok	'green_status = ON'
+	list led_action_off	'green_status = OFF'
+	list led_action_notice	'green_status = FLASH_SLOW'
+	list led_action_alert	'green_status = FLASH_FAST'
+	list led_action_error	'green_status = FLASH_FAST'
+
+config led_map led_wifi
+	list led_action_ok     'green_wifi = ON'
+	list led_action_ok     'red_wifi   = OFF'
+
+	list led_action_off    'green_wifi = OFF'
+	list led_action_off    'red_wifi   = OFF'
+
+	list led_action_notice 'green_wifi = FLASH_SLOW'
+	list led_action_notice 'red_wifi   = OFF'
+
+	list led_action_alert  'green_wifi = FLASH_FAST'
+	list led_action_alert  'red_wifi   = OFF'
+
+	list led_action_error  'green_wifi = OFF'
+	list led_action_error  'red_wifi   = ON'
+
+	list led_action_eok	'green_wifi = OFF'
+	list led_action_eok	'red_wifi   = ON'
+
+config led_map led_voice
+	list led_action_ok		'green_voip = ON'
+	list led_action_ok		'red_voip = OFF'
+
+	list led_action_notice		'green_voip = FLASH_SLOW'
+	list led_action_notice		'red_voip = OFF'
+
+	list led_action_alert		'green_voip = OFF'
+	list led_action_alert		'red_voip = FLASH_FAST'
+
+	list led_action_error		'green_voip = OFF'
+	list led_action_error		'red_voip = ON'
+
+	list led_action_off		'green_voip = OFF'
+	list led_action_off		'red_voip = OFF'
diff --git a/iopsys-brcm63xx-arm/config/nvg578/config b/iopsys-brcm63xx-arm/config/nvg578/config
new file mode 100644
index 0000000000000000000000000000000000000000..eb5e053a73944be3e976052b982d312de08b5c8e
--- /dev/null
+++ b/iopsys-brcm63xx-arm/config/nvg578/config
@@ -0,0 +1,11 @@
+CONFIG_TARGET_FAMILY="NVG578"
+CONFIG_BCM_KERNEL_PROFILE="96856GWO_WL21D2GA"
+CONFIG_BCM_CHIP_ID="6856"
+
+CONFIG_BCM_FIRMWARE_TYPE_NAND_SQUASHFS=y
+CONFIG_BCM_VOICE=y
+# CONFIG_BCM_DSL is not set
+# CONFIG_PACKAGE_libdsl is not set
+# CONFIG_PACKAGE_dslmngr is not set
+# CONFIG_PACKAGE_mwan3 is not set
+CONFIG_BCM_FLASH_LAYOUT_OPTIONS="options_6856_nand"
diff --git a/iopsys-brcm63xx-arm/nvg578/base-files/etc/config/buttons b/iopsys-brcm63xx-arm/nvg578/base-files/etc/config/buttons
new file mode 100644
index 0000000000000000000000000000000000000000..7f49cb212b367977f0e8d44cbdc33ff8c4fbadac
--- /dev/null
+++ b/iopsys-brcm63xx-arm/nvg578/base-files/etc/config/buttons
@@ -0,0 +1,5 @@
+
+config button WPS
+	list button gpio_wps
+	option hotplug wpsbutton
+	option enable 1
diff --git a/iopsys-brcm63xx-arm/nvg578/base-files/etc/hotplug.d/button/20-softresetbutton b/iopsys-brcm63xx-arm/nvg578/base-files/etc/hotplug.d/button/20-softresetbutton
new file mode 100644
index 0000000000000000000000000000000000000000..3aa70b276921fb45d23ce09b50147b93c5d519b0
--- /dev/null
+++ b/iopsys-brcm63xx-arm/nvg578/base-files/etc/hotplug.d/button/20-softresetbutton
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+case "$ACTION" in
+        add|register)
+        [ "softresetbutton" == "$INTERFACE" ] && {
+                printf "\n\nSoft reset button is pressed\n\n" > /dev/console
+                reboot
+        }
+        ;;
+        remove|unregister)
+        ;;
+esac
diff --git a/iopsys-brcm63xx-arm/nvg578/base-files/etc/init.d/wifi_power_gpio b/iopsys-brcm63xx-arm/nvg578/base-files/etc/init.d/wifi_power_gpio
new file mode 100755
index 0000000000000000000000000000000000000000..47f017463cf87aa4275109a29244f3723ab680aa
--- /dev/null
+++ b/iopsys-brcm63xx-arm/nvg578/base-files/etc/init.d/wifi_power_gpio
@@ -0,0 +1,23 @@
+#!/bin/sh /etc/rc.common
+#
+# Power up WiFi before WiFi drivers and PCIe are initialised
+
+
+START=05
+
+boot() {
+	# XXX: Are the sleeps really needed? Could we use gpio-hog in device tree instead?
+	echo "Powering up WiFi..." > /dev/kmsg
+	echo "0" > /sys/class/gpio/export
+	echo "out" > /sys/class/gpio/gpio0/direction
+	echo "1" > /sys/class/gpio/gpio0/value
+	sleep 1
+	echo "13" > /sys/class/gpio/export
+	echo "out" > /sys/class/gpio/gpio13/direction
+	echo "1" > /sys/class/gpio/gpio13/value
+	sleep 1
+	echo "11" > /sys/class/gpio/export
+	echo "out" > /sys/class/gpio/gpio11/direction
+	echo "1" > /sys/class/gpio/gpio11/value
+	sleep 1
+}
diff --git a/iopsys-brcm63xx-arm/nvg578/base-files/etc/wlan/nvram/NVG578_LX_HX.nvm b/iopsys-brcm63xx-arm/nvg578/base-files/etc/wlan/nvram/NVG578_LX_HX.nvm
new file mode 100644
index 0000000000000000000000000000000000000000..5aabd1704dfd11c1dc267d59bc8b807e21c305d1
--- /dev/null
+++ b/iopsys-brcm63xx-arm/nvg578/base-files/etc/wlan/nvram/NVG578_LX_HX.nvm
@@ -0,0 +1,568 @@
+hapd_enable=1
+acs_version=2
+ceventd_enable=1
+ceventd_out=/tmp/ce0.log
+wl_cevent=1
+ceventd_eventmask=0x1000000000010000000000000000000000410002831fff
+mbo_enable=1
+et0macaddr=00:10:18:00:00:00
+1:devpath1=sb/1/
+1:devpath2=sb/1/
+2:devpath3=sb/1/
+devpath1=pcie/0/1/
+devpath2=pcie/1/1/
+devpath3=pcie/2/1/
+1:boardflags=0x10001000
+1:boardflags2=0x4
+1:boardflags3=0x0
+1:boardflags4=0x00020008
+1:sromrev=18
+1:boardtype=0x0850
+1:boardrev=0x1295
+1:subvid=0x14e4
+1:vendid=0x14e4
+1:boardnum=0003
+1:devid=0x442b
+1:macaddr=00:90:4c:2c:20:77
+1:ccode=US
+1:regrev=0
+1:aa2g=0xf
+1:aa5g=0xf
+1:agbg0=0x43
+1:agbg1=0x43
+1:agbg2=0x43
+1:agbg3=0x43
+1:aga0=0x43
+1:aga1=0x43
+1:aga2=0x43
+1:aga3=0x43
+1:txchain=0xf
+1:rxchain=0xf
+1:tssiposslope2g=1
+1:epagain2g=0
+1:pdgain2g=6
+1:tworangetssi2g=0
+1:papdcap2g=0
+1:tssiposslope5g=1
+1:epagain5g=0
+1:pdgain5g=6
+1:femctrl=2
+1:tworangetssi5g=0
+1:papdcap5g=0
+1:tempthresh=110
+1:tempoffset=255
+1:rawtempsense=0x1ff
+1:tempsense_slope=0xff
+1:tempcorrx=0x3f
+1:tempsense_option=0x3
+1:xtalfreq=54000
+1:phycal_tempdelta=40
+1:temps_period=10
+1:temps_hysteresis=5
+1:measpower=0
+1:measpower1=0
+1:measpower2=0
+1:pdoffsetcck=0
+1:pdoffsetcck20m=0
+1:pdoffset20in40m2g=0
+1:pdoffset20in40m2gcore3=0
+1:pdoffset20in40m5gb0=0x737B
+1:pdoffset20in40m5gb1=0x6F7B
+1:pdoffset20in40m5gb2=0x6B9B
+1:pdoffset20in40m5gb3=0x6F7B
+1:pdoffset20in40m5gb4=0x6F7B
+1:pdoffset40in80m5gb0=0x0441
+1:pdoffset40in80m5gb1=0x0441
+1:pdoffset40in80m5gb2=0x0421
+1:pdoffset40in80m5gb3=0x0441
+1:pdoffset40in80m5gb4=0x0441
+1:pdoffset20in80m5gb0=0x779C
+1:pdoffset20in80m5gb1=0x739C
+1:pdoffset20in80m5gb2=0x739C
+1:pdoffset20in80m5gb3=0x739C
+1:pdoffset20in80m5gb4=0x739D
+1:pdoffset20in40m5gcore3=0x77BD
+1:pdoffset20in40m5gcore3_1=0x037B
+1:pdoffset40in80m5gcore3=0x0821
+1:pdoffset40in80m5gcore3_1=0x0021
+1:pdoffset20in80m5gcore3=0x77BD
+1:pdoffset20in80m5gcore3_1=0x039C
+1:pdoffset20in160m5gc0=0x677A
+1:pdoffset20in160m5gc1=0x677A
+1:pdoffset20in160m5gc2=0x6759
+1:pdoffset20in160m5gc3=0x6759
+1:pdoffset40in160m5gc0=0x0021
+1:pdoffset40in160m5gc1=0x0021
+1:pdoffset40in160m5gc2=0x001F
+1:pdoffset40in160m5gc3=0x001F
+1:pdoffset80in160m5gc0=0x7FFF
+1:pdoffset80in160m5gc1=0x7FFF
+1:pdoffset80in160m5gc2=0x7FFD
+1:pdoffset80in160m5gc3=0x7FFD
+1:pdoffset20in160m5gcore3=0x035A
+1:pdoffset20in160m5gcore3_1=0x037B
+1:pdoffset40in160m5gcore3=0x0000
+1:pdoffset40in160m5gcore3_1=0x0000
+1:pdoffset80in160m5gcore3=0x03BD
+1:pdoffset80in160m5gcore3_1=0x03FF
+1:subband5gver=0x5
+1:cckbw202gpo=0x0000
+1:cckbw20ul2gpo=0x0000
+1:mcsbw202gpo=0x75431000
+1:mcsbw402gpo=0x75432000
+1:dot11agofdmhrbw202gpo=0x0000
+1:ofdmlrbw202gpo=0x0000
+1:mcsbw205glpo=0xECA86420
+1:mcsbw405glpo=0xECA86432
+1:mcsbw805glpo=0xECA86432
+1:mcsbw1605glpo=0xEDCBA864
+1:mcsbw205gmpo=0xECA86420
+1:mcsbw405gmpo=0xECA86432
+1:mcsbw805gmpo=0xECA86432
+1:mcsbw1605gmpo=0xEDCBA864
+1:mcsbw205ghpo=0xECA86420
+1:mcsbw405ghpo=0xECA86432
+1:mcsbw805ghpo=0xECA86432
+1:mcsbw1605ghpo=0xEDCBA864
+1:mcsbw205gx1po=0xECA86420
+1:mcsbw405gx1po=0xECA86432
+1:mcsbw805gx1po=0xECA86432
+1:mcsbw1605gx1po=0xEDCBA864
+1:mcsbw205gx2po=0xECA86432
+1:mcsbw405gx2po=0xECA87654
+1:mcsbw805gx2po=0xECA87654
+1:mcsbw1605gx2po=0xEDCBA876
+1:mcs1024qam2gpo=0x9897
+1:mcs1024qam5glpo=0x0F0F0F0F
+1:mcs1024qam5gmpo=0x0F0F0F0F
+1:mcs1024qam5ghpo=0x0F0F0F0F
+1:mcs1024qam5gx1po=0x0F0F0F0F
+1:mcs1024qam5gx2po=0x0F0F0F0F
+1:mcs8poexp=0x00000000
+1:mcs9poexp=0x00000000
+1:mcs10poexp=0x00000000
+1:mcs11poexp=0xFEFEFEFE
+1:mcslr5glpo=0x0000
+1:mcslr5gmpo=0x0000
+1:mcslr5ghpo=0x0000
+1:mcslr5gx1po=0x0000
+1:mcslr5gx2po=0x0000
+1:dot11agduphrpo=0
+1:dot11agduplrpo=0
+1:dot11agduphrlrpox=0
+1:sb20in40hrpo=0
+1:sb20in40lrpo=0
+1:sb20in40hrlrpox=0
+1:sb40and80hr5glpo=0
+1:sb40and80hr5gmpo=0
+1:sb40and80hr5ghpo=0
+1:sb40and80hr5gx1po=0
+1:sb40and80hr5gx2po=0
+1:sb20in80and160hr5glpo=0
+1:sb20in80and160hr5gmpo=0
+1:sb20in80and160hr5ghpo=0
+1:sb20in80and160hr5gx1po=0
+1:sb20in80and160hr5gx2po=0
+1:sb40and80lr5glpo=0
+1:sb40and80lr5gmpo=0
+1:sb40and80lr5ghpo=0
+1:sb40and80lr5gx1po=0
+1:sb40and80lr5gx2po=0
+1:sb20in80and160lr5glpo=0
+1:sb20in80and160lr5gmpo=0
+1:sb20in80and160lr5ghpo=0
+1:sb20in80and160lr5gx1po=0
+1:sb20in80and160lr5gx2po=0
+1:noiselvl2ga0=31
+1:noiselvl2ga1=31
+1:noiselvl2ga2=31
+1:noiselvl2ga3=31
+1:noiselvl5ga0=31,31,31,31
+1:noiselvl5ga1=31,31,31,31
+1:noiselvl5ga2=31,31,31,31
+1:noiselvl5ga3=31,31,31,31
+1:rxgainerr2ga0=63
+1:rxgainerr2ga1=31
+1:rxgainerr2ga2=31
+1:rxgainerr2ga3=31
+1:rxgainerr5ga0=63,63,63,63
+1:rxgainerr5ga1=31,31,31,31
+1:rxgainerr5ga2=31,31,31,31
+1:rxgainerr5ga3=31,31,31,31
+1:rxgains5gmelnagaina0=4
+1:rxgains5gmelnagaina1=4
+1:rxgains5gmelnagaina2=4
+1:rxgains5gmelnagaina3=4
+1:rxgains5gmtrisoa0=8
+1:rxgains5gmtrisoa1=8
+1:rxgains5gmtrisoa2=8
+1:rxgains5gmtrisoa3=8
+1:rxgains5gmtrelnabypa0=1
+1:rxgains5gmtrelnabypa1=1
+1:rxgains5gmtrelnabypa2=1
+1:rxgains5gmtrelnabypa3=1
+1:rxgains5ghelnagaina0=4
+1:rxgains5ghelnagaina1=4
+1:rxgains5ghelnagaina2=4
+1:rxgains5ghelnagaina3=4
+1:rxgains5ghtrisoa0=8
+1:rxgains5ghtrisoa1=8
+1:rxgains5ghtrisoa2=8
+1:rxgains5ghtrisoa3=8
+1:rxgains5ghtrelnabypa0=1
+1:rxgains5ghtrelnabypa1=1
+1:rxgains5ghtrelnabypa2=1
+1:rxgains5ghtrelnabypa3=1
+1:rxgains2gelnagaina0=5
+1:rxgains2gelnagaina1=5
+1:rxgains2gelnagaina2=5
+1:rxgains2gelnagaina3=5
+1:rxgains2gtrisoa0=8
+1:rxgains2gtrisoa1=8
+1:rxgains2gtrisoa2=8
+1:rxgains2gtrisoa3=8
+1:rxgains2gtrelnabypa0=1
+1:rxgains2gtrelnabypa1=1
+1:rxgains2gtrelnabypa2=1
+1:rxgains2gtrelnabypa3=1
+1:rxgains5gelnagaina0=4
+1:rxgains5gelnagaina1=4
+1:rxgains5gelnagaina2=4
+1:rxgains5gelnagaina3=4
+1:rxgains5gtrisoa0=8
+1:rxgains5gtrisoa1=8
+1:rxgains5gtrisoa2=8
+1:rxgains5gtrisoa3=8
+1:rxgains5gtrelnabypa0=1
+1:rxgains5gtrelnabypa1=1
+1:rxgains5gtrelnabypa2=1
+1:rxgains5gtrelnabypa3=1
+1:maxp2ga0=104
+1:maxp5gb0a0=104
+1:maxp5gb1a0=104
+1:maxp5gb2a0=104
+1:maxp5gb3a0=104
+1:maxp5gb4a0=104
+1:maxp2ga1=104
+1:maxp5gb0a1=104
+1:maxp5gb1a1=104
+1:maxp5gb2a1=104
+1:maxp5gb3a1=104
+1:maxp5gb4a1=104
+1:maxp2ga2=104
+1:maxp5gb0a2=104
+1:maxp5gb1a2=104
+1:maxp5gb2a2=104
+1:maxp5gb3a2=104
+1:maxp5gb4a2=104
+1:maxp2ga3=104
+1:maxp5gb0a3=104
+1:maxp5gb1a3=104
+1:maxp5gb2a3=104
+1:maxp5gb3a3=104
+1:maxp5gb4a3=104
+1:pa2ga0=0x2996,0xa5c7,0x0000,0x0000
+1:pa2g40a0=0x2874,0xb706,0xfbe5,0x4982
+1:pa2ga1=0x297e,0xa5de,0x0000,0x0000
+1:pa2g40a1=0x2660,0xc5c3,0xf2c0,0x0000
+1:pa2ga2=0x2703,0xb391,0xfac9,0x0000
+1:pa2g40a2=0x25c3,0xc76b,0xf237,0x0000
+1:pa2ga3=0x2a2d,0xa4df,0x0000,0x0000
+1:pa2g40a3=0x24fd,0xd1d5,0xed87,0x0000
+1:pa2gccka0=0x2996,0xa5c7,0x0000,0x0000
+1:pa2gccka1=0x297e,0xa5de,0x0000,0x0000
+1:pa2gccka2=0x2703,0xb391,0xfac9,0x0000
+1:pa2gccka3=0x2a2d,0xa4df,0x0000,0x0000
+1:ppr_backoff_2g=0x3
+1:ppr_backoff_5g=0x3
+1:low_adc_rate_en=1
+1:olpc_2g_th=8
+1:olpc_5g_th=10
+1:pa5ga0=0x29bc,0xa74f,0x0000,0x0000,0x294a,0xa8a3,0x0000,0x0000,0x2814,0xa9e7,0x0000,0x0000,0x27d4,0xa9be,0x0000,0x0000,0x27d0,0xa8a5,0x0000,0x0000
+1:pa5ga1=0x28dd,0xab3a,0x0000,0x0000,0x289c,0xab5e,0x0000,0x0001,0x2795,0xac94,0x0000,0x0000,0x26e5,0xafd3,0xfedf,0x0000,0x26a4,0xaf21,0xffb4,0x0000
+1:pa5ga2=0x2671,0xb337,0xfe95,0x0000,0x26e3,0xafc6,0x0000,0x0000,0x26e4,0xaf5c,0x0000,0x0000,0x2697,0xb062,0x0000,0x0000,0x2675,0xb0b5,0x0000,0x0000
+1:pa5ga3=0x281f,0xaa71,0x0000,0x0000,0x27e5,0xaab4,0x0000,0x0000,0x2704,0xad28,0x0000,0x0000,0x270c,0xad7a,0x0000,0x0000,0x26ec,0xadf8,0x0000,0x0000
+1:pa5g40a0=0x27f3,0xb5b2,0xfaf9,0x0000,0x26e6,0xbce5,0xf752,0x0000,0x26ec,0xb409,0xfc61,0x0000,0x2704,0xb0d0,0xfdb8,0x0000,0x2728,0xaec3,0xfe7a,0x0000
+1:pa5g40a1=0x2810,0xb467,0xfc2f,0x0000,0x2817,0xb140,0xfe8e,0x0d54,0x25ae,0xbc62,0xf9c9,0x0000,0x2597,0xba7b,0xfb07,0x0000,0x2579,0xb9ab,0xfba1,0x0000
+1:pa5g40a2=0x2530,0xbe0e,0xfb03,0x0bb0,0x256f,0xbc45,0xfb83,0x0982,0x264d,0xb5fe,0xfe35,0x0a90,0x2639,0xb56c,0xfeb9,0x0c78,0x25bf,0xb7c3,0xfe0b,0x0dd9
+1:pa5g40a3=0x272b,0xb42d,0xfc40,0x0000,0x2679,0xb75e,0xfb0b,0x0000,0x262e,0xb551,0xfd0f,0x0000,0x25f1,0xb720,0xfc7c,0x0000,0x2602,0xb64c,0xfd1c,0x0000
+1:pa5g80a0=0x2831,0xb666,0xfa7a,0x0111,0x2765,0xb986,0xf97d,0x0000,0x25c1,0xbe6c,0xf7e2,0x0000,0x25bb,0xbd4f,0xf83e,0x0000,0x261a,0xb96c,0xf998,0x0000
+1:pa5g80a1=0x27c0,0xb944,0xf9db,0x0000,0x27c6,0xb824,0xfa37,0x0000,0x256a,0xc1f1,0xf728,0x0000,0x2420,0xc743,0xf5da,0x0000,0x2412,0xc4c5,0xf732,0x0000
+1:pa5g80a2=0x2490,0xc4d5,0xf6e3,0x0000,0x2537,0xbee2,0xfa8c,0x0d12,0x2652,0xb843,0xfd4c,0x1081,0x25c1,0xbe25,0xf9f7,0x0000,0x257c,0xbc69,0xfba9,0x0add
+1:pa5g80a3=0x271a,0xb636,0xfb3a,0x0000,0x25f9,0xbd7e,0xf86f,0x0000,0x2503,0xbff7,0xf8a7,0x0000,0x24c3,0xc2fa,0xf7b5,0x024a,0x24d0,0xc147,0xf86a,0x0000
+1:pa5g160a0=0x263e,0xc714,0xf4e9,0x0fa2,0x263e,0xc714,0xf4e9,0x0fa2,0x232f,0xd5cd,0xee50,0x0004,0x232f,0xd5cd,0xee50,0x0004
+1:pa5g160a1=0x27c6,0xbed5,0xf797,0x0000,0x27c6,0xbed5,0xf797,0x0000,0x2344,0xd612,0xee91,0x0000,0x2344,0xd612,0xee91,0x0000
+1:pa5g160a2=0x22e5,0xd83c,0xeedd,0x0000,0x22e5,0xd83c,0xeedd,0x0000,0x24e8,0xc9c0,0xf516,0x079f,0x24e8,0xc9c0,0xf516,0x079f
+1:pa5g160a3=0x259c,0xc6d3,0xf4c5,0x0610,0x259c,0xc6d3,0xf4c5,0x0610,0x2217,0xda6c,0xed92,0x004b,0x2217,0xda6c,0xed92,0x004b
+1:rpcal2g=0
+1:rpcal5gb0=0
+1:rpcal5gb1=0
+1:rpcal5gb2=0
+1:rpcal5gb3=0
+1:rpcal5gb4=0
+1:rpcal5gb0core3=0
+1:rpcal5gb1core3=0
+1:rpcal5gb2core3=0
+1:rpcal5gb3core3=0
+1:rpcal5gb4core3=0
+1:swctrlmap4_cfg=0x1
+1:swctrlmap4_TX2g_fem3to0=0x3333
+1:swctrlmap4_RX2g_fem3to0=0x4444
+1:swctrlmap4_RXByp2g_fem3to0=0x6666
+1:swctrlmap4_misc2g_fem3to0=0x0
+1:swctrlmap4_TX5g_fem3to0=0x3333
+1:swctrlmap4_RX5g_fem3to0=0x4444
+1:swctrlmap4_RXByp5g_fem3to0=0x6666
+1:swctrlmap4_misc5g_fem3to0=0
+1:swctrlmap4_TX2g_fem7to4=0
+1:swctrlmap4_RX2g_fem7to4=0
+1:swctrlmap4_RXByp2g_fem7to4=0
+1:swctrlmap4_misc2g_fem7to4=0
+1:swctrlmap4_TX5g_fem7to4=0
+1:swctrlmap4_RX5g_fem7to4=0
+1:swctrlmap4_RXByp5g_fem7to4=0
+1:swctrlmap4_misc5g_fem7to4=0
+1:paprdis=1
+2:boardflags=0x00000000
+2:boardflags2=0xC0000004
+2:boardflags3=0x0
+2:boardflags4=0x0003000E
+2:sromrev=18
+2:boardtype=0x08C4
+2:boardrev=0x1208
+2:subvid=0x14e4
+2:vendid=0x14e4
+2:boardnum=0003
+2:devid=0x4494
+2:macaddr=00:90:4c:34:20:02
+2:ccode=US
+2:regrev=0
+2:aa2g=0x7
+2:aa5g=0x7
+2:agbg0=0x43
+2:agbg1=0x43
+2:agbg2=0x43
+2:aga0=0x43
+2:aga1=0x43
+2:aga2=0x43
+2:txchain=0x7
+2:rxchain=0x7
+2:epagain2g=2
+2:epagain5g=2
+2:tssiposslope2g=1
+2:pdgain2g=0
+2:tworangetssi2g=0
+2:papdcap2g=0
+2:tssiposslope5g=1
+2:pdgain5g=0
+2:femctrl=0
+2:tworangetssi5g=0
+2:papdcap5g=0
+2:tempthresh=110
+2:tempoffset=255
+2:rawtempsense=0x1ff
+2:tempsense_slope=0xff
+2:tempcorrx=0x3f
+2:tempsense_option=0x3
+2:xtalfreq=50000
+2:phycal_tempdelta=40
+2:temps_period=10
+2:temps_hysteresis=5
+2:measpower=0
+2:measpower1=0
+2:measpower2=0
+2:pdoffsetcck=0x0
+2:pdoffsetcck20m=0x0
+2:pdoffset20in40m2g=0x7FFF
+2:pdoffset20in40m5gb0=0x7FDE
+2:pdoffset20in40m5gb1=0x7FDF
+2:pdoffset20in40m5gb2=0x7FFF
+2:pdoffset20in40m5gb3=0x7BDF
+2:pdoffset20in40m5gb4=0x7BDE
+2:pdoffset40in80m5gb0=0x0443
+2:pdoffset40in80m5gb1=0x0C22
+2:pdoffset40in80m5gb2=0x0842
+2:pdoffset40in80m5gb3=0x0842
+2:pdoffset40in80m5gb4=0x0C63
+2:pdoffset20in80m5gb0=0x7FDF
+2:pdoffset20in80m5gb1=0x03C0
+2:pdoffset20in80m5gb2=0x03FF
+2:pdoffset20in80m5gb3=0x7FDF
+2:pdoffset20in80m5gb4=0x03FF
+2:subband5gver=0x5
+2:cckbw202gpo=0x0000
+2:cckbw20ul2gpo=0x0000
+2:mcsbw202gpo=0x87654320
+2:mcsbw402gpo=0x98765432
+2:dot11agofdmhrbw202gpo=0x5432
+2:ofdmlrbw202gpo=0x0010
+2:mcsbw205glpo=0xCBA98640
+2:mcsbw405glpo=0xEDCBA862
+2:mcsbw805glpo=0xEDCBA862
+2:mcsbw205gmpo=0xCBA98640
+2:mcsbw405gmpo=0xEDCBA862
+2:mcsbw805gmpo=0xEDCBA862
+2:mcsbw205ghpo=0xEDCA8640
+2:mcsbw405ghpo=0x0FECA862
+2:mcsbw805ghpo=0x0FECA862
+2:mcsbw205gx1po=0x0FECA862
+2:mcsbw405gx1po=0x10FECA84
+2:mcsbw805gx1po=0x10FECA84
+2:mcsbw205gx2po=0x0FECA862
+2:mcsbw405gx2po=0x10FECA84
+2:mcsbw805gx2po=0x10FECA84
+2:mcs1024qam2gpo=0xBAA9
+2:mcs1024qam5glpo=0xFF0F0FED
+2:mcs1024qam5gmpo=0xFF0F0FED
+2:mcs1024qam5ghpo=0xFF21210F
+2:mcs1024qam5gx1po=0xFF323221
+2:mcs1024qam5gx2po=0xFF323221
+2:mcs8poexp=0xFF303000
+2:mcs9poexp=0xFF383830
+2:mcs10poexp=0xFF383830
+2:mcs11poexp=0xFFFEFE38
+2:mcslr5glpo=0x0222
+2:mcslr5gmpo=0x0222
+2:mcslr5ghpo=0x0222
+2:mcslr5gx1po=0x0222
+2:mcslr5gx2po=0x0222
+2:dot11agduphrpo=0
+2:dot11agduplrpo=0
+2:dot11agduphrlrpox=0
+2:sb20in40hrpo=0
+2:sb20in40lrpo=0
+2:sb20in40hrlrpox=0
+2:sb40and80hr5glpo=0
+2:sb40and80hr5gmpo=0
+2:sb40and80hr5ghpo=0
+2:sb40and80hr5gx1po=0
+2:sb40and80hr5gx2po=0
+2:sb20in80and160hr5glpo=0
+2:sb20in80and160hr5gmpo=0
+2:sb20in80and160hr5ghpo=0
+2:sb20in80and160hr5gx1po=0
+2:sb20in80and160hr5gx2po=0
+2:sb40and80lr5glpo=0
+2:sb40and80lr5gmpo=0
+2:sb40and80lr5ghpo=0
+2:sb40and80lr5gx1po=0
+2:sb40and80lr5gx2po=0
+2:sb20in80and160lr5glpo=0
+2:sb20in80and160lr5gmpo=0
+2:sb20in80and160lr5ghpo=0
+2:sb20in80and160lr5gx1po=0
+2:sb20in80and160lr5gx2po=0
+2:noiselvl2ga0=31
+2:noiselvl2ga1=31
+2:noiselvl2ga2=31
+2:noiselvl5ga0=31,31,31,31
+2:noiselvl5ga1=31,31,31,31
+2:noiselvl5ga2=31,31,31,31
+2:rxgainerr2ga0=63
+2:rxgainerr2ga1=31
+2:rxgainerr2ga2=31
+2:rxgainerr5ga0=63,63,63,63
+2:rxgainerr5ga1=31,31,31,31
+2:rxgainerr5ga2=31,31,31,31
+2:rxgains2gelnagaina0=0
+2:rxgains2gelnagaina1=0
+2:rxgains2gelnagaina2=0
+2:rxgains2gtrisoa0=9
+2:rxgains2gtrisoa1=9
+2:rxgains2gtrisoa2=9
+2:rxgains2gtrelnabypa0=0
+2:rxgains2gtrelnabypa1=0
+2:rxgains2gtrelnabypa2=0
+2:rxgains5gmelnagaina0=0
+2:rxgains5gmelnagaina1=0
+2:rxgains5gmelnagaina2=0
+2:rxgains5gmtrisoa0=9
+2:rxgains5gmtrisoa1=9
+2:rxgains5gmtrisoa2=9
+2:rxgains5gmtrelnabypa0=0
+2:rxgains5gmtrelnabypa1=0
+2:rxgains5gmtrelnabypa2=0
+2:rxgains5ghelnagaina0=0
+2:rxgains5ghelnagaina1=0
+2:rxgains5ghelnagaina2=0
+2:rxgains5ghtrisoa0=9
+2:rxgains5ghtrisoa1=9
+2:rxgains5ghtrisoa2=9
+2:rxgains5ghtrelnabypa0=0
+2:rxgains5ghtrelnabypa1=0
+2:rxgains5ghtrelnabypa2=0
+2:rxgains5gelnagaina0=0
+2:rxgains5gelnagaina1=0
+2:rxgains5gelnagaina2=0
+2:rxgains5gtrisoa0=9
+2:rxgains5gtrisoa1=9
+2:rxgains5gtrisoa2=9
+2:rxgains5gtrelnabypa0=0
+2:rxgains5gtrelnabypa1=0
+2:rxgains5gtrelnabypa2=0
+2:maxp2ga0=0x54
+2:maxp5gb0a0=0x50
+2:maxp5gb1a0=0x50
+2:maxp5gb2a0=0x50
+2:maxp5gb3a0=0x50
+2:maxp5gb4a0=0x50
+2:maxp2ga1=0x54
+2:maxp5gb0a1=0x50
+2:maxp5gb1a1=0x50
+2:maxp5gb2a1=0x50
+2:maxp5gb3a1=0x50
+2:maxp5gb4a1=0x50
+2:maxp2ga2=0x54
+2:maxp5gb0a2=0x50
+2:maxp5gb1a2=0x50
+2:maxp5gb2a2=0x50
+2:maxp5gb3a2=0x50
+2:maxp5gb4a2=0x50
+2:pa2ga0=0x1914,0xaf30,0x02e2,0x1fb5
+2:pa2ga1=0x18c9,0xb735,0x041d,0x1f91
+2:pa2ga2=0x1950,0xaa1c,0x0000,0x7fff
+2:pa2g40a0=0x19b9,0xa906,0x0000,0x7fff
+2:pa2g40a1=0x196f,0xb2f1,0x0517,0x210b
+2:pa2g40a2=0x199a,0xa83c,0x0000,0x7fff
+2:pa2g20ccka0=0x1b45,0x9f8f,0x0000,0x7fff
+2:pa2g20ccka1=0x1b4e,0xa4b9,0x0001,0x7fff
+2:pa2g20ccka2=0x1b55,0xa01d,0x0000,0x7fff
+2:low_adc_rate_en=1
+2:ppr_backoff_2g=3
+2:ppr_backoff_5g=3
+2:olpc_2g_th=10
+2:olpc_5g_th=10
+2:pa5ga0=0x16c8,0xbf76,0x0a8a,0x2045,0x16cb,0xbed7,0x08f6,0x1f90,0x16bb,0xbe48,0x08f7,0x1fc5,0x1696,0xbc98,0x07d0,0x1fa2,0x1698,0xbe61,0x09f1,0x2044
+2:pa5ga1=0x1659,0xbd40,0x0a09,0x20c2,0x1645,0xbba6,0x0717,0x1f92,0x1605,0xbbb5,0x076a,0x1f91,0x15f5,0xb8c9,0x0538,0x1f90,0x1632,0xb91d,0x05df,0x1f92
+2:pa5ga2=0x171b,0xbf3f,0x097a,0x1fb6,0x16cd,0xc442,0x0e30,0x210e,0x16e1,0xc270,0x0cb6,0x20bd,0x16a8,0xc160,0x0a28,0x1f91,0x1700,0xbeb0,0x0913,0x1f91
+2:pa5g40a0=0x1823,0xb818,0x097e,0x2023,0x1848,0xb786,0x0993,0x2060,0x17fb,0xb641,0x07d7,0x1f90,0x17e3,0xb735,0x09e3,0x20a5,0x181b,0xb61e,0x09a0,0x20ba
+2:pa5g40a1=0x1814,0xb164,0x04d1,0x1f90,0x17ef,0xb24c,0x06e4,0x215d,0x1789,0xb080,0x05ec,0x22e8,0x172a,0xb3f0,0x0711,0x2083,0x1760,0xb534,0x0aa0,0x22c8
+2:pa5g40a2=0x1898,0xb6e1,0x0950,0x2021,0x1842,0xba7c,0x0a0e,0x2014,0x17f4,0xba9a,0x0928,0x1f94,0x17cd,0xbb6a,0x0b0a,0x2075,0x1869,0xb719,0x08bd,0x1fce
+2:pa5g80a0=0x17a2,0xbb10,0x0c80,0x2104,0x17cb,0xb8d6,0x095a,0x2039,0x1796,0xb7a4,0x08d2,0x2013,0x1769,0xb805,0x083a,0x1fad,0x1768,0xb989,0x09f1,0x2037
+2:pa5g80a1=0x1763,0xb737,0x08cf,0x1ffd,0x173d,0xb636,0x06b7,0x1f96,0x16f3,0xb388,0x05c7,0x207a,0x16c6,0xb41e,0x0559,0x1f90,0x16c5,0xb6f5,0x0806,0x1feb
+2:pa5g80a2=0x1817,0xb83e,0x0837,0x1f91,0x17a5,0xbe0b,0x0b64,0x201f,0x1795,0xbc10,0x0a3c,0x1fe2,0x1769,0xbc79,0x09e5,0x1fb1,0x17dd,0xb98d,0x0a5a,0x20a4
+2:rpcal2g=0
+2:rpcal5gb0=0
+2:rpcal5gb1=0
+2:rpcal5gb2=0
+2:rpcal5gb3=0
+2:rpcal5gb4=0
+2:swctrlmap4_cfg=0x0005
+2:swctrlmap4_TX2g_fem3to0=0x0555
+2:swctrlmap4_RX2g_fem3to0=0x0999
+2:swctrlmap4_RXByp2g_fem3to0=0x0999
+2:swctrlmap4_misc2g_fem3to0=0x0999
+2:swctrlmap4_TX5g_fem3to0=0x0aaa
+2:swctrlmap4_RX5g_fem3to0=0x0999
+2:swctrlmap4_RXByp5g_fem3to0=0x0999
+2:swctrlmap4_misc5g_fem3to0=0x0999
+2:swctrlmap4_TX2g_fem7to4=0
+2:swctrlmap4_RX2g_fem7to4=0
+2:swctrlmap4_RXByp2g_fem7to4=0
+2:swctrlmap4_misc2g_fem7to4=0
+2:swctrlmap4_TX5g_fem7to4=0
+2:swctrlmap4_RX5g_fem7to4=0
+2:swctrlmap4_RXByp5g_fem7to4=0
+2:swctrlmap4_misc5g_fem7to4=0
+pcie_speed_cfg=0x0
+pcie_ssc_cfg=0x111
diff --git a/iopsys-brcm63xx-arm/nvg578/base-files/lib/preinit/70_flash_layout_fixup b/iopsys-brcm63xx-arm/nvg578/base-files/lib/preinit/70_flash_layout_fixup
new file mode 100644
index 0000000000000000000000000000000000000000..1488072e411b1e1ff510aa0500ab6fefbe8ba96c
--- /dev/null
+++ b/iopsys-brcm63xx-arm/nvg578/base-files/lib/preinit/70_flash_layout_fixup
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+OVERLAY_LEBS_COUNT=150
+
+flash_layout_fixup () {
+	vol_name="overlay1"
+	ubinfo /dev/ubi0 -N $vol_name >/dev/null 2>&1 || ubimkvol /dev/ubi0 --vol_id=31 -N $vol_name -S $OVERLAY_LEBS_COUNT
+	vol_name="overlay2"
+	ubinfo /dev/ubi0 -N $vol_name >/dev/null 2>&1 || ubimkvol /dev/ubi0 --vol_id=32 -N $vol_name -S $OVERLAY_LEBS_COUNT
+}
+
+boot_hook_add preinit_main flash_layout_fixup
diff --git a/iopsys-brcm63xx-arm/profiles/iopsys.mk b/iopsys-brcm63xx-arm/profiles/iopsys.mk
index 6ecefd1dc138b8068c004492cfe810589f51173a..ea3eab74bf37b4aac02f8f40fbee233764449e63 100644
--- a/iopsys-brcm63xx-arm/profiles/iopsys.mk
+++ b/iopsys-brcm63xx-arm/profiles/iopsys.mk
@@ -132,3 +132,15 @@ define Profile/disc/Description
 endef
 
 $(eval $(call Profile,disc))
+
+#################### nvg578
+define Profile/nvg578
+  NAME:=nvg578
+  PACKAGES:=$(VOICE_SUPPORT)
+endef
+
+define Profile/nvg578/Description
+	NVG578XXX profile (HLX,LX,LX1)
+endef
+
+$(eval $(call Profile,nvg578))