Re: [OpenWrt-Devel] [PATCH v3] ramips: Add support for Head Weblink HDRM200

2019-05-15 Thread Kristian Evensen
On Wed, May 15, 2019 at 12:42 PM Petr Štetiar  wrote:
> Yes, you're correct, I've missed this userspace GPIOs.

Thanks for confirming. I will submit a v4 during the afternoon.

BR,
Kristian

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH v3] ramips: Add support for Head Weblink HDRM200

2019-05-15 Thread Petr Štetiar
Kristian Evensen  [2019-05-15 12:34:48]:

> > so if I'm counting it right, you should probably remove i2c.
> 
> If I have understood the datasheet correctly, then i2c is required for
> two of the GPIOs exported in 03_gpio_switches (io1/GPIO#1 and
> io2/GPIO#2).

Yes, you're correct, I've missed this userspace GPIOs.

-- ynezz

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH v3] ramips: Add support for Head Weblink HDRM200

2019-05-15 Thread Kristian Evensen
Hi Petr,

Thanks for your feedback.

On Wed, May 15, 2019 at 12:17 PM Petr Štetiar  wrote:
> > In order to install OpenWRT, you first need to compile an initramfs
> > (ramdisk)-image for the device.
>
> This is no longer valid, right?

Correct, will remove it for v4.

>
> > --- a/target/linux/ramips/base-files/etc/board.d/01_leds
> > +++ b/target/linux/ramips/base-files/etc/board.d/01_leds
> > @@ -184,6 +184,9 @@ hc5861)
> >   ucidef_set_led_netdev "wifi5g" "wifi5g" "$boardname:blue:wlan5g" 
> > "wlan0"
> >   ucidef_set_led_netdev "wifi2g" "wifi2g" "$boardname:blue:wlan2g" 
> > "wlan1"
> >   ;;
> > +head-weblink,hdrm200)
> > + set_wifi_led "$boardname:green:wifi"
> > + ;;
>
> this could be grouped with other devices.

Thanks for spotting this.

> so if I'm counting it right, you should probably remove i2c.

If I have understood the datasheet correctly, then i2c is required for
two of the GPIOs exported in 03_gpio_switches (io1/GPIO#1 and
io2/GPIO#2).

BR,
Kristian

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH v3] ramips: Add support for Head Weblink HDRM200

2019-05-15 Thread Petr Štetiar
Kristian Evensen  [2019-05-10 18:26:22]:

I've one more comment for you to address

> + firmware: partition@5 {
> + compatible = "denx,uimage";
> + label = "firmware";
> + reg = <0x5 0xfb>;
> + };

...

> +define Device/head-weblink_hdrm200
> +  DTS := HDRM200
> +  IMAGE_SIZE := $(ralink_default_fw_size_16M)

ralink_default_fw_size_16M = 16121856 = 0xf6 which doesn't correspond with
your 0xfb.

-- ynezz

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH v3] ramips: Add support for Head Weblink HDRM200

2019-05-15 Thread Petr Štetiar
Kristian Evensen  [2019-05-10 18:26:22]:

> In order to install OpenWRT, you first need to compile an initramfs
> (ramdisk)-image for the device. 

This is no longer valid, right?

> --- a/target/linux/ramips/base-files/etc/board.d/01_leds
> +++ b/target/linux/ramips/base-files/etc/board.d/01_leds
> @@ -184,6 +184,9 @@ hc5861)
>   ucidef_set_led_netdev "wifi5g" "wifi5g" "$boardname:blue:wlan5g" "wlan0"
>   ucidef_set_led_netdev "wifi2g" "wifi2g" "$boardname:blue:wlan2g" "wlan1"
>   ;;
> +head-weblink,hdrm200)
> + set_wifi_led "$boardname:green:wifi"
> + ;;

this could be grouped with other devices.

> + gpios = < 19 GPIO_ACTIVE_LOW>;

pa group

> + gpios = < 14 GPIO_ACTIVE_HIGH>;

spi refclk group

> + gpios = < 0 GPIO_ACTIVE_LOW>;

wled group

> + gpios = < 12 GPIO_ACTIVE_LOW>;

uartf group

> + gpios = < 13 GPIO_ACTIVE_LOW>;

uartf group

> + {
> + state_default: pinctrl0 {
> + default {
> + ralink,group = "i2c", "uartf", "pa", "spi refclk",
> +"wled";

so if I'm counting it right, you should probably remove i2c.

-- ynezz

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH v3] ramips: Add support for Head Weblink HDRM200

2019-05-10 Thread Kristian Evensen
Head Weblink HDRM200 is a dual-sim router based on MT7620A. The detailed
specifications are:

- MT7620A (580MHz)
- 64MB RAM
- 16MB of flash (SPI NOR)
- 6x 10/100Mbps Ethernet (MT7620A built-in switch)
- 1x microSD slot
- 1x miniPCIe slot (only USB2.0 bus). Device is shipped with a SIMCOM
SIM7100E LTE modem.
- 2x SIM slots (standard size)
- 1x USB2.0 port
- 1x 2.4GHz wifi (rt2800)
- 1x 5GHz wifi (mt7612)
- 1x reset button
- 1x WPS button
- 3x GPIO-controllable LEDs
- 1x 10 pin terminal block (RS232, RS485, 4 x GPIO)

Tested:
- Ethernet switch
- Wifi
- USB slot
- SD card slot
- miniPCIe-slot
- sysupgrade
- reset button

Installation instructions:

Installing OpenWRT for the first time requires a bit of work, as the
board does not ship with OpenWRT. In addition, the bootloader
automatically reboots when installing an image over tftp.

In order to install OpenWRT, you first need to compile an initramfs
(ramdisk)-image for the device. Once the image is ready, you need to do
the following:

* Copy the initramfs-image to your tftp-root (default filename is
test.bin) and configure networking accordingly (default server IP is
10.10.10.3, client 10.10.10.123). Start your tftp server.
* Open the board and connect to UART. The pins are exposed and clearly
marked.
* Boot the board and press 1.
* Either use the default filename and client/server IP-addresses, or
specify your own.

The image should now be loaded to memory and board boot. If the router
reboots while the image is loading, you need to try again. Once the
board has booted, copy the sysupgrade-image to the router and run
sysupgrade in order to install OpenWRT to the flash.

Notes:

- You control which SIM slot to use by writing 0/1 to
/sys/class/gpio/sim_switch/value. In order for the change to take
effect, you can either use AT-commands (AT+CFUN) or power-cycle the
modem (write 0/1 to /sys/class/gpio/power_mpcie/value).
- RS485 is available on /dev/ttyS0.
- RS232 is available on /dev/ttyS1.
- The name of the ioX-gpios map to the labels on the casing.

Signed-off-by: Kristian Evensen 
---
v2->v3:

* Build initramfs automatically, which means that ramdisk is now enabled
the mt7620-target. Due to this change, an initramfs-image is built for all
deivces, but this seems to be ok when looking at other targets (mt7621)
(thanks Petr Štetiar).
* Use generic board/model detection, updated the match in 01_leds and
02_network (thanks Petr Štetiar).
* Changed the device/target device in the Makefile to match the
compatible-string in the DTS (thanks Petr Štetiar).
* Use the user-space gpio-switch alternative instead of gpio-export in
the DTS (thanks Petr Štetiar).
* Update name of flash node in DTS to the more generic "flash0" (thanks
Petr Štetiar)..
* Fix typo in commit message (mt7621->mt7612) (thanks Tom Psyborg).
* Added the QMI and option drivers, as well as uqmi, so that the modem
is available for use out of the box.

v1->v2:
* Add SPDX line to DTS (thanks Rafał Miłecki).
---
 .../ramips/base-files/etc/board.d/01_leds |   3 +
 .../ramips/base-files/etc/board.d/02_network  |   1 +
 .../base-files/etc/board.d/03_gpio_switches   |   8 +
 target/linux/ramips/dts/HDRM200.dts   | 188 ++
 target/linux/ramips/image/mt7620.mk   |   9 +
 target/linux/ramips/mt7620/target.mk  |   2 +-
 6 files changed, 210 insertions(+), 1 deletion(-)
 create mode 100644 target/linux/ramips/dts/HDRM200.dts

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 fa20ab0714..0799314f6d 100755
--- a/target/linux/ramips/base-files/etc/board.d/01_leds
+++ b/target/linux/ramips/base-files/etc/board.d/01_leds
@@ -184,6 +184,9 @@ hc5861)
ucidef_set_led_netdev "wifi5g" "wifi5g" "$boardname:blue:wlan5g" "wlan0"
ucidef_set_led_netdev "wifi2g" "wifi2g" "$boardname:blue:wlan2g" "wlan1"
;;
+head-weblink,hdrm200)
+   set_wifi_led "$boardname:green:wifi"
+   ;;
 hg255d)
set_wifi_led "$boardname:green:wlan"
ucidef_set_led_netdev "internet" "internet" "$boardname:green:internet" 
"eth0.2"
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 c2646876a2..b0037a0ce2 100755
--- a/target/linux/ramips/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/base-files/etc/board.d/02_network
@@ -314,6 +314,7 @@ ramips_setup_interfaces()
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
;;
hc5661|\
+   head-weblink,hdrm200|\
y1s)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "5:lan" "0:wan" "6@eth0"
diff --git a/target/linux/ramips/base-files/etc/board.d/03_gpio_switches 
b/target/linux/ramips/base-files/etc/board.d/03_gpio_switches
index 80e3c4c41f..fc376a4d1f 100755
--- a/target/linux/ramips/base-files/etc/board.d/03_gpio_switches
+++