openwrt/target/linux
Linus Walleij 33af3a9f7e
Some checks are pending
Build Kernel / Build all affected Kernels (push) Waiting to run
gemini: add support for Teltonika RUT104
Add support for Teltonika RUT104 3G HSUPA router.

This has been supported since about 20 years in the upstream Linux
kernel after initial contribution by Paulius Zaleckas from Teltonika.
It has some historical significance because I think it was one of the
first Teltonika Linux-based 3G routers.

Installation from scratch is done using the UART:

- UART soldering instructions with picture are available on the
  Link: (see bottom of committ message).
- First *diet down* your OpenWrt build as minimal as you can,
  I really mean this, delete everything you don't need. There
  is not much RAM to go around.
- Extract the "factory" firmare which is essentially just a tar.gz
  archive:
  tar xvfz openwrt-gemini-generic-teltonika_rut104-squashfs-factory.bin

From the RedBoot menu:

- Do NOT UNDER ANY CIRCUMSTANCE try to use the "upgrade firmare" (Z)
  alternative!
- Extract the three files zImage, rd.gz and hddapp.tgz from the archive.
- Put these three files in the root directory of your TFTP server
  (usually /var/lib/tftpboot)
- Hit 6 and set up the IP address for your device (e.g. 169.254.1.2 if
  you're using local link).
- Hit Y to "Upgrade Kernel", enter TFTP and your hosts IP number and
  type zImage. The kernel should upload and flash.
- Hit R to "Upgrade Ramdisk", enter TFTP and your hosts IP number and
  type rd.gz. The "ramdisk" (i.e. the second part of the kernel)
  should upload and flash.
- Hit A to "Upgrade Application", enter TFTP and your hosts IP number
  and type hddapp.tgz. The "application" (i.e. the root filesystem)
  should upload and flash.

This has a 1024KB Kernel partition, just extend the existing Make
functions to handle also this. The initramfs is 0x500000 instead
of 0x600000 for this one so add a parameter explicitly parameterizing
the initramfs size.

Mark non-default due to the small RAM and flash on this device.

I currently have no idea how to actually talk to the modem on this
thing but it is probably using the high-speed "modem UART" of the
Gemini. I'd be willing to help whoever wants to experiment with
it.

Link: https://dflund.se/~triad/krad/teltonika/
Link: https://github.com/openwrt/openwrt/pull/22045
Signed-off-by: Linus Walleij <linusw@kernel.org>
2026-02-17 11:27:22 +01:00
..
airoha kernel: bump 6.12 to 6.12.71 2026-02-14 18:30:02 +01:00
apm821xx Revert "apm821xx: rename pciex to pcie" 2026-02-10 14:54:23 +01:00
armsr kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
at91 kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
ath79 ath79: add env-size for Sitecom WLR-7100 / WLR-8100 u-boot-env 2026-02-17 01:36:52 +01:00
bcm27xx kernel: bump 6.12 to 6.12.70 2026-02-14 18:30:02 +01:00
bcm47xx kernel: bump 6.12 to 6.12.64 2026-01-15 01:22:47 +01:00
bcm53xx bcm53xx: fix target name of meraki_mx64-a0 2026-02-17 01:38:01 +01:00
bcm4908 kernel: disable non layout u-boot,env 2025-11-28 01:20:33 +01:00
bmips kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
d1 d1: Enable LED driver for D1 builds 2026-01-23 10:35:36 +01:00
econet econet: en7528: add PCIe and WiFi support 2026-02-15 01:12:52 +01:00
gemini gemini: add support for Teltonika RUT104 2026-02-17 11:27:22 +01:00
generic Revert "kernel: revert ip6_tunnel use skb_vlan_inet_prepare() in __ip6_tnl_rcv()" 2026-02-15 13:21:44 +01:00
imx imx: drop support for kernel 6.6 2025-11-22 10:11:52 +01:00
ipq40xx ipq40xx: move Device DTS to dedicated DTS directory 2026-02-16 13:15:08 +01:00
ipq806x ipq806x: move Device DTS to dedicated DTS directory 2026-02-16 13:14:49 +01:00
ixp4xx ixp4xx: select the GPIO keys input package 2026-01-28 18:59:47 +01:00
kirkwood kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
lantiq lantiq: handle EPROBE_DEFER for MAC 2026-02-16 21:26:05 +01:00
layerscape kernel: bump 6.12 to 6.12.71 2026-02-14 18:30:02 +01:00
loongarch64 loongarch64: set PREEMPT_NONE as default preemption model 2026-01-24 22:54:29 +01:00
malta malta: convert to Device macro image building 2026-02-11 00:08:34 +01:00
mediatek mediatek: add support for Keenetic/Netcraze (K/N)AP-630 2026-02-14 00:34:16 +01:00
microchipsw microchipsw: lan969x: include ip-bridge and dcb tools 2026-01-25 22:10:22 +01:00
mpc85xx kernel: reorder configuration options 2026-01-26 23:57:25 +01:00
mvebu mvebu: add depends for Turris MOX boards 2026-02-12 22:23:29 +01:00
mxs kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
octeon kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
omap kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
pistachio kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
qoriq package: uboot-qoriq: fix T4240RDB u-boot selection 2026-01-12 13:59:30 +01:00
qualcommax qualcommax: move Device DTS to dedicated DTS directory 2026-02-16 13:14:13 +01:00
qualcommbe qualcommbe: move Device DTS to dedicated DTS directory 2026-02-16 13:14:32 +01:00
ramips ramips: remove obsolete SPI flash nodes after kernel fix 2026-02-16 10:47:31 +01:00
realtek realtek: dsa: move port_ignore constant to config 2026-02-16 15:48:22 +01:00
rockchip kernel: bump 6.12 to 6.12.69 2026-02-07 17:20:33 +01:00
sifiveu kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
siflower treewide: remove of_platform.h include 2026-02-04 00:50:06 +01:00
starfive kernel: net: phy: realtek: backport upstream commits 2026-01-19 13:51:41 +00:00
stm32 kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
sunxi kernel: reorder configuration options 2026-01-26 23:57:25 +01:00
tegra kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
uml kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
x86 x86: base-files add support for Sophos 210r3 and 230r2 2026-02-12 23:55:29 +01:00
zynq zynq: drop support for kernel 6.6 2025-11-25 17:27:24 +01:00
Makefile linux: fix missing default packages in profiles.json 2024-11-17 19:29:06 +01:00