diff mbox

[OpenWrt-Devel] ramips: Fix HooToo HT-TM02 support.

Message ID owrt-patches-20141225-6@vittgam.net
State Accepted
Delegated to: John Crispin
Headers show

Commit Message

Vittorio Gambaletta Dec. 25, 2014, 1:30 a.m. UTC
- Fix LED definitions.
- Add mode-switch slider definition (at GPIO 14).
- Remove unneeded VLAN now that the ethernet driver is fixed and TCP packets get passed correctly now. (This router only has one port.)
- Fix LAN port MAC address, which is defined in the factory partition as WLAN MAC address + 1.
- Fix board name, as the company name is HooToo and not HOOTOO.
- Remove unnecessary packages from the profile. (The end-user is supposed to use mechanisms such as the ImageBuilder in order to add his own set of packages to his own images... while the precompiled images should just contain the core set of packages needed to run the base functions of a wireless router.)

Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>

Comments

Paul Fertser Dec. 25, 2014, 11:37 a.m. UTC | #1
Hello,

Few comments from a person that doesn't own this device (but owns an
MPR-A1 clone).

"Vittorio G (VittGam)" <openwrt@vittgam.net> writes:
> - Remove unneeded VLAN now that the ethernet driver is fixed and TCP
> packets get passed correctly now. (This router only has one port.)

I've checked the OpenWrt wiki, the device page is not present [1]. I
think VLAN config might be useful for documentation purposes in case
someone would need to enable tagging on Ethernet he'd need to learn the
CPU and physical port numbers somehow. If you already have a suitable
config (probably disabled) in uci-defaults, that would be much easier.

> - Remove unnecessary packages from the profile. (The end-user is
> supposed to use mechanisms such as the ImageBuilder in order to add
> his own set of packages to his own images... while the precompiled
> images should just contain the core set of packages needed to run the
> base functions of a wireless router.)

So you remove wpad-mini but leave USB packages in place? :) IMHO
triggers are not needed but wpad-mini should stay. I agree it's useful
to have kernel modules that handle specific USB controller, everything
else is clearly optional (apart from packages like button-hotplug and
fstools that are part of the base install anyway, afair).

[1] http://wiki.openwrt.org/toh/hootoo/ht-tm02
Vittorio Gambaletta Dec. 25, 2014, 11:48 a.m. UTC | #2
Hi,

Il 25.12.2014 12:37 Paul Fertser ha scritto:

> Hello,
>
> Few comments from a person that doesn't own this device (but owns an
> MPR-A1 clone).
>
> "Vittorio G (VittGam)" writes:
>
>> - Remove unneeded VLAN now that the ethernet driver is fixed and TCP
>> packets get passed correctly now. (This router only has one port.)
>
> I've checked the OpenWrt wiki, the device page is not present [1]. I
> think VLAN config might be useful for documentation purposes in case
> someone would need to enable tagging on Ethernet he'd need to learn
> the
> CPU and physical port numbers somehow. If you already have a suitable
> config (probably disabled) in uci-defaults, that would be much
> easier.
>

I'll add the wiki page as soon as I can... Thanks for notifying me ;)

Also the device has only one Ethernet port, so VLAN would only add
overhead.

And LAN port is 4, it can be seen from running: swconfig dev switch0
show.

Also this is not exactly an MPR-A1 clone as it does not have the
battery, it is small like the TP-LINK WR703N.

>> - Remove unnecessary packages from the profile. (The end-user is
>> supposed to use mechanisms such as the ImageBuilder in order to add
>> his
>> own set of packages to his own images... while the precompiled
>> images
>> should just contain the core set of packages needed to run the base
>> functions of a wireless router.)
>
> So you remove wpad-mini but leave USB packages in place? :) IMHO
> triggers are not needed but wpad-mini should stay. I agree it's
> useful
> to have kernel modules that handle specific USB controller,
> everything
> else is clearly optional (apart from packages like button-hotplug and
> fstools that are part of the base install anyway, afair).

It is already included in the list for the ramips default profile here:

https://dev.openwrt.org/browser/trunk/target/linux/ramips/Makefile

Other ramips profiles inherit the packages list from here.


Cheers,
Vittorio G
Vittorio Gambaletta Dec. 25, 2014, 2:02 p.m. UTC | #3
Il 25.12.2014 13:26 Paul Fertser ha scritto:

> On Thu, Dec 25, 2014 at 12:46:20PM +0100, Vittorio G (VittGam) wrote:
>
>> And LAN port is 4, it can be seen from running: swconfig dev switch0
>> show.
>
> Hm, ok, sure. Sorry for the noise.

No problem :)

>
>> Also this is not exactly an MPR-A1 clone as it does not have the
>> battery, it is small like the TP-LINK WR703N.
>
> Mine is without a battery too, I guess they call it MPR-A15 or so. 
> But
> it came with 8M flash, 32M RAM.

The HT-TM02 also has 8MB flash and 32MB of RAM.

Cheers,
Vittorio
diff mbox

Patch

diff --git a/target/linux/ramips/base-files/etc/board.d/01_leds b/target/linux/ramips/base-files/etc/board.d/01_leds
index 9c49c5c..405a6c0 100755
--- a/target/linux/ramips/base-files/etc/board.d/01_leds
+++ b/target/linux/ramips/base-files/etc/board.d/01_leds
@@ -118,10 +118,10 @@  case $board in
 	hlk-rm04)
 		set_wifi_led "rt2800pci-phy0::radio"
 		;;
-        ht-tm02)
-		ucidef_set_led_netdev "eth" "ETH" "ht-tm02:white:status" "eth0"
-		set_wifi_led "ht-tm02:blue:wifi"
-                ;;
+	ht-tm02)
+		ucidef_set_led_netdev "eth" "Ethernet" "ht-tm02:green:lan" "eth0"
+		set_wifi_led "ht-tm02:blue:wlan"
+		;;
 	all0239-3g|\
 	hw550-3g)
 		set_usb_led "hw550-3g:green:usb"
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 80b5449..a86466e 100755
--- a/target/linux/ramips/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/base-files/etc/board.d/02_network
@@ -50,6 +50,7 @@  ramips_setup_interfaces()
 	all5003 | \
 	broadway | \
 	dcs-930| \
+	ht-tm02| \
 	ncs601w | \
 	wnce2001)
 		ucidef_add_switch "switch0" "1" "0"
@@ -103,12 +104,6 @@  ramips_setup_interfaces()
 		ucidef_add_switch_vlan "switch0" "2" "4 9t"
 		;;
 
-	ht-tm02)
-		ucidef_set_interface_lan "eth0.1"
-		ucidef_add_switch "switch0" "1" "1"
-		ucidef_add_switch_vlan "switch0" "1" "4 6t"
-		;;
-
 	3g-6200n | \
 	ai-br100 | \
 	dir-610-a1 | \
@@ -291,7 +286,6 @@  ramips_setup_macs()
 	hlk-rm04 | \
 	mpr-a1 | \
 	mpr-a2 | \
-        ht-tm02 | \
 	dir-300-b7 | \
 	dir-320-b1 | \
 	psr-680w |\
@@ -303,6 +297,10 @@  ramips_setup_macs()
 		wan_mac=$(macaddr_add "$lan_mac" 1)
 		;;
 
+	ht-tm02)
+		lan_mac=$(cat /sys/class/net/eth0/address)
+		;;
+
 	cy-swr1100 | \
 	dir-645)
 		lan_mac=$(mtd_get_mac_ascii nvram lanmac)
diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
index 1af64b2..103dfcd 100755
--- a/target/linux/ramips/base-files/etc/diag.sh
+++ b/target/linux/ramips/base-files/etc/diag.sh
@@ -73,7 +73,7 @@  get_status_led() {
 		status_led="hlk-rm04:red:power"
 		;;
 	ht-tm02)
-		status_led="ht-tm02:white:status"
+		status_led="ht-tm02:blue:wlan"
 		;;
 	all0239-3g|\
 	hw550-3g)
diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh
index b4e5d91..257f605 100755
--- a/target/linux/ramips/base-files/lib/ramips.sh
+++ b/target/linux/ramips/base-files/lib/ramips.sh
@@ -172,7 +172,7 @@  ramips_board_detect() {
 	*"HILINK HLK-RM04")
 		name="hlk-rm04"
 		;;
-	*"HOOTOO HT-TM02")
+	*"HooToo HT-TM02")
 		name="ht-tm02"
 		;;
 	*"HAME MPR-A1")
diff --git a/target/linux/ramips/dts/HT-TM02.dts b/target/linux/ramips/dts/HT-TM02.dts
index 1f456f0..40d9e01 100644
--- a/target/linux/ramips/dts/HT-TM02.dts
+++ b/target/linux/ramips/dts/HT-TM02.dts
@@ -4,14 +4,12 @@ 
 
 / {
 	compatible = "HT-TM02", "ralink,rt5350-soc";
-	model = "HOOTOO HT-TM02";
+	model = "HooToo HT-TM02";
 
 	palmbus@10000000 {
-
-               gpio0: gpio@600 {
+		gpio0: gpio@600 {
 			status = "okay";
-               };
-               
+		};
 		spi@b00 {
 			status = "okay";
 			m25p80@0 {
@@ -21,25 +19,21 @@ 
 				reg = <0 0>;
 				linux,modalias = "m25p80", "mx25l6405d";
 				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 0x7b0000>;
@@ -58,11 +52,11 @@ 
 	};
 
 	ethernet@10100000 {
-		mtd-mac-address = <&factory 0x4>;
+		mtd-mac-address = <&factory 0x28>;
 	};
 
 	esw@10110000 {
-		ralink,portmap = <0x3f>;
+		ralink,portmap = <0x10>;
 	};
 
 	wmac@10180000 {
@@ -79,12 +73,12 @@ 
 
 	gpio-leds {
 		compatible = "gpio-leds";
-		wifi  {
-			label = "ht-tm02:blue:wifi";
+		wlan {
+			label = "ht-tm02:blue:wlan";
 			gpios = <&gpio0 7 1>;
 		};
-		status  {
-			label = "ht-tm02:yellow:status";
+		lan {
+			label = "ht-tm02:green:lan";
 			gpios = <&gpio0 12 1>;
 		};
 
@@ -95,10 +89,16 @@ 
 		#address-cells = <1>;
 		#size-cells = <0>;
 		poll-interval = <20>;
-		wps {
+		reset {
 			label = "reset";
 			gpios = <&gpio0 10 1>;
 			linux,code = <0x198>;
 		};
+		modeswitch {
+			label = "modeswitch";
+			gpios = <&gpio0 14 1>;
+			linux,code = <0x100>;
+			linux,input-type = <5>;
+		};
 	};
 };
diff --git a/target/linux/ramips/rt305x/profiles/hootoo.mk b/target/linux/ramips/rt305x/profiles/hootoo.mk
index 976226d..efd23ed 100644
--- a/target/linux/ramips/rt305x/profiles/hootoo.mk
+++ b/target/linux/ramips/rt305x/profiles/hootoo.mk
@@ -1,27 +1,17 @@ 
 #
-# Copyright (C) 2013 OpenWrt.org
+# Copyright (C) 2014 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
 
-
 define Profile/HT-TM02
-	NAME:=HOOTOO HT-TM02
-	PACKAGES:=\
-		wpad-mini \
-		kmod-ledtrig-netdev kmod-ledtrig-timer kmod-leds-gpio kmod-ledtrig-default-on \
-		kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-net usbutils \
-		kmod-scsi-core kmod-scsi-generic kmod-fs-ext4 \
-		kmod-usb-storage kmod-usb-storage-extras block-mount \
-		kmod-usb-serial kmod-usb-serial-ftdi kmod-gpio-button-hotplug \
-		kmod-nls-cp437 kmod-nls-iso8859-1 kmod-nls-utf8 luci luci-mod-admin-full \
-		kmod-app-samba luci-theme-openwrt luci-proto-relay relayd nano \
-		fstools 
+	NAME:=HooToo HT-TM02
+	PACKAGES:=kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-ledtrig-usbdev
 endef
 
 define Profile/HT-TM02/Description
-	Package set for HOOTOO HT-TM02 board
+	Package set optimized for the HooToo HT-TM02.
 endef
 
 $(eval $(call Profile,HT-TM02))