Hi,

Just a couple of remarks inline, based on my knowledge about XM series.

W dniu 2018-11-15 o 13:32, Petr Štetiar pisze:
From: Petr Štetiar <[email protected]>

CPU: AR9342 SoC
RAM:     64 MB DDR2
Flash:    8 MB NOR SPI
Ports:  100 MBit (24V PoE in)
WLAN:   2.4 GHz
UART:     1 UART on PCB marked as J1 with 115200 8N1 config
LEDs:       Power, Ethernet, WPS, USB, RF 2.4G, RF 5G
Buttons:    Reset

UART connection details

   .---------------------------------.
   |                                 |
[ETH]          J1                 [ANT]
   |    o VCC o RX o TX o GND        |
   `---------------------------------'

Flashing instructions

  A) Serial console, U-Boot and TFTP

    1. Connect to serial header J1 on the PCB
    2. Power on device and enter U-Boot console
    3. Set up TFTP server serving an OpenWrt initramfs build
    4. Load initramfs build using the command tftpboot in the U-Boot cli
    5. Boot the loaded image using the command bootm
    6. Copy squashfs OpenWrt sysupgrade build to the booted device
    7. Use mtd to write sysupgrade to partition "firmware"
    8. Reboot and enjoy

  B) Sysupgrade over SSH in airOS v6.1.7

    1. Upgrade or downgrade airOS to v6.1.7
    2. git clone 
https://github.com/true-systems/ubnt-bullet-m2hp-openwrt-flashing
    3. cd ubnt-bullet-m2hp-openwrt-flashing
    4. less README.md
    5. make flash 
FW_UBNT=/path/to/your/openwrt-ath79-generic-ubnt_bullet-m2hp-squashfs-sysupgrade.bin

Signed-off-by: Petr Štetiar <[email protected]>
---
  target/linux/ath79/base-files/etc/board.d/01_leds  |  1 +
  .../linux/ath79/base-files/etc/board.d/02_network  |  1 +
  target/linux/ath79/dts/ar9342_ubnt_bullet-m2hp.dts | 66 ++++++++++++++++
  target/linux/ath79/dts/ar9342_ubnt_xw.dtsi         | 88 ++++++++++++++++++++++
  target/linux/ath79/image/generic-ubnt.mk           | 16 ++++
  5 files changed, 172 insertions(+)
  create mode 100644 target/linux/ath79/dts/ar9342_ubnt_bullet-m2hp.dts
  create mode 100644 target/linux/ath79/dts/ar9342_ubnt_xw.dtsi

diff --git a/target/linux/ath79/base-files/etc/board.d/01_leds 
b/target/linux/ath79/base-files/etc/board.d/01_leds
index f04eb7f..281686e 100755
--- a/target/linux/ath79/base-files/etc/board.d/01_leds
+++ b/target/linux/ath79/base-files/etc/board.d/01_leds
@@ -94,6 +94,7 @@ tplink,tl-wr841-v11)
        ucidef_set_led_switch "lan4" "LAN4" "tp-link:green:lan4" "switch0" 
"0x02"
        ;;
  ubnt,bullet-m|\
+ubnt,bullet-m2hp|\
  ubnt,nano-m|\
  ubnt,rocket-m)
        ucidef_set_rssimon "wlan0" "200000" "1"
diff --git a/target/linux/ath79/base-files/etc/board.d/02_network 
b/target/linux/ath79/base-files/etc/board.d/02_network
index 5f02c57..8556bd3 100755
--- a/target/linux/ath79/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/base-files/etc/board.d/02_network
@@ -22,6 +22,7 @@ ath79_setup_interfaces()
        tplink,tl-wa901nd-v2|\
        tplink,tl-wr703n|\
        ubnt,bullet-m|\
+       ubnt,bullet-m2hp|\
I'd call it ubnt,bullet-m-xw, as this patch will very likely support Bullet-M5HP also.
        ubnt,lap-120|\
        ubnt,nanostation-ac-loco|\
        ubnt,rocket-m|\
diff --git a/target/linux/ath79/dts/ar9342_ubnt_bullet-m2hp.dts 
b/target/linux/ath79/dts/ar9342_ubnt_bullet-m2hp.dts
new file mode 100644
index 0000000..2e978cf
--- /dev/null
+++ b/target/linux/ath79/dts/ar9342_ubnt_bullet-m2hp.dts
@@ -0,0 +1,66 @@
+// SPDX-License-Identifier: GPL-2.0
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+#include "ar9342_ubnt_xw.dtsi"
+
+/ {
+       compatible = "ubnt,bullet-m2hp", "ubnt,xw";
+       model = "Ubiquiti Bullet M2HP (XW)";
+
+       gpio-leds {
+               compatible = "gpio-leds";
+
+               link1 {
+                       label = "ubnt:red:link1";
+                       gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
+               };
+
+               link2 {
+                       label = "ubnt:orange:link2";
+                       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+               };
+
+               link3 {
+                       label = "ubnt:green:link3";
+                       gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
+               };
+
+               link4 {
+                       label = "ubnt:green:link4";
+                       gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+               };
+       };
+};

Shouldn't those LEDs be defined in ar9342_ubnt_xw.dtsi?
AFAIK all XW boards (Bullet, Nano, Rocket) use same LED configurations, like in XM target also. Please take a look at ath79 device tree for XM boards and for board file for XW in ar71xx.

+
+&mdio0 {
+       status = "okay";
+
+       phy-mask = <4>;
+       phy4: ethernet-phy@4 {
+               phy-mode = "rgmii";
+               reg = <4>;
+       };
+};
+
+&eth0 {
+       status = "okay";
+
+       pll-data = <0x06000000 0x00000101 0x00001313>;
+       mtd-mac-address = <&eeprom 0x0>;
+
+       phy-mode = "rgmii";
+       phy-handle = <&phy4>;
+
+       gmac-config {
+               device = <&gmac>;
+               rxd-delay = <3>;
+               rxdv-delay = <3>;
+       };
+};
+
+&eth1 {
+       status = "disabled";
+};
diff --git a/target/linux/ath79/dts/ar9342_ubnt_xw.dtsi 
b/target/linux/ath79/dts/ar9342_ubnt_xw.dtsi
new file mode 100644
index 0000000..c5ae5df
--- /dev/null
+++ b/target/linux/ath79/dts/ar9342_ubnt_xw.dtsi
@@ -0,0 +1,88 @@
+// SPDX-License-Identifier: GPL-2.0
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+#include "ar9344.dtsi"
+
+/ {
+       compatible = "ubnt,xw", "qca,ar9342";
+       model = "Ubiquiti Networks XW board";
+
+       keys {
+               compatible = "gpio-keys";
+
+               reset {
+                       label = "Reset button";
+                       linux,code = <KEY_RESTART>;
+                       gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
+                       debounce-interval = <60>;
+               };
+       };
+};
+
+&ref {
+       clock-frequency = <40000000>;
+};
+
+&uart {
+       status = "okay";
+};
+
+&gpio {
+       status = "okay";
+};
+
+&spi {
+       status = "okay";
+       num-cs = <1>;
+
+       flash@0 {
+               compatible = "jedec,spi-nor";
+               reg = <0>;
+               spi-max-frequency = <25000000>;
+
+               partitions {
+                       compatible = "fixed-partitions";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+
+                       partition@0 {
+                               label = "u-boot";
+                               reg = <0x000000 0x040000>;
+                               read-only;
+                       };
+
+                       partition@40000 {
+                               label = "u-boot-env";
+                               reg = <0x040000 0x010000>;
+                               read-only;
+                       };
+
+                       partition@50000 {
+                               label = "firmware";
+                               reg = <0x050000 0x760000>;
+                       };
+
+                       partition@fb0000 {
+                               label = "cfg";
+                               reg = <0x7b0000 0x040000>;
+                               read-only;
+                       };
+
+                       eeprom: partition@ff0000 {
+                               label = "EEPROM";
+                               reg = <0x7f0000 0x010000>;
+                               read-only;
+                       };
+               };
+       };
+};
+
+&wmac {
+       status = "okay";
+
+       qca,disable-5ghz;
Couldn't the upper be dropped to support M5HP also? On XM targets the radio band is autodetected based on calibration data. Which not-so-long ago wasn't available at all, as calibration data had to be extracted in userspace on first boot.
+       mtd-cal-data = <&eeprom 0x1000>;
+       mtd-mac-address = <&eeprom 0x1002>;
+};
diff --git a/target/linux/ath79/image/generic-ubnt.mk 
b/target/linux/ath79/image/generic-ubnt.mk
index bb86c8b..d12a32e 100644
--- a/target/linux/ath79/image/generic-ubnt.mk
+++ b/target/linux/ath79/image/generic-ubnt.mk
@@ -63,6 +63,15 @@ define Device/ubnt-wa
    ATH_SOC := ar9342
  endef
+define Device/ubnt-xw
+  $(Device/ubnt)
+  UBNT_TYPE := XW
+  UBNT_CHIP := ar934x
+  UBNT_BOARD := XM
+  UBNT_VERSION := 6.0.4
+  ATH_SOC := ar9342
+endef
+
  define Device/ubnt_bullet-m
    $(Device/ubnt-xm)
    DEVICE_TITLE := Ubiquiti Bullet-M
@@ -70,6 +79,13 @@ define Device/ubnt_bullet-m
  endef
  TARGET_DEVICES += ubnt_bullet-m
+define Device/ubnt_bullet-m2hp
+  $(Device/ubnt-xw)
+  DEVICE_TITLE := Ubiquiti Bullet M2HP
+  SUPPORTED_DEVICES += bullet-m2hp
+endef
+TARGET_DEVICES += ubnt_bullet-m2hp
+
Same as before, I'd call it ubnt_bullet-m-xw, as this patchset should automatically support Bullet-M5HP also.
  define Device/ubnt_rocket-m
    $(Device/ubnt-xm)
    DEVICE_TITLE := Ubiquiti Rocket-M

With kind regards,
Lech


_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to