--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -2142,6 +2142,14 @@ config RAVE_SP_CORE
 	  Select this to get support for the Supervisory Processor
 	  device found on several devices in RAVE line of hardware.
 
+config MFD_RB4XX_CPLD
+	tristate "CPLD driver for Mikrotik RB4xx series boards"
+	select MFD_CORE
+	depends on ATH79 || COMPILE_TEST
+	help
+	  Enables support for the CPLD chip (NAND & GPIO) on Mikrotik
+	  Routerboard RB4xx series.
+
 config SGI_MFD_IOC3
 	tristate "SGI IOC3 core driver"
 	depends on PCI && MIPS && 64BIT
--- a/drivers/mfd/Makefile
+++ b/drivers/mfd/Makefile
@@ -264,6 +264,7 @@ obj-$(CONFIG_MFD_ROHM_BD718XX)	+= rohm-b
 obj-$(CONFIG_MFD_STMFX) 	+= stmfx.o
 obj-$(CONFIG_MFD_KHADAS_MCU) 	+= khadas-mcu.o
 
+obj-$(CONFIG_MFD_RB4XX_CPLD)	+= rb4xx-cpld.o
 obj-$(CONFIG_SGI_MFD_IOC3)	+= ioc3.o
 obj-$(CONFIG_MFD_SIMPLE_MFD_I2C)	+= simple-mfd-i2c.o
 obj-$(CONFIG_MFD_INTEL_M10_BMC)   += intel-m10-bmc.o
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -1520,6 +1520,12 @@ config GPIO_SODAVILLE
 	help
 	  Say Y here to support Intel Sodaville GPIO.
 
+config GPIO_RB4XX
+	tristate "GPIO expander for Mikrotik RB4xx series boards"
+	depends on MFD_RB4XX_CPLD
+	help
+	  GPIO driver for Mikrotik Routerboard RB4xx series.
+
 endmenu
 
 menu "SPI GPIO expanders"
--- a/drivers/gpio/Makefile
+++ b/drivers/gpio/Makefile
@@ -120,6 +120,7 @@ obj-$(CONFIG_GPIO_PL061)		+= gpio-pl061.
 obj-$(CONFIG_GPIO_PMIC_EIC_SPRD)	+= gpio-pmic-eic-sprd.o
 obj-$(CONFIG_GPIO_PXA)			+= gpio-pxa.o
 obj-$(CONFIG_GPIO_RASPBERRYPI_EXP)	+= gpio-raspberrypi-exp.o
+obj-$(CONFIG_GPIO_RB4XX)		+= gpio-rb4xx.o
 obj-$(CONFIG_GPIO_RC5T583)		+= gpio-rc5t583.o
 obj-$(CONFIG_GPIO_RCAR)			+= gpio-rcar.o
 obj-$(CONFIG_GPIO_RDA)			+= gpio-rda.o
--- a/drivers/mtd/nand/raw/Kconfig
+++ b/drivers/mtd/nand/raw/Kconfig
@@ -564,4 +564,11 @@ config MTD_NAND_AR934X
 	  Enables support for NAND controller on Qualcomm Atheros SoCs.
 	  This controller is found on AR934x and QCA955x SoCs.
 
+config MTD_NAND_RB4XX
+	tristate "Support for NAND driver for Mikrotik RB4xx series boards"
+	depends on MFD_RB4XX_CPLD
+	help
+	  Enables support for the NAND flash chip on Mikrotik Routerboard
+	  RB4xx series.
+
 endif # MTD_RAW_NAND
--- a/drivers/mtd/nand/raw/Makefile
+++ b/drivers/mtd/nand/raw/Makefile
@@ -59,6 +59,7 @@ obj-$(CONFIG_MTD_NAND_MESON)		+= meson_n
 obj-$(CONFIG_MTD_NAND_CADENCE)		+= cadence-nand-controller.o
 obj-$(CONFIG_MTD_NAND_ARASAN)		+= arasan-nand-controller.o
 obj-$(CONFIG_MTD_NAND_AR934X)		+= ar934x_nand.o
+obj-$(CONFIG_MTD_NAND_RB4XX)		+= nand_rb4xx.o
 
 nand-objs := nand_base.o nand_legacy.o nand_bbt.o nand_timings.o nand_ids.o
 nand-objs += nand_onfi.o
