openwrt/target/linux/realtek/image/Makefile
Hauke Mehrtens 0fc789b724 realtek: Add ZyXEL GS1900-8
The ZyXEL GS1900-8 is a 8 port switch without any PoE functionality or
SFP ports, but otherwise similar to the other GS1900 switches.

Specifications
--------------
* Device:    ZyXEL GS1900-8 v1.2
* SoC:       Realtek RTL8380M 500 MHz MIPS 4KEc
* Flash:     Macronix MX25L12835F 16 MiB
* RAM:       Nanya NT5TU128M8GE-AC 128 MiB DDR2 SDRAM
* Ethernet:  8x 10/100/1000 Mbit
* LEDs:      1 PWR LED (green, not configurable)
             1 SYS LED (green, configurable)
             8 ethernet port status LEDs (green, SoC controlled)
* Buttons:   1 on-off glide switch at the back (not configurable)
             1 reset button at the right side, behind the air-vent
               (not configurable)
             1 reset button on front panel (configurable)
* Power      12V 1A barrel connector
* UART:      1 serial header (JP2) with populated standard pin connector on
             the left side of the PCB, towards the back. Pins are labelled:
             + VCC (3.3V)
             + TX (really RX)
             + RX (really TX)
             + GND
             the labelling is done from the usb2serial connector's point of
             view, so RX/ TX are mixed up.

Serial connection parameters for both devices: 115200 8N1.

Installation
------------
Instructions are identical to those for the GS1900-10HP and GS1900-8HP.

* Configure your client with a static 192.168.1.x IP (e.g. 192.168.1.10).
* Set up a TFTP server on your client and make it serve the initramfs
  image.
* Connect serial, power up the switch, interrupt U-boot by hitting the
  space bar, and enable the network:
  > rtk network on
* Since the GS1900-10HP is a dual-partition device, you want to keep the
  OEM firmware on the backup partition for the time being. OpenWrt can
  only boot off the first partition anyway (hardcoded in the DTS). To
  make sure we are manipulating the first partition, issue the following
  commands:
  > setsys bootpartition 0
  > savesys
* Download the image onto the device and boot from it:
  > tftpboot 0x84f00000 192.168.1.10:openwrt-realtek-generic-zyxel_gs1900-8-initramfs-kernel.bin
  > bootm
* Once OpenWrt has booted, scp the sysupgrade image to /tmp and flash it:
  > sysupgrade /tmp/openwrt-realtek-generic-zyxel_gs1900-8-squashfs-sysupgrade.bin

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit e6ba970b6e)
2021-04-18 12:06:18 +02:00

129 lines
3.0 KiB
Makefile

# SPDX-License-Identifier: GPL-2.0-only
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
KERNEL_LOADADDR = 0x80000000
KERNEL_ENTRY = 0x80000400
define Build/zyxel-vers
( echo VERS;\
for hw in $(1); do\
echo -n "V9.99($$hw.0) | ";\
date -d @$(SOURCE_DATE_EPOCH) +%m/%d/%Y;\
done ) >> $@
endef
define Device/Default
PROFILES = Default
KERNEL := kernel-bin | append-dtb | gzip | uImage gzip
KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | uImage gzip
DEVICE_DTS_DIR := ../dts
DEVICE_DTS = $$(SOC)_$(1)
IMAGES := sysupgrade.bin
IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs | pad-rootfs | \
append-metadata | check-size
endef
# "NGE" refers to the uImage magic
define Device/netgear_nge
KERNEL := kernel-bin | append-dtb | lzma | uImage lzma
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
SOC := rtl8380
IMAGE_SIZE := 14848k
UIMAGE_MAGIC := 0x4e474520
DEVICE_VENDOR := NETGEAR
endef
define Device/allnet_all-sg8208m
SOC := rtl8382
IMAGE_SIZE := 7168k
DEVICE_VENDOR := ALLNET
DEVICE_MODEL := ALL-SG8208M
UIMAGE_MAGIC := 0x00000006
UIMAGE_NAME := 2.2.2.0
endef
TARGET_DEVICES += allnet_all-sg8208m
define Device/d-link_dgs-1210
SOC := rtl8382
IMAGE_SIZE := 13824k
DEVICE_VENDOR := D-Link
endef
define Device/d-link_dgs-1210-10p
$(Device/d-link_dgs-1210)
DEVICE_MODEL := DGS-1210-10P
DEVICE_PACKAGES += lua-rs232
endef
TARGET_DEVICES += d-link_dgs-1210-10p
define Device/d-link_dgs-1210-16
$(Device/d-link_dgs-1210)
DEVICE_MODEL := DGS-1210-16
endef
TARGET_DEVICES += d-link_dgs-1210-16
define Device/d-link_dgs-1210-28
$(Device/d-link_dgs-1210)
DEVICE_MODEL := DGS-1210-28
endef
TARGET_DEVICES += d-link_dgs-1210-28
define Device/netgear_gs108t-v3
$(Device/netgear_nge)
DEVICE_MODEL := GS108T
DEVICE_VARIANT := v3
endef
TARGET_DEVICES += netgear_gs108t-v3
define Device/netgear_gs110tpp-v1
$(Device/netgear_nge)
DEVICE_MODEL := GS110TPP
DEVICE_VARIANT := v1
endef
TARGET_DEVICES += netgear_gs110tpp-v1
define Device/zyxel_gs1900
SOC := rtl8380
IMAGE_SIZE := 6976k
DEVICE_VENDOR := ZyXEL
UIMAGE_MAGIC := 0x83800000
KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers $$$$(ZYXEL_VERS) | \
uImage gzip
endef
define Device/zyxel_gs1900-10hp
$(Device/zyxel_gs1900)
DEVICE_MODEL := GS1900-10HP
ZYXEL_VERS := AAZI
endef
TARGET_DEVICES += zyxel_gs1900-10hp
define Device/zyxel_gs1900-8
$(Device/zyxel_gs1900)
DEVICE_MODEL := GS1900-8
ZYXEL_VERS := AAHH
endef
TARGET_DEVICES += zyxel_gs1900-8
define Device/zyxel_gs1900-8hp-v1
$(Device/zyxel_gs1900)
DEVICE_MODEL := GS1900-8HP
DEVICE_VARIANT := v1
ZYXEL_VERS := AAHI
DEVICE_PACKAGES += lua-rs232
endef
TARGET_DEVICES += zyxel_gs1900-8hp-v1
define Device/zyxel_gs1900-8hp-v2
$(Device/zyxel_gs1900)
DEVICE_MODEL := GS1900-8HP
DEVICE_VARIANT := v2
ZYXEL_VERS := AAHI
DEVICE_PACKAGES += lua-rs232
endef
TARGET_DEVICES += zyxel_gs1900-8hp-v2
$(eval $(call BuildImage))