diff mbox

[OpenWrt-Devel,v4] ramips: add support for MQmaker WiTi board

Message ID 1449123647-4399-1-git-send-email-nitroshift@yahoo.com
State Changes Requested
Headers show

Commit Message

Sebastian Careba Dec. 3, 2015, 6:20 a.m. UTC
The board is based on mt7621AT cpu, and has 16mb nor flash, 256mb of ram, 2 sata ports, microsd card slot, 1 USB 3.0 port and at least one 2.4 and one 5 ghz antenna. This is the 4th submission that fixes the naming scheme for Mqmaker WiTi board.
Patch v1 added initial support for MQmaker WiTi board. The device tree is based on PBR-M1.
Patch v2 changed the flash chip ID (w25q256 to gd25q128).
Patch v3 fixed the left-out entry for WiTi in 02_network.

Signed-off-by: Sebastian Careba <nitroshift@yahoo.com>
---
 .../patches-3.18/999-add_gd25q128_support.patch    |  13 ++
 .../linux/ramips/base-files/etc/board.d/02_network |   1 +
 target/linux/ramips/base-files/etc/diag.sh         |   1 +
 target/linux/ramips/base-files/lib/ramips.sh       |   3 +
 .../ramips/base-files/lib/upgrade/platform.sh      |   1 +
 target/linux/ramips/dts/WITI.dts                   | 142 +++++++++++++++++++++
 target/linux/ramips/image/Makefile                 |   7 +-
 target/linux/ramips/mt7621/profiles/mqmaker.mk     |  20 +++
 8 files changed, 187 insertions(+), 1 deletion(-)
 create mode 100644 target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
 create mode 100644 target/linux/ramips/dts/WITI.dts
 create mode 100644 target/linux/ramips/mt7621/profiles/mqmaker.mk

Comments

Felix Fietkau Dec. 3, 2015, 11:13 a.m. UTC | #1
On 2015-12-03 07:20, Sebastian Careba wrote:
> The board is based on mt7621AT cpu, and has 16mb nor flash, 256mb of ram, 2 sata ports, microsd card slot, 1 USB 3.0 port and at least one 2.4 and one 5 ghz antenna. This is the 4th submission that fixes the naming scheme for Mqmaker WiTi board.
> Patch v1 added initial support for MQmaker WiTi board. The device tree is based on PBR-M1.
> Patch v2 changed the flash chip ID (w25q256 to gd25q128).
> Patch v3 fixed the left-out entry for WiTi in 02_network.
> 
> Signed-off-by: Sebastian Careba <nitroshift@yahoo.com>
> ---
>  .../patches-3.18/999-add_gd25q128_support.patch    |  13 ++
>  .../linux/ramips/base-files/etc/board.d/02_network |   1 +
>  target/linux/ramips/base-files/etc/diag.sh         |   1 +
>  target/linux/ramips/base-files/lib/ramips.sh       |   3 +
>  .../ramips/base-files/lib/upgrade/platform.sh      |   1 +
>  target/linux/ramips/dts/WITI.dts                   | 142 +++++++++++++++++++++
>  target/linux/ramips/image/Makefile                 |   7 +-
>  target/linux/ramips/mt7621/profiles/mqmaker.mk     |  20 +++
>  8 files changed, 187 insertions(+), 1 deletion(-)
>  create mode 100644 target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>  create mode 100644 target/linux/ramips/dts/WITI.dts
>  create mode 100644 target/linux/ramips/mt7621/profiles/mqmaker.mk
> 
> diff --git a/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
> new file mode 100644
> index 0000000..e9c380b
> --- /dev/null
> +++ b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
> @@ -0,0 +1,13 @@
> Index: linux-3.18.23/drivers/mtd/devices/m25p80.c
> ===================================================================
> --- linux-3.18.23.orig/drivers/mtd/devices/m25p80.c
> +++ linux-3.18.23/drivers/mtd/devices/m25p80.c
> @@ -352,7 +352,7 @@ static const struct spi_device_id m25p_i
>  	{"en25q64"},	{"en25qh128"},	{"en25qh256"},
>  	{"f25l32pa"},
>  	{"mr25h256"},	{"mr25h10"},
> -	{"gd25q32"},	{"gd25q64"},
> +	{"gd25q32"},	{"gd25q64"},	{"gd25q128"},
>  	{"160s33b"},	{"320s33b"},	{"640s33b"},
>  	{"mx25l2005a"},	{"mx25l4005a"},	{"mx25l8005"},	{"mx25l1606e"},
>  	{"mx25l3205d"},	{"mx25l3255e"},	{"mx25l6405d"},	{"mx25l12805d"},
Please drop this patch (see below).

> --- /dev/null
> +++ b/target/linux/ramips/dts/WITI.dts
> @@ -0,0 +1,142 @@
> +/dts-v1/;
> +
> +/include/ "mt7621.dtsi"
> +
> +/ {
> +	compatible = "mediatek,mt7621-eval-board", "mediatek,mt7621-soc";
> +	model = "MQmaker WiTi";
> +
> +	memory@0 {
> +		device_type = "memory";
> +		reg = <0x0 0x10000000>;
> +	};
> +
> +	chosen {
> +		bootargs = "console=ttyS0,57600";
> +	};
> +
> +	sdhci@10130000 {
> +		status = "okay";
> +	};
> +
> +	palmbus@1E000000 {
> +		spi@b00 {
> +			status = "okay";
> +
> +			m25p80@0 {
> +				#address-cells = <1>;
> +				#size-cells = <1>;
> +				compatible = "gd25q128";
Please use 'jedec,spi-nor' here, so you don't have to patch in the
device id for this chip.

- Felix
John Crispin Dec. 3, 2015, 11:17 a.m. UTC | #2
offtopic ... my 2 samples of this board just arrived :) i know what i
will be testing later on today

On 03/12/2015 12:13, Felix Fietkau wrote:
> On 2015-12-03 07:20, Sebastian Careba wrote:
>> The board is based on mt7621AT cpu, and has 16mb nor flash, 256mb of ram, 2 sata ports, microsd card slot, 1 USB 3.0 port and at least one 2.4 and one 5 ghz antenna. This is the 4th submission that fixes the naming scheme for Mqmaker WiTi board.
>> Patch v1 added initial support for MQmaker WiTi board. The device tree is based on PBR-M1.
>> Patch v2 changed the flash chip ID (w25q256 to gd25q128).
>> Patch v3 fixed the left-out entry for WiTi in 02_network.
>>
>> Signed-off-by: Sebastian Careba <nitroshift@yahoo.com>
>> ---
>>  .../patches-3.18/999-add_gd25q128_support.patch    |  13 ++
>>  .../linux/ramips/base-files/etc/board.d/02_network |   1 +
>>  target/linux/ramips/base-files/etc/diag.sh         |   1 +
>>  target/linux/ramips/base-files/lib/ramips.sh       |   3 +
>>  .../ramips/base-files/lib/upgrade/platform.sh      |   1 +
>>  target/linux/ramips/dts/WITI.dts                   | 142 +++++++++++++++++++++
>>  target/linux/ramips/image/Makefile                 |   7 +-
>>  target/linux/ramips/mt7621/profiles/mqmaker.mk     |  20 +++
>>  8 files changed, 187 insertions(+), 1 deletion(-)
>>  create mode 100644 target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>>  create mode 100644 target/linux/ramips/dts/WITI.dts
>>  create mode 100644 target/linux/ramips/mt7621/profiles/mqmaker.mk
>>
>> diff --git a/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>> new file mode 100644
>> index 0000000..e9c380b
>> --- /dev/null
>> +++ b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>> @@ -0,0 +1,13 @@
>> Index: linux-3.18.23/drivers/mtd/devices/m25p80.c
>> ===================================================================
>> --- linux-3.18.23.orig/drivers/mtd/devices/m25p80.c
>> +++ linux-3.18.23/drivers/mtd/devices/m25p80.c
>> @@ -352,7 +352,7 @@ static const struct spi_device_id m25p_i
>>  	{"en25q64"},	{"en25qh128"},	{"en25qh256"},
>>  	{"f25l32pa"},
>>  	{"mr25h256"},	{"mr25h10"},
>> -	{"gd25q32"},	{"gd25q64"},
>> +	{"gd25q32"},	{"gd25q64"},	{"gd25q128"},
>>  	{"160s33b"},	{"320s33b"},	{"640s33b"},
>>  	{"mx25l2005a"},	{"mx25l4005a"},	{"mx25l8005"},	{"mx25l1606e"},
>>  	{"mx25l3205d"},	{"mx25l3255e"},	{"mx25l6405d"},	{"mx25l12805d"},
> Please drop this patch (see below).
> 
>> --- /dev/null
>> +++ b/target/linux/ramips/dts/WITI.dts
>> @@ -0,0 +1,142 @@
>> +/dts-v1/;
>> +
>> +/include/ "mt7621.dtsi"
>> +
>> +/ {
>> +	compatible = "mediatek,mt7621-eval-board", "mediatek,mt7621-soc";
>> +	model = "MQmaker WiTi";
>> +
>> +	memory@0 {
>> +		device_type = "memory";
>> +		reg = <0x0 0x10000000>;
>> +	};
>> +
>> +	chosen {
>> +		bootargs = "console=ttyS0,57600";
>> +	};
>> +
>> +	sdhci@10130000 {
>> +		status = "okay";
>> +	};
>> +
>> +	palmbus@1E000000 {
>> +		spi@b00 {
>> +			status = "okay";
>> +
>> +			m25p80@0 {
>> +				#address-cells = <1>;
>> +				#size-cells = <1>;
>> +				compatible = "gd25q128";
> Please use 'jedec,spi-nor' here, so you don't have to patch in the
> device id for this chip.
> 
> - Felix
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
>
Srdjan Rosic Dec. 3, 2015, 1:59 p.m. UTC | #3
Any chance of switching ramips to 4.1 any time soon?
As Felix pointed out, I'd rather if were just using jedec,spi-nor than
adding a patch file for every single flash chip out there.
Srdjan Rosic


On Thu, Dec 3, 2015 at 11:17 AM, John Crispin <blogic@openwrt.org> wrote:
> offtopic ... my 2 samples of this board just arrived :) i know what i
> will be testing later on today
>
> On 03/12/2015 12:13, Felix Fietkau wrote:
>> On 2015-12-03 07:20, Sebastian Careba wrote:
>>> The board is based on mt7621AT cpu, and has 16mb nor flash, 256mb of ram, 2 sata ports, microsd card slot, 1 USB 3.0 port and at least one 2.4 and one 5 ghz antenna. This is the 4th submission that fixes the naming scheme for Mqmaker WiTi board.
>>> Patch v1 added initial support for MQmaker WiTi board. The device tree is based on PBR-M1.
>>> Patch v2 changed the flash chip ID (w25q256 to gd25q128).
>>> Patch v3 fixed the left-out entry for WiTi in 02_network.
>>>
>>> Signed-off-by: Sebastian Careba <nitroshift@yahoo.com>
>>> ---
>>>  .../patches-3.18/999-add_gd25q128_support.patch    |  13 ++
>>>  .../linux/ramips/base-files/etc/board.d/02_network |   1 +
>>>  target/linux/ramips/base-files/etc/diag.sh         |   1 +
>>>  target/linux/ramips/base-files/lib/ramips.sh       |   3 +
>>>  .../ramips/base-files/lib/upgrade/platform.sh      |   1 +
>>>  target/linux/ramips/dts/WITI.dts                   | 142 +++++++++++++++++++++
>>>  target/linux/ramips/image/Makefile                 |   7 +-
>>>  target/linux/ramips/mt7621/profiles/mqmaker.mk     |  20 +++
>>>  8 files changed, 187 insertions(+), 1 deletion(-)
>>>  create mode 100644 target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>>>  create mode 100644 target/linux/ramips/dts/WITI.dts
>>>  create mode 100644 target/linux/ramips/mt7621/profiles/mqmaker.mk
>>>
>>> diff --git a/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>>> new file mode 100644
>>> index 0000000..e9c380b
>>> --- /dev/null
>>> +++ b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>>> @@ -0,0 +1,13 @@
>>> Index: linux-3.18.23/drivers/mtd/devices/m25p80.c
>>> ===================================================================
>>> --- linux-3.18.23.orig/drivers/mtd/devices/m25p80.c
>>> +++ linux-3.18.23/drivers/mtd/devices/m25p80.c
>>> @@ -352,7 +352,7 @@ static const struct spi_device_id m25p_i
>>>      {"en25q64"},    {"en25qh128"},  {"en25qh256"},
>>>      {"f25l32pa"},
>>>      {"mr25h256"},   {"mr25h10"},
>>> -    {"gd25q32"},    {"gd25q64"},
>>> +    {"gd25q32"},    {"gd25q64"},    {"gd25q128"},
>>>      {"160s33b"},    {"320s33b"},    {"640s33b"},
>>>      {"mx25l2005a"}, {"mx25l4005a"}, {"mx25l8005"},  {"mx25l1606e"},
>>>      {"mx25l3205d"}, {"mx25l3255e"}, {"mx25l6405d"}, {"mx25l12805d"},
>> Please drop this patch (see below).
>>
>>> --- /dev/null
>>> +++ b/target/linux/ramips/dts/WITI.dts
>>> @@ -0,0 +1,142 @@
>>> +/dts-v1/;
>>> +
>>> +/include/ "mt7621.dtsi"
>>> +
>>> +/ {
>>> +    compatible = "mediatek,mt7621-eval-board", "mediatek,mt7621-soc";
>>> +    model = "MQmaker WiTi";
>>> +
>>> +    memory@0 {
>>> +            device_type = "memory";
>>> +            reg = <0x0 0x10000000>;
>>> +    };
>>> +
>>> +    chosen {
>>> +            bootargs = "console=ttyS0,57600";
>>> +    };
>>> +
>>> +    sdhci@10130000 {
>>> +            status = "okay";
>>> +    };
>>> +
>>> +    palmbus@1E000000 {
>>> +            spi@b00 {
>>> +                    status = "okay";
>>> +
>>> +                    m25p80@0 {
>>> +                            #address-cells = <1>;
>>> +                            #size-cells = <1>;
>>> +                            compatible = "gd25q128";
>> Please use 'jedec,spi-nor' here, so you don't have to patch in the
>> device id for this chip.
>>
>> - Felix
>> _______________________________________________
>> openwrt-devel mailing list
>> openwrt-devel@lists.openwrt.org
>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
>>
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Felix Fietkau Dec. 3, 2015, 2:49 p.m. UTC | #4
On 2015-12-03 14:59, Srdjan Rosic wrote:
> Any chance of switching ramips to 4.1 any time soon?
> As Felix pointed out, I'd rather if were just using jedec,spi-nor than
> adding a patch file for every single flash chip out there.
> Srdjan Rosic
I just backported support for jedec,spi-nor to 3.18 in r47716

- Felix
Dave Taht Dec. 3, 2015, 3 p.m. UTC | #5
Is this the one with the promising 802.11ac chipset?

If so, how do I get a few?

If not, how do I get one? :)

On Thu, Dec 3, 2015 at 12:17 PM, John Crispin <blogic@openwrt.org> wrote:
> offtopic ... my 2 samples of this board just arrived :) i know what i
> will be testing later on today
>
> On 03/12/2015 12:13, Felix Fietkau wrote:
>> On 2015-12-03 07:20, Sebastian Careba wrote:
>>> The board is based on mt7621AT cpu, and has 16mb nor flash, 256mb of ram, 2 sata ports, microsd card slot, 1 USB 3.0 port and at least one 2.4 and one 5 ghz antenna. This is the 4th submission that fixes the naming scheme for Mqmaker WiTi board.
>>> Patch v1 added initial support for MQmaker WiTi board. The device tree is based on PBR-M1.
>>> Patch v2 changed the flash chip ID (w25q256 to gd25q128).
>>> Patch v3 fixed the left-out entry for WiTi in 02_network.
>>>
>>> Signed-off-by: Sebastian Careba <nitroshift@yahoo.com>
>>> ---
>>>  .../patches-3.18/999-add_gd25q128_support.patch    |  13 ++
>>>  .../linux/ramips/base-files/etc/board.d/02_network |   1 +
>>>  target/linux/ramips/base-files/etc/diag.sh         |   1 +
>>>  target/linux/ramips/base-files/lib/ramips.sh       |   3 +
>>>  .../ramips/base-files/lib/upgrade/platform.sh      |   1 +
>>>  target/linux/ramips/dts/WITI.dts                   | 142 +++++++++++++++++++++
>>>  target/linux/ramips/image/Makefile                 |   7 +-
>>>  target/linux/ramips/mt7621/profiles/mqmaker.mk     |  20 +++
>>>  8 files changed, 187 insertions(+), 1 deletion(-)
>>>  create mode 100644 target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>>>  create mode 100644 target/linux/ramips/dts/WITI.dts
>>>  create mode 100644 target/linux/ramips/mt7621/profiles/mqmaker.mk
>>>
>>> diff --git a/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>>> new file mode 100644
>>> index 0000000..e9c380b
>>> --- /dev/null
>>> +++ b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
>>> @@ -0,0 +1,13 @@
>>> Index: linux-3.18.23/drivers/mtd/devices/m25p80.c
>>> ===================================================================
>>> --- linux-3.18.23.orig/drivers/mtd/devices/m25p80.c
>>> +++ linux-3.18.23/drivers/mtd/devices/m25p80.c
>>> @@ -352,7 +352,7 @@ static const struct spi_device_id m25p_i
>>>      {"en25q64"},    {"en25qh128"},  {"en25qh256"},
>>>      {"f25l32pa"},
>>>      {"mr25h256"},   {"mr25h10"},
>>> -    {"gd25q32"},    {"gd25q64"},
>>> +    {"gd25q32"},    {"gd25q64"},    {"gd25q128"},
>>>      {"160s33b"},    {"320s33b"},    {"640s33b"},
>>>      {"mx25l2005a"}, {"mx25l4005a"}, {"mx25l8005"},  {"mx25l1606e"},
>>>      {"mx25l3205d"}, {"mx25l3255e"}, {"mx25l6405d"}, {"mx25l12805d"},
>> Please drop this patch (see below).
>>
>>> --- /dev/null
>>> +++ b/target/linux/ramips/dts/WITI.dts
>>> @@ -0,0 +1,142 @@
>>> +/dts-v1/;
>>> +
>>> +/include/ "mt7621.dtsi"
>>> +
>>> +/ {
>>> +    compatible = "mediatek,mt7621-eval-board", "mediatek,mt7621-soc";
>>> +    model = "MQmaker WiTi";
>>> +
>>> +    memory@0 {
>>> +            device_type = "memory";
>>> +            reg = <0x0 0x10000000>;
>>> +    };
>>> +
>>> +    chosen {
>>> +            bootargs = "console=ttyS0,57600";
>>> +    };
>>> +
>>> +    sdhci@10130000 {
>>> +            status = "okay";
>>> +    };
>>> +
>>> +    palmbus@1E000000 {
>>> +            spi@b00 {
>>> +                    status = "okay";
>>> +
>>> +                    m25p80@0 {
>>> +                            #address-cells = <1>;
>>> +                            #size-cells = <1>;
>>> +                            compatible = "gd25q128";
>> Please use 'jedec,spi-nor' here, so you don't have to patch in the
>> device id for this chip.
>>
>> - Felix
>> _______________________________________________
>> openwrt-devel mailing list
>> openwrt-devel@lists.openwrt.org
>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
>>
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Srdjan Rosic Dec. 3, 2015, 3:12 p.m. UTC | #6
On Dec 3, 2015 14:50, "Felix Fietkau" <nbd@openwrt.org> wrote:
> I just backported support for jedec,spi-nor to 3.18 in r47716
>
> - Felix
Awesome, thank you!
Felix Fietkau Dec. 3, 2015, 3:28 p.m. UTC | #7
On 2015-12-03 16:00, Dave Taht wrote:
> Is this the one with the promising 802.11ac chipset?
Yes :)

> If so, how do I get a few?
> 
> If not, how do I get one? :)
https://www.indiegogo.com/projects/witi-board-open-extensible-router-nas-platform#/

- Felix
Russell Senior Dec. 4, 2015, 1:54 a.m. UTC | #8
>>>>> "Dave" == Dave Taht <dave.taht@gmail.com> writes:

Dave> Is this the one with the promising 802.11ac chipset?  If so, how
Dave> do I get a few?

Dave> If not, how do I get one? :)

Duck duck go and a few mouse clicks found me this link:

  http://www.aliexpress.com/item/WiTi-Board-Extensible-Powerful-Wifi-Router/32523122606.html?spm=2114.01020208.3.8.crUD8y&ws_ab_test=searchweb201556_2_79_78_77_80,searchweb201644_5,searchweb201560_9
diff mbox

Patch

diff --git a/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
new file mode 100644
index 0000000..e9c380b
--- /dev/null
+++ b/target/linux/generic/patches-3.18/999-add_gd25q128_support.patch
@@ -0,0 +1,13 @@ 
Index: linux-3.18.23/drivers/mtd/devices/m25p80.c
===================================================================
--- linux-3.18.23.orig/drivers/mtd/devices/m25p80.c
+++ linux-3.18.23/drivers/mtd/devices/m25p80.c
@@ -352,7 +352,7 @@  static const struct spi_device_id m25p_i
 	{"en25q64"},	{"en25qh128"},	{"en25qh256"},
 	{"f25l32pa"},
 	{"mr25h256"},	{"mr25h10"},
-	{"gd25q32"},	{"gd25q64"},
+	{"gd25q32"},	{"gd25q64"},	{"gd25q128"},
 	{"160s33b"},	{"320s33b"},	{"640s33b"},
 	{"mx25l2005a"},	{"mx25l4005a"},	{"mx25l8005"},	{"mx25l1606e"},
 	{"mx25l3205d"},	{"mx25l3255e"},	{"mx25l6405d"},	{"mx25l12805d"},
diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network
index 7e51229..0cdecb0 100755
--- a/target/linux/ramips/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/base-files/etc/board.d/02_network
@@ -81,6 +81,7 @@  ramips_setup_interfaces()
 	wf-2881|\
 	whr-300hp2|\
 	whr-600d|\
+	witi|\
 	wsr-1166|\
 	wsr-600|\
 	wt1520|\
diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
index ff5fbf2..41e3a34 100644
--- a/target/linux/ramips/base-files/etc/diag.sh
+++ b/target/linux/ramips/base-files/etc/diag.sh
@@ -137,6 +137,7 @@  get_status_led() {
 		;;
 	pbr-m1|\
 	w306r-v20|\
+	witi|\
 	zbt-wr8305rt)
 		status_led="$board:green:sys"
 		;;
diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh
index 92e13c0..c002b97 100755
--- a/target/linux/ramips/base-files/lib/ramips.sh
+++ b/target/linux/ramips/base-files/lib/ramips.sh
@@ -391,6 +391,9 @@  ramips_board_detect() {
 	*"WHR-G300N")
 		name="whr-g300n"
 		;;
+	*"WiTi")
+                name="witi"
+		;;
 	*"WIZARD 8800")
 		name="wizard8800"
 		;;
diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh
index 073593a..4ec3008 100755
--- a/target/linux/ramips/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh
@@ -113,6 +113,7 @@  platform_check_image() {
 	whr-300hp2|\
 	whr-600d|\
 	whr-g300n|\
+	witi|\
 	wizfi630a|\
 	wl-330n|\
 	wl-330n3g|\
diff --git a/target/linux/ramips/dts/WITI.dts b/target/linux/ramips/dts/WITI.dts
new file mode 100644
index 0000000..7a3a9ff
--- /dev/null
+++ b/target/linux/ramips/dts/WITI.dts
@@ -0,0 +1,142 @@ 
+/dts-v1/;
+
+/include/ "mt7621.dtsi"
+
+/ {
+	compatible = "mediatek,mt7621-eval-board", "mediatek,mt7621-soc";
+	model = "MQmaker WiTi";
+
+	memory@0 {
+		device_type = "memory";
+		reg = <0x0 0x10000000>;
+	};
+
+	chosen {
+		bootargs = "console=ttyS0,57600";
+	};
+
+	sdhci@10130000 {
+		status = "okay";
+	};
+
+	palmbus@1E000000 {
+		spi@b00 {
+			status = "okay";
+
+			m25p80@0 {
+				#address-cells = <1>;
+				#size-cells = <1>;
+				compatible = "gd25q128";
+				reg = <0 0>;
+				linux,modalias = "m25p80";
+				spi-max-frequency = <10000000>;
+
+				partition@0 {
+					label = "u-boot";
+					reg = <0x0 0x30000>;
+					read-only;
+				};
+
+				partition@30000 {
+					label = "u-boot-env";
+					reg = <0x30000 0x10000>;
+					read-only;
+				};
+
+				factory: partition@40000 {
+					label = "factory";
+					reg = <0x40000 0x10000>;
+					read-only;
+				};
+
+				partition@50000 {
+					label = "firmware";
+					reg = <0x50000 0xfb0000>;
+				};
+			};
+		};
+
+		i2c@900 {
+			compatible = "ralink,i2c-mt7621";
+			reg = <0x900 0x100>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c_pins>;
+			status = "okay";
+
+			pcf8563: rtc@51 {
+				status = "okay";
+				compatible = "nxp,pcf8563";
+				reg = <0x51>;
+			};
+		};
+	};
+
+	pcie@1e140000 {
+		status = "okay";
+
+		pcie0 {
+			mt76@0,0 {
+				reg = <0x0000 0 0 0 0>;
+				device_type = "pci";
+				mediatek,mtd-eeprom = <&factory 0x0000>;
+				mediatek,2ghz = <0>;
+			};
+		};
+
+		pcie1 {
+			mt76@1,0 {
+				reg = <0x0000 0 0 0 0>;
+				device_type = "pci";
+				mediatek,mtd-eeprom = <&factory 0x8000>;
+				mediatek,5ghz = <0>;
+			};
+		};
+	};
+
+	ethernet@1e100000 {
+		mtd-mac-address = <&factory 0xe000>;
+	};
+
+	gpio-leds {
+		compatible = "gpio-leds";
+
+		power {
+			label = "witi:green:power";
+			gpios = <&gpio0 25 1>;
+		};
+
+		sys {
+			label = "witi:green:sys";
+			gpios = <&gpio0 24 1>;
+		};
+
+		internet {
+			label = "witi:green:internet";
+			gpios = <&gpio0 23 1>;
+		};
+	};
+
+	gpio-keys-polled {
+		compatible = "gpio-keys-polled";
+		#address-cells = <1>;
+		#size-cells = <0>;
+		poll-interval = <20>;
+
+		reset {
+			label = "reset";
+			gpios = <&gpio0 18 1>;
+			linux,code = <0x198>;
+		};
+	};
+
+	pinctrl {
+		state_default: pinctrl0 {
+			gpio {
+				ralink,group = "wdt", "rgmii2", "wdt rst", "jtag", "mdio";
+				ralink,function = "gpio";
+			};
+		};
+	};
+};
diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile
index e58d012..478ead9 100644
--- a/target/linux/ramips/image/Makefile
+++ b/target/linux/ramips/image/Makefile
@@ -954,7 +954,7 @@  endif
 #
 
 ifeq ($(SUBTARGET),mt7621)
-  TARGET_DEVICES += mt7621 wsr-600 wsr-1166 dir-860l-b1 firewrt pbr-m1 re6500 sap-g3200u3 zbt-wg2626 wf-2881
+  TARGET_DEVICES += mt7621 wsr-600 wsr-1166 dir-860l-b1 firewrt pbr-m1 re6500 sap-g3200u3 witi wf-2881 zbt-wg2626
 endif
 
 define Device/mt7621
@@ -1004,6 +1004,11 @@  define Device/sap-g3200u3
   DTS := SAP-G3200U3
 endef
 
+define Device/witi
+  DTS := WITI
+  IMAGE_SIZE := $(ralink_default_fw_size_16M)
+endef
+
 define Device/zbt-wg2626
   DTS := ZBT-WG2626
   IMAGE_SIZE := $(ralink_default_fw_size_16M)
diff --git a/target/linux/ramips/mt7621/profiles/mqmaker.mk b/target/linux/ramips/mt7621/profiles/mqmaker.mk
new file mode 100644
index 0000000..e0dbe0d
--- /dev/null
+++ b/target/linux/ramips/mt7621/profiles/mqmaker.mk
@@ -0,0 +1,20 @@ 
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/witi
+	NAME:=MQmaker WiTi
+	FEATURES+=rtc
+	PACKAGES:=\
+		kmod-usb-core kmod-usb3 kmod-usb-hid kmod-sdhci-mt7620 \
+		kmod-ledtrig-usbdev kmod-ata-core kmod-ata-ahci \
+		kmod-rtc-pcf8563
+endef
+
+define Profile/witi/Description
+	Package set compatible with MQmaker WiTi board.
+endef
+$(eval $(call Profile,witi))