-# Raspberry Pi Model B
-$(eval $(call add_bcm2708,RaspberryPi,rpi-b,bcm2708-rpi-b))
-# Raspberry Pi Model B+
-$(eval $(call add_bcm2708,RaspberryPi,rpi-b-plus,bcm2708-rpi-b-plus))
-# Raspberry Pi 2 Model B
-$(eval $(call add_bcm2708,RaspberryPi2,rpi-2-b,bcm2709-rpi-2-b))
+define Device/rpi-2
+ DEVICE_TITLE := Raspberry Pi 2 B
+ DEVICE_DTS := bcm2709-rpi-2-b
+endef
+ifeq ($(SUBTARGET),bcm2709)
+ TARGET_DEVICES += rpi-2
+endif
+
+define Device/rpi-3
+ DEVICE_TITLE := Raspberry Pi 3 B
+ DEVICE_DTS := bcm2710-rpi-3-b
+ DEVICE_PACKAGES := brcmfmac43430-firmware-sdio kmod-brcmfmac wpad-mini
+endef
+ifeq ($(SUBTARGET),bcm2710)
+ TARGET_DEVICES += rpi-3
+endif