diff --git a/modules b/modules
index 2d7cb2ae72c87462715764b1addfb5d360280218..d5c33a86e8186794238d4bd424c028e52b73deb2 100644
--- a/modules
+++ b/modules
@@ -8,7 +8,7 @@ PACKAGES_OPENWRT_COMMIT=fa7ed79149b371294f12905210bb032610a11621
 PACKAGES_OPENWRT_BRANCH=for-15.05
 
 PACKAGES_GLUON_REPO=git://github.com/freifunk-gluon/packages.git
-PACKAGES_GLUON_COMMIT=b06388df9aceb28082e02ad525a1e5ad7b2e1c4f
+PACKAGES_GLUON_COMMIT=9d5b304e95e00ce34811ad4a1ef17c3f4791bad3
 
 PACKAGES_ROUTING_REPO=git://github.com/openwrt-routing/packages.git
 PACKAGES_ROUTING_COMMIT=6172dcef329e1b306149cded3340da8f28501266
diff --git a/patches/openwrt/0017-brcm2708-respect-CONFIG_TARGET_IMAGES_GZIP.patch b/patches/openwrt/0017-brcm2708-respect-CONFIG_TARGET_IMAGES_GZIP.patch
new file mode 100644
index 0000000000000000000000000000000000000000..2b083cb91079417d97fa5ee0a6b45cbbe84fb2d8
--- /dev/null
+++ b/patches/openwrt/0017-brcm2708-respect-CONFIG_TARGET_IMAGES_GZIP.patch
@@ -0,0 +1,21 @@
+From: Matthias Schiffer <mschiffer@universe-factory.net>
+Date: Fri, 10 Jul 2015 18:41:11 +0200
+Subject: brcm2708: respect CONFIG_TARGET_IMAGES_GZIP
+
+As the brcm2708 images use ext4, they will be huge when uncompressed.
+
+diff --git a/target/linux/brcm2708/image/Makefile b/target/linux/brcm2708/image/Makefile
+index e70bdd0..be667f3 100644
+--- a/target/linux/brcm2708/image/Makefile
++++ b/target/linux/brcm2708/image/Makefile
+@@ -28,6 +28,10 @@ define Image/Build/RaspberryPi
+ 	mcopy -i $(KDIR)/boot.img $(KDIR)/Image ::kernel.img  # Copy OpenWrt built kernel
+ 	./gen_rpi_sdcard_img.sh $(BIN_DIR)/$(IMG_PREFIX)-sdcard-vfat-$(1).img $(KDIR)/boot.img $(KDIR)/root.$(1) \
+ 		$(CONFIG_BRCM2708_SD_BOOT_PARTSIZE) $(CONFIG_TARGET_ROOTFS_PARTSIZE)
++
++  ifneq ($(CONFIG_TARGET_IMAGES_GZIP),)
++	gzip -f9 $(BIN_DIR)/$(IMG_PREFIX)-sdcard-vfat-$(1).img
++  endif
+ endef
+ 
+ define Image/Build
diff --git a/targets/brcm2708-bcm2708/config b/targets/brcm2708-bcm2708/config
new file mode 100644
index 0000000000000000000000000000000000000000..5187248e463eaf244002244923635b60315c45d7
--- /dev/null
+++ b/targets/brcm2708-bcm2708/config
@@ -0,0 +1,2 @@
+CONFIG_TARGET_brcm2708=y
+CONFIG_TARGET_brcm2708_bcm2708=y
diff --git a/targets/brcm2708-bcm2708/profiles.mk b/targets/brcm2708-bcm2708/profiles.mk
new file mode 100644
index 0000000000000000000000000000000000000000..7aa5efaa8d5d22659a9c5e63581fc195d7ccbcf6
--- /dev/null
+++ b/targets/brcm2708-bcm2708/profiles.mk
@@ -0,0 +1,4 @@
+$(eval $(call GluonProfile,RaspberryPi,brcm2708-gpu-fw kmod-usb-hid kmod-sound-core kmod-sound-arm-bcm2835))
+$(eval $(call GluonProfileFactorySuffix,RaspberryPi,-vfat-ext4,.img.gz))
+$(eval $(call GluonProfileSysupgradeSuffix,RaspberryPi))
+$(eval $(call GluonModel,RaspberryPi,sdcard,raspberry-pi))
diff --git a/targets/brcm2708-bcm2708/vermagic b/targets/brcm2708-bcm2708/vermagic
new file mode 100644
index 0000000000000000000000000000000000000000..83031c6d32d343e3648ef67dc1aa987c11643116
--- /dev/null
+++ b/targets/brcm2708-bcm2708/vermagic
@@ -0,0 +1 @@
+acfd4d19ee84c79b9ab4c392f3e94cee
diff --git a/targets/brcm2708-bcm2709/config b/targets/brcm2708-bcm2709/config
new file mode 100644
index 0000000000000000000000000000000000000000..681d3586079e55967461265c70c27f9712213bfc
--- /dev/null
+++ b/targets/brcm2708-bcm2709/config
@@ -0,0 +1,2 @@
+CONFIG_TARGET_brcm2708=y
+CONFIG_TARGET_brcm2708_bcm2709=y
diff --git a/targets/brcm2708-bcm2709/profiles.mk b/targets/brcm2708-bcm2709/profiles.mk
new file mode 100644
index 0000000000000000000000000000000000000000..5c06814ccda6d57ac4b72d1be81f962cbf8a80c1
--- /dev/null
+++ b/targets/brcm2708-bcm2709/profiles.mk
@@ -0,0 +1,4 @@
+$(eval $(call GluonProfile,RaspberryPi2,brcm2708-gpu-fw kmod-usb-hid kmod-sound-core kmod-sound-arm-bcm2835))
+$(eval $(call GluonProfileFactorySuffix,RaspberryPi2,-vfat-ext4,.img.gz))
+$(eval $(call GluonProfileSysupgradeSuffix,RaspberryPi2))
+$(eval $(call GluonModel,RaspberryPi2,sdcard,raspberry-pi-2))
diff --git a/targets/brcm2708-bcm2709/vermagic b/targets/brcm2708-bcm2709/vermagic
new file mode 100644
index 0000000000000000000000000000000000000000..8344ad20f8b6fffe9f38ce649d2d94c4bc717de3
--- /dev/null
+++ b/targets/brcm2708-bcm2709/vermagic
@@ -0,0 +1 @@
+3912f3ddca091e4dc503a2d535a0fae5
diff --git a/targets/targets.mk b/targets/targets.mk
index 48b166d4735caf41f54601ceb00213ebaf23896f..afe52c0b856b03c683213c5d5b894ca175107f08 100644
--- a/targets/targets.mk
+++ b/targets/targets.mk
@@ -6,5 +6,7 @@ $(eval $(call GluonTarget,x86,kvm_guest))
 $(eval $(call GluonTarget,x86,64))
 
 ifneq ($(BROKEN),)
-$(eval $(call GluonTarget,ramips,rt305x))
+$(eval $(call GluonTarget,ramips,rt305x)) # BROKEN: No AP+IBSS support
+$(eval $(call GluonTarget,brcm2708,bcm2708)) # BROKEN: Untested, no sysupgrade support
+$(eval $(call GluonTarget,brcm2708,bcm2709)) # BROKEN: Untested, no sysupgrade support
 endif