diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile
index bf64b7669693836642f5a91fb4b42d27cbae2598..daceb15f00d6fc7ed036c2a1fda1b465004b5415 100644
--- a/target/linux/ramips/image/Makefile
+++ b/target/linux/ramips/image/Makefile
@@ -462,6 +462,11 @@ define Image/Build/Profile/3G6200N
 	$(call Image/Build/Template/$(fs_squash)/$(1),3G6200N,3g-6200n,3G-6200N,ttyS1,57600,phys)
 endef
 
+define Image/Build/Profile/3G300M
+	$(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,3g300m,3G300M,ttyS1,57600,spi,3G150M_SPI Kernel Image,factory.bin)
+	$(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,3g300m,3G300M,ttyS1,57600,spi)
+endef
+
 define Image/Build/Profile/AIR3GII
 	$(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,air3gii,AIR3GII,ttyS1,57600,spi)
 endef
@@ -633,6 +638,7 @@ endef
 ifeq ($(CONFIG_RALINK_RT305X),y)
 define Image/Build/Profile/Default
 	$(call Image/Build/Profile/3G6200N,$(1))
+	$(call Image/Build/Profile/3G300M,$(1))
 	$(call Image/Build/Profile/AIR3GII,$(1))
 	$(call Image/Build/Profile/ALL02393G,$(1))
 	$(call Image/Build/Profile/ALL0256N,$(1))
diff --git a/target/linux/ramips/rt305x/profiles/tenda.mk b/target/linux/ramips/rt305x/profiles/tenda.mk
index 5e45b5f91309c81df7ab7b243ba1d7d271399f72..10a4cb30779829b2db1c2bea81f91c3b447e215a 100644
--- a/target/linux/ramips/rt305x/profiles/tenda.mk
+++ b/target/linux/ramips/rt305x/profiles/tenda.mk
@@ -5,6 +5,19 @@
 # See /LICENSE for more information.
 #
 
+define Profile/3G300M
+	NAME:=Tenda 3G300M
+	PACKAGES:=\
+		kmod-usb-core kmod-usb-rt305x-dwc_otg \
+		kmod-ledtrig-usbdev
+endef
+
+define Profile/3G300M/Description
+	Package set for Tenda 3G300M board
+endef
+
+$(eval $(call Profile,3G300M))
+
 define Profile/W306R_V20
 	NAME:=Tenda W306R V2.0
 	PACKAGES:=