Does anyone know if there's full GPL source anywhere for the SF(T)1200?
The driver for the switch merged into net-next in October, and I hacked it into a 6.12 build. Unsurprisingly it didn't work, but the part might be in a strange state before the kernel starts. I'm not going to do too much on it until the 6.18 work is done though since that's going to be a much cleaner backport.
For anyone interested, this is the bootlog:
Booting...
IROM DONE!
SiFlower SFAX8 Bootloader (Apr 11 2024 - 15:32:29)
ddr3 sgg64m16v init start
MEM_PHY_CLK_DIV = 0x1
setting extended temperature
DDR training success
now ddr frequency is 533MHz!!!
ddr test
DR1BW a0000000 OK
DR1BR OK
DR2BW a0000000 OK
DR2BR OK
DR4BW a0000000 OK
DR4BR OK
DR8BW a0000000 OK
DR8BR OK
Boot from spi-nand
SPI-NAND got mfr_id: c8, dev_id: 51
U-image: U-Boot 2016.07-rc2 for sfa28_gl, size is 354797
loaded - jumping to U-Boot 0xa0000000...
U-Boot 2016.07-rc2 (Apr 11 2024 - 15:32:32 +0800)
Board: MIPS sfa18 A28 FULLMASK glt1200
Watchdog enabled
DRAM: 128 MiB
*** Warning - bad CRC, using default environment
In: serial@8300000
Out: serial@8300000
Err: serial@8300000
Net: Registering sfa18 gmac
read version 0x1037
trigger eswitch hw reset, gpio:0
End intel_rgmii_init
sf_eth1
Warning: sf_eth1 (eth0) using random MAC address - 56:2b:3f:41:8b:d7
Setting bus to 0
Hit 'gl' to stop autoboot: 2
sfa28 # setenv serverip 192.168.1.100; tftpboot openwrt-siflower-sf19a2890-glinet_gl-sft1200-initramfs-kernel.bin
Using sf_eth1 device
TFTP from server 192.168.1.100; our IP address is 192.168.1.1
Filename 'openwrt-siflower-sf19a2890-glinet_gl-sft1200-initramfs-kernel.bin'.
Load address: 0x81000000
Loading: now vlan tag is 3
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
##############################################
824.2 KiB/s
done
Bytes transferred = 5445639 (531807 hex)
sfa28 # bootm 0x81000000
## Booting kernel from Legacy Image at 81000000 ...
Image Name: MIPS OpenWrt Linux-6.12.60
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 5445575 Bytes = 5.2 MiB
Load Address: 80100000
Entry Point: 80100000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
All resets are held!
[ 0.000000] Linux version 6.12.60 (user@connors) (mipsel-openwrt-linux-musl-gcc (OpenWrt GCC 14.3.0 r32056-31f5fc8fea) 14.3.0, GNU ld (GNU Binutils) 2.44) #0 SMP Thu Dec 11 06:39:34 2025
[ 0.000000] CPU0 revision is: 5301a128 (MIPS interAptiv (multi))
[ 0.000000] FPU revision is: 0173a000
[ 0.000000] MIPS: machine is GL-SFT1200
[ 0.000000] earlycon: pl11 at MMIO 0x18300000 (options '115200n8')
[ 0.000000] printk: legacy bootconsole [pl11] enabled
[ 0.000000] User-defined physical RAM map overwrite
[ 0.000000] Initrd not found or empty - disabling initrd
[ 0.000000] OF: reserved mem: 0x01f00000..0x020fffff (2048 KiB) map non-reusable wlandsp@1f00000
[ 0.000000] OF: reserved mem: 0x02100000..0x022fffff (2048 KiB) map non-reusable wlandsp@2100000
[ 0.000000] VPE topology {2,2} total 4
[ 0.000000] Primary instruction cache 16kB, VIPT, 4-way, linesize 32 bytes.
[ 0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[ 0.000000] MIPS secondary cache 128kB, 8-way, linesize 32 bytes.
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000000000000-0x0000000007ffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x0000000007ffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff]
[ 0.000000] percpu: Embedded 13 pages/cpu s23504 r8192 d21552 u53248
[ 0.000000] pcpu-alloc: s23504 r8192 d21552 u53248 alloc=13*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[ 0.000000] Kernel command line: earlycon mem=128M
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes, linear)
[ 0.000000] Writing ErrCtl register=00000000
[ 0.000000] Readback ErrCtl register=00000000
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 32768
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] rcu: Hierarchical RCU implementation.
[ 0.000000] Tracing variant of Tasks RCU enabled.
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[ 0.000000] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4.
[ 0.000000] NR_IRQS: 256
[ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[ 0.000000] clocksource: GIC: mask: 0xffffffffffffffff max_cycles: 0xb881274fa3, max_idle_ns: 440795210636 ns
[ 0.000005] sched_clock: 64 bits at 800MHz, resolution 1ns, wraps every 4398046511103ns
[ 0.008184] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 4778151116 ns
[ 0.017489] Calibrating delay loop... 531.66 BogoMIPS (lpj=2658304)
[ 0.083822] pid_max: default: 32768 minimum: 301
[ 0.099835] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.107266] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.128059] rcu: Hierarchical SRCU implementation.
[ 0.132969] rcu: Max phase no-delay instances is 1000.
[ 0.139186] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
[ 0.148755] smp: Bringing up secondary CPUs ...
[ 0.154881] Primary instruction cache 16kB, VIPT, 4-way, linesize 32 bytes.
[ 0.154947] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[ 0.154968] MIPS secondary cache 128kB, 8-way, linesize 32 bytes.
[ 0.155056] CPU1 revision is: 5301a128 (MIPS interAptiv (multi))
[ 0.155077] FPU revision is: 0173a000
[ 0.268616] Counter synchronization [CPU#0 -> CPU#1]:
[ 0.304141] Measured 8 cycles counter warp between CPUs
[ 0.307070] Primary instruction cache 16kB, VIPT, 4-way, linesize 32 bytes.
[ 0.307132] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[ 0.307151] MIPS secondary cache 128kB, 8-way, linesize 32 bytes.
[ 0.307236] CPU2 revision is: 5301a128 (MIPS interAptiv (multi))
[ 0.307256] FPU revision is: 0173a000
[ 0.426402] Counter synchronization [CPU#0 -> CPU#2]: passed
[ 0.469737] Primary instruction cache 16kB, VIPT, 4-way, linesize 32 bytes.
[ 0.469798] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[ 0.469817] MIPS secondary cache 128kB, 8-way, linesize 32 bytes.
[ 0.469904] CPU3 revision is: 5301a128 (MIPS interAptiv (multi))
[ 0.469925] FPU revision is: 0173a000
[ 0.588000] Counter synchronization [CPU#0 -> CPU#3]: passed
[ 0.624480] smp: Brought up 1 node, 4 CPUs
[ 0.631269] Memory: 102700K/131072K available (7508K kernel code, 640K rwdata, 1652K rodata, 11632K init, 217K bss, 27308K reserved, 0K cma-reserved)
[ 0.651630] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.661814] futex hash table entries: 1024 (order: 3, 32768 bytes, linear)
[ 0.675603] pinctrl core: initialized pinctrl subsystem
[ 0.685684] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.693124] FPU Affinity set after 10620 emulations
[ 0.700612] Serial: AMBA PL011 UART driver
[ 0.734657] pps_core: LinuxPPS API ver. 1 registered
[ 0.739859] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.749274] PTP clock support registered
[ 0.756709] clocksource: Switched to clocksource GIC
[ 0.773731] NET: Registered PF_INET protocol family
[ 0.779249] IP idents hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.787903] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[ 0.796452] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[ 0.804477] TCP established hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.812369] TCP bind hash table entries: 1024 (order: 2, 16384 bytes, linear)
[ 0.819765] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.827781] MPTCP token hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 0.835570] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[ 0.842372] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[ 0.850958] NET: Registered PF_UNIX/PF_LOCAL protocol family
[ 0.860659] workingset: timestamp_bits=14 max_order=15 bucket_order=1
[ 0.873276] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.879415] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.938027] loop: module loaded
[ 0.955444] NET: Registered PF_INET6 protocol family
[ 0.967814] Segment Routing with IPv6
[ 0.971828] In-situ OAM (IOAM) with IPv6
[ 0.976118] NET: Registered PF_PACKET protocol family
[ 0.982520] 8021q: 802.1Q VLAN Support v1.8
[ 1.051589] ssp-pl022 18202000.spi: ARM PL022 driver, device ID: 0x00a41022
[ 1.059046] ssp-pl022 18202000.spi: mapped registers from 0x18202000 to (ptrval)
[ 1.069220] 18300000.serial: ttyAMA0 at MMIO 0x18300000 (irq = 20, base_baud = 0) is a PL011 rev3
[ 1.078502] printk: legacy console [ttyAMA0] enabled
[ 1.078502] printk: legacy console [ttyAMA0] enabled
[ 1.088757] printk: legacy bootconsole [pl11] disabled
[ 1.088757] printk: legacy bootconsole [pl11] disabled
[ 1.107411] ssp-pl022 18202000.spi: ARM PL022 driver, device ID: 0x00a41022
[ 1.114681] ssp-pl022 18202000.spi: mapped registers from 0x18202000 to (ptrval)
[ 1.126122] spi-nand spi0.0: GigaDevice SPI NAND was found.
[ 1.132084] spi-nand spi0.0: 128 MiB, block size: 128 KiB, page size: 2048, OOB size: 128
[ 1.141266] 6 fixed-partitions partitions found on MTD device spi0.0
[ 1.148536] Creating 6 MTD partitions on "spi0.0":
[ 1.153425] 0x000000000000-0x000000020000 : "spl-loader"
[ 1.161404] 0x000000020000-0x000000080000 : "u-boot"
[ 1.173092] 0x000000080000-0x0000000a0000 : "u-boot-env"
[ 1.182047] 0x0000000a0000-0x0000000c0000 : "factory"
[ 1.191548] 0x0000000c0000-0x000007ec0000 : "firmware"
[ 1.726802] random: crng init done
[ 1.979064] 2 uimage-fw partitions found on MTD device firmware
[ 1.985078] Creating 2 MTD partitions on "firmware":
[ 1.990136] 0x000000000000-0x000000400000 : "kernel"
[ 1.997032] 0x000000400000-0x000007e00000 : "ubi"
[ 2.004799] 0x000007e00000-0x000007e40000 : "logs"
[ 2.022619] sf19a2890-gmac 10800000.ethernet: IRQ sfty not found
[ 2.032293] sf19a2890-gmac 10800000.ethernet: User ID: 0x10, Synopsys ID: 0x37
[ 2.039707] sf19a2890-gmac 10800000.ethernet: DWMAC1000
[ 2.045045] sf19a2890-gmac 10800000.ethernet: DMA HW capability register supported
[ 2.052790] sf19a2890-gmac 10800000.ethernet: RX Checksum Offload Engine supported
[ 2.060473] sf19a2890-gmac 10800000.ethernet: COE Type 2
[ 2.065808] sf19a2890-gmac 10800000.ethernet: TX Checksum insertion supported
[ 2.073016] sf19a2890-gmac 10800000.ethernet: Wake-Up On Lan supported
[ 2.079611] sf19a2890-gmac 10800000.ethernet: Enhanced/Alternate descriptors
[ 2.086719] sf19a2890-gmac 10800000.ethernet: Enabled extended descriptors
[ 2.093613] sf19a2890-gmac 10800000.ethernet: Ring mode enabled
[ 2.099579] sf19a2890-gmac 10800000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[ 2.281305] mxl-gsw1xx stmmac-0:1f: configuring for fixed/rgmii-id link mode
[ 2.295184] mxl-gsw1xx stmmac-0:1f: Link is Up - 1Gbps/Full - flow control off
[ 2.315276] mxl-gsw1xx stmmac-0:1f wan (uninitialized): PHY [stmmac-0:1f-mii:01] driver [Generic PHY] (irq=POLL)
[ 2.325775] mxl-gsw1xx stmmac-0:1f: nonfatal error -22 setting MTU to 1500 on port 1
[ 2.349085] mxl-gsw1xx stmmac-0:1f lan2 (uninitialized): PHY [stmmac-0:1f-mii:02] driver [Generic PHY] (irq=POLL)
[ 2.359590] mxl-gsw1xx stmmac-0:1f: nonfatal error -22 setting MTU to 1500 on port 2
[ 2.382513] mxl-gsw1xx stmmac-0:1f lan1 (uninitialized): PHY [stmmac-0:1f-mii:03] driver [Generic PHY] (irq=POLL)
[ 2.393000] mxl-gsw1xx stmmac-0:1f: nonfatal error -22 setting MTU to 1500 on port 3
[ 2.411017] sf19a2890-gmac 10800000.ethernet eth0: error -22 setting MTU to 1508 to include DSA overhead
[ 2.420850] DSA: tree 0 setup
[ 2.423888] mxl-gsw1xx stmmac-0:1f: probed GSWIP version 23 mod 0
[ 2.431155] clk: Disabling unused clocks
[ 2.469418] Freeing unused kernel image (initmem) memory: 11632K
[ 2.475513] This architecture does not have kernel memory protection.
[ 2.482044] Run /init as init process
[ 2.485729] with arguments:
[ 2.488725] /init
[ 2.491007] with environment:
[ 2.494149] HOME=/
[ 2.496510] TERM=linux
[ 3.018654] init: Console is alive
[ 3.022699] init: - watchdog -
[ 3.040649] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[ 3.051591] gpio_button_hotplug: loading out-of-tree module taints kernel.
[ 3.063288] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[ 3.078750] init: - preinit -
Cannot parse config file '/etc/fw_env.config': No such file or directory
Failed to find NVMEM device
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[ 7.873333] procd: - early -
[ 7.876939] procd: - watchdog -
[ 8.478283] procd: - watchdog -
[ 8.482076] procd: - ubus -
[ 8.644446] procd: - init -
Please press Enter to activate this console.
[ 9.199974] kmodloader: loading kernel modules from /etc/modules.d/*
[ 9.313026] PPP generic driver version 2.4.2
[ 9.320977] NET: Registered PF_PPPOX protocol family
[ 9.336356] kmodloader: done loading kernel modules from /etc/modules.d/*
[ 10.579901] urngd: v1.0.2 started.
[ 28.973646] sf19a2890-gmac 10800000.ethernet eth0: Register MEM_TYPE_PAGE_POOL RxQ-0
[ 28.985692] sf19a2890-gmac 10800000.ethernet eth0: No Safety Features support found
[ 28.993694] sf19a2890-gmac 10800000.ethernet eth0: No MAC Management Counters available
[ 29.002026] sf19a2890-gmac 10800000.ethernet eth0: IEEE 1588-2008 Advanced Timestamp supported
[ 29.011690] sf19a2890-gmac 10800000.ethernet eth0: registered PTP clock
[ 29.026786] sf19a2890-gmac 10800000.ethernet eth0: configuring for fixed/rgmii-id link mode
[ 29.036549] sf19a2890-gmac 10800000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[ 29.085494] mxl-gsw1xx stmmac-0:1f lan1: configuring for phy/internal link mode
[ 29.105093] br-lan: port 1(lan1) entered blocking state
[ 29.110626] br-lan: port 1(lan1) entered disabled state
[ 29.116095] mxl-gsw1xx stmmac-0:1f lan1: entered allmulticast mode
[ 29.122580] sf19a2890-gmac 10800000.ethernet eth0: entered allmulticast mode
[ 29.144512] mxl-gsw1xx stmmac-0:1f lan1: entered promiscuous mode
[ 29.151220] sf19a2890-gmac 10800000.ethernet eth0: entered promiscuous mode
[ 29.246083] mxl-gsw1xx stmmac-0:1f wan: configuring for phy/internal link mode