René van Dorst
3e599f0e06
dhcp: de-__gptrput()-call in ip_opt()
2026-04-18 22:27:55 +02:00
René van Dorst
6c6d11ab33
dhcp: de-__gptrget()-call in dhcp_print_ip()
2026-04-18 22:20:46 +02:00
René van Dorst
791f68582d
httpd: de-__gptrget()-call in string_to_html()
2026-04-18 22:20:46 +02:00
René van Dorst
facc4afe40
uip: de-__gptrget()-call in timer_{set,reset,restart,exprired}()
2026-04-18 22:20:46 +02:00
René van Dorst
8134ca7ec7
uip: de-__gptrget()-call in uip_ipaddr_copy()
2026-04-18 22:20:46 +02:00
René van Dorst
642030c7b2
uip: de-__gptrget()-call in uip_add32()
2026-04-18 22:20:46 +02:00
René van Dorst
8324edc5f7
cmd_parser: Improve atoi_byte() and atoi_short().
...
Because no memory type is specified to the reference location, sdcc is
using a helper function to access the location. But sdcc is using a
register to tell the helper function which memory-type is used.
This registers must also be preseved until all access to that location is done.
2026-04-18 22:19:35 +02:00
René van Dorst
1a5208110c
Merge pull request #195 from logicog/fix_config_reading
...
Fix reading configuration over flash block boundaries
2026-04-17 11:46:03 +02:00
René van Dorst
c4368c68be
Merge pull request #189 from bstreiff/pcb23_v2_2
...
Add support for keepLink KP-9000-9XHML-X (2M-PCB23-V2.2 version)
Rename machine keepLink KP-9000-9XHML-X (2M-PCB23-V3.1 version)
2026-04-05 14:04:10 +00:00
René van Dorst
97e73d95aa
Merge pull request #183 from janh/fix-i2c-and-sfp-ddm
...
Fix I2C access and SFP diagnostic monitoring in web interface
2026-03-30 17:21:51 +00:00
René van Dorst
2eb6bac4a5
Merge pull request #186 from UAb5eSMn/machine_fix
...
Fix compilation issue for machine HG0402XG_V1_1
2026-03-29 18:16:17 +00:00
René van Dorst
73f92f2e12
Add SWGT024_V2_0 Unmanaged pinout and machine type.
2026-03-29 16:35:31 +02:00
René van Dorst
bfab8cbba3
Rename MACHINE_SWGT024_V2_0 to MACHINE_SWGT024_V2_0_MANAGED.
...
So we can support other versions too.
2026-03-29 16:13:38 +02:00
René van Dorst
eedb0dec01
SWGT024 v2.0: Fix LED and RESET defines for managed version
...
Original firmware used for RJ45:
* Amber leds only for 2.5GBit link/act.
* Green leds only for other speeds.
2026-03-29 16:13:36 +02:00
René van Dorst
385c850d2f
add comments
2026-03-28 21:40:43 +01:00
René van Dorst
cdbc48f2c2
Rename LED_28 to LED_28_SYS.
...
So it clear that led 28 is the SYSTEM LED.
2026-03-28 19:29:49 +01:00
René van Dorst
54fced05b0
Merge pull request #178 from bennydiamond/Support_ZX_SWTGW215AS
...
Add support for PCB-SWTG115AS-V2.0
2026-03-28 13:16:07 +00:00
René van Dorst
8b4e09ad69
Merge pull request #181 from janh/improve-1g-sfp-compat
...
Improve compatibility with 1G SFP modules
2026-03-27 22:58:30 +00:00
René van Dorst
34d53dddf2
Merge pull request #179 from bennydiamond/Early_boot_wipe_config
...
Wipe config if button held at boot
2026-03-27 20:05:55 +00:00
René van Dorst
ec5f655bba
Merge pull request #180 from janh/k0501w-rename-version
...
Rename K0501W to include PCB version
2026-03-27 19:52:29 +00:00
René van Dorst
7291f38e46
Merge pull request #182 from janh/commands-newline
...
Make sure that the output of all commands ends with a newline
2026-03-27 19:05:29 +00:00
René van Dorst
47c5443f0e
Merge pull request #164 from TylerDurden-23/fix-1gbaset-sfp
...
Fix 1GBase-T SFP module not working on serdes port 1.
2026-03-14 17:03:05 +00:00
René van Dorst
f474b5822b
Merge pull request #151 from logicog/concurrency
...
Web request concurrency management
2026-03-10 18:49:18 +00:00
René van Dorst
c2f5a91763
Merge pull request #150 from logicog/bandwidth_web
...
Bandwidth web
2026-03-09 19:54:31 +00:00
René van Dorst
87c161dc70
Merge pull request #147 from logicog/bandwidth
...
Bandwidth control
2026-03-08 19:46:51 +00:00
René van Dorst
e33cd9d0c5
Merge pull request #143 from feelfree69/flashsize_web
...
Show flash_size to web interface and console
2026-03-06 18:22:48 +00:00
René van Dorst
a15500c493
Merge pull request #146 from ranma/printopt
...
Optimize printing functions
2026-03-02 20:59:26 +00:00
René van Dorst
81a7393a81
Merge pull request #141 from logicog/SWTG018AS_A_V_2_0
...
Add support for the SWTG018AS-A V2.0 8+1 unmanged switch
2026-02-27 19:30:25 +00:00
René van Dorst
ba18fa19b0
Merge pull request #138 from logicog/kp_9000_x6hml_x2
...
Add device photos of KeepLink KP-9000-6XHML-X2
2026-02-25 17:45:53 +00:00
René van Dorst
d29d7dcf98
Merge pull request #139 from logicog/fix_6xhml_reset
...
Fix reset button GPIO-Number for MACHINE_KP_9000_6XHML_X2
2026-02-25 08:28:28 +01:00
René van Dorst
033616ef63
Merge pull request #130 from MaDill/patch-1
...
Update README.md how to compile
2026-02-15 15:38:45 +00:00
René van Dorst
a57aeda053
Merge pull request #132 from feelfree69/default_machine
...
fix `make MACHINE=DEFAULT_8C_1SFP`
2026-02-15 15:22:12 +00:00
René van Dorst
d8b52d50de
Merge pull request #131 from vDorst/fix_github_action
...
Fix GitHub actions build and select machine-type via variable.
2026-02-15 11:08:18 +00:00
René van Dorst
1f6f7fbcd4
Fix GITHUB action build.
...
PR #119 made that no machine-type is selected, so the build will fail.
commit 2f787fee enables us select a machine via a variable, use this to
select a machine-type `KP_9000_6XHML_X2` to build.
2026-02-15 11:25:47 +01:00
René van Dorst
c7ea28393a
machine: Fix missing MACHINE_KP_9000_9XHML_X, fixes #120
2026-02-15 11:24:40 +01:00
René van Dorst
2f787feebf
Makefile: Select MACHINE via a variable
2026-02-15 11:12:26 +01:00
René van Dorst
4c1266dca9
Merge pull request #119 from feelfree69/swtgw218as
...
Add MACHINE_SWTGW218AS Managed Switch.
Deselect all MACHINE type so the use always have to select a machine type.
2026-02-15 09:21:33 +00:00
René van Dorst
ff94e383aa
docs: mods: Fix MiB numbers.
2026-02-14 19:35:18 +01:00
René van Dorst
b67e3eb602
Merge pull request #122 from logicog/fix_6xhml_x2_new
...
Fix MACHINE_KP_9000_6XHML_X2: swap SFP-ports remove unnecessary LED-MUX
2026-02-14 17:44:31 +00:00
René van Dorst
94739644b7
Merge pull request #124 from TylerDurden-23/hs-add-fix
...
Fix SFP numbering for HI-K0402WS
2026-02-13 16:04:54 +01:00
René van Dorst
15b0bf9664
Merge pull request #97 from TylerDurden-23/hs-add-clean
...
Add support for HiSource K0402WS-V3.0.
2026-02-11 21:37:11 +00:00
René van Dorst
4a3cd7b73c
Update Keeplink KP-9000-9XHML-X docs.
2026-02-11 19:19:38 +01:00
René van Dorst
f538a9344b
Add Keeplink KP-9000-9XHML-X to machine-file.
2026-02-11 19:18:24 +01:00
René van Dorst
d2edb92ddf
Merge pull request #107 from logicog/hg0502xg
...
Generic Port LED configuration based on machine-configuration
2026-02-10 16:58:42 +00:00
René van Dorst
fc53003022
Merge pull request #116 from logicog/speed_fixes
...
Fix Speed Setting using Auton-Neg
2026-02-08 18:26:43 +00:00
René van Dorst
d4ed753715
Merge pull request #117 from logicog/uuid_mac
...
Generate a random stable locally administered addresses (LAA) MAC address based on the SoC's UUID + LOT number.
2026-02-08 14:58:36 +00:00
René van Dorst
dbb8fe1249
Merge pull request #104 from diijkstra/i2c_gpio
...
Advanced I2C SFP pins definition
2026-02-01 20:48:34 +00:00
René van Dorst
2a5f1de8f7
Merge pull request #105 from logicog/mgmt_vlan
...
Add support for pin switch management features to a VLAN.
2026-01-29 19:31:32 +00:00
René van Dorst
1d94e99612
Demagic 0x7, 0x3e to PHY_MMD_AN, PHY_EEE_ADV2
2026-01-26 23:00:29 +01:00
René van Dorst
a134335308
Demagic PHY_MMD31, 0xa432 to PHY_MMD31, PHY_MMD31_PHYCR2
2026-01-26 22:58:57 +01:00
René van Dorst
6495310ba9
Demagic PHY_MMD31, 0xa434 to PHY_MMD31, PHY_MMD31_PHYSR
2026-01-26 22:48:04 +01:00
René van Dorst
5962c3a8a6
Demagic PHY_MMD31, 0xa414 to PHY_MMD31, PHY_MMD31_GANLPAR
2026-01-26 22:45:44 +01:00
René van Dorst
a6e452e638
Demagic PHY_MMD_AN, 33 to PHY_MMD_AN, PHY_ANEG_MGBASE_ADV
2026-01-26 22:42:54 +01:00
René van Dorst
7f4c276285
Demagic PHY_MMD_AN, 0x00 to PHY_MMD_AN, PHY_ANEG_CTRL
2026-01-26 22:41:49 +01:00
René van Dorst
f9fdc6b81d
Demagic PHY_MMD_AN, 0x13 to PHY_MMD_AN, PHY_ANEG_LP_ABILITY
2026-01-26 22:39:16 +01:00
René van Dorst
d9185b3505
Demagic PHY_MMD31, 0xa400 to PHY_MMD31, PHY_MMD31_FEDCR
2026-01-26 22:37:16 +01:00
René van Dorst
3d7ef55ced
Demagic PHY_MMD31, 0xa412 to PHY_MMD31, PHY_MMD31_GBCR
2026-01-26 22:35:03 +01:00
René van Dorst
44779404df
Demagic PHY_MMD_AN, 0x20 to PHY_MMD_AN, PHY_ANEG_MGBASE_CTRL
2026-01-26 22:31:44 +01:00
René van Dorst
1997d7379b
Demagic PHY_MMD_AN, 0x10 to PHY_MMD_AN, PHY_ANEG_ADV
2026-01-26 22:28:33 +01:00
René van Dorst
c61fb6d2fe
Forgot to replace so machine.isRTL8373 to machine_detected.isRTL8373
2026-01-26 20:39:42 +01:00
René van Dorst
c11099b9ec
Rename PHY_SDS_CTRL and RTL8224_DEV_ID to PHY_MMD30.
...
So demagic the `phy_(, 0x1e, )` to `phy_(, PHY_MMD30, )`.
Use `rg -tc phy | rg -i 0x1e` to find to most locations.
2026-01-25 23:44:03 +01:00
René van Dorst
13d0781455
Rename PHY_MMD_CTRL to PHY_MMD31.
...
So demagic the `phy_(, 0x1f, )` to `phy_(, PHY_MMD31, )`.
2026-01-25 23:38:04 +01:00
René van Dorst
fc327810ed
Add more comments about the SDS-settings for RTL8224.
...
Remove the unused array `rtl8224_cb`.
Rename `rtl8224_ca` to `rtl8224_sds0_setttings`.
2026-01-25 20:24:40 +01:00
René van Dorst
b7b4594406
N-type SOC need to swap some Serdes lines to make it work.
...
Without this fix N-type SOC devices like RTL8372N, RTL8383N and also the
4-port PHY RTL8224N, don't have a functional Serdes. Although the SOC
sees a link, there is no packet flow on both SFP-port nor RTL8224 ports.
Added helper functions to read/write to the RTL8224.
RTL8224 has the same register layout so we can use the same register
defines as for the main SOC.
2026-01-25 17:22:51 +01:00
René van Dorst
aa750d8ff1
Detect SOC type and use detected SOC type to init the hardware.
...
Detect the SOC type and variant. RTL8372 vs RTL8373 and also is it as
non-N/N variant of the SOC.
Even if the machine profile is wrong the hardware will be initilised on
the detected type.
2026-01-25 16:55:43 +01:00
René van Dorst
a0313eab87
doc: gpio overview and mux settings
2026-01-22 23:04:07 +01:00
René van Dorst
2cdeda3bc9
Merge pull request #87 from feelfree69/patch-1
...
Move SW version print after flash initialization
2026-01-20 18:55:27 +00:00
René van Dorst
13e9dbbc7b
Merge pull request #68 from logicog/dhcp
...
Add a DHCP client implementation and validate BANKS code size.
2026-01-18 11:08:17 +00:00
René van Dorst
e74c4f148a
version: Also show the hardware profile.
2026-01-17 21:02:25 +01:00
René van Dorst
e54313eded
Merge pull request #83 from logicog/l2
...
Add support for L2 entry display and deletion in the web interface
2026-01-17 16:00:37 +00:00
René van Dorst
46864ca9a7
SWGT024_V2_0: Fix .phys_to_log_port, sfp-ports have to be swapped.
...
On SWGT024_V2_0, the SFP ports are arranged differently.
The port mapping should also reflect this.
2026-01-15 19:46:04 +01:00
René van Dorst
00b42db5da
Merge pull request #78 from logicog/nic_demagic
...
MIB Counter fixes and Detailed Display
2026-01-15 18:45:38 +00:00
René van Dorst
030772f1ef
Merge pull request #75 from vDorst/fix_serial_timer1
...
Fix: Serial Timer1: GATE bit should be off.
2026-01-13 19:10:22 +00:00
René van Dorst
4ce8adf954
Merge pull request #80 from logicog/fix_rldp_register
...
Fix typo in register address for RLDP Leds
2026-01-13 19:09:58 +00:00
René van Dorst
f43bb4eac4
Fix: Serial Timer1: GATE bit should be off.
...
Fixes PR#66, commit c5c6b97 and 4e8eb6d .
The GATE-bit should not be used. Timer1 must always be activated to
generate the baudrate clock for serial 0.
2026-01-10 11:01:17 +01:00
René van Dorst
c5c6b97ad1
installer: SERIAL: Use Timer1 instead of Timer2
...
Same as in the main code.
Use Timer1 as baudrate generator.
Timer1 can be programmed to have the same accuracy and deviation as
Timer2, up to 115200 at F_SYS = 125 Mhz. See comment
setup_serial_timer1() comment for valid baudrates and settings.
Timer1 is used in 8-bit auto-reload mode.
Only differance is that the serial is transmit only and poll-based so no
interrupts are used to transmit data.
2026-01-09 07:52:35 +01:00
René van Dorst
229fad3809
Merge pull request #73 from logicog/dio
...
Enable Flash Dual I/O command by default.
Speed up data transfers up to 2x.
2026-01-08 21:52:52 +00:00
René van Dorst
7d04ea1980
doc: mods: Add note about command BBh.
...
All the listed parts, support `BBh` command.
2026-01-08 21:45:58 +01:00
René van Dorst
34d6024eeb
DOCS: Add modification page and flash replacement.
...
Document modifications like flash replacement.
2026-01-08 21:35:40 +01:00
René van Dorst
d52aeca609
Merge pull request #74 from logicog/dbg
...
Convert unconditional prints to debug prints in httpd
2026-01-08 20:12:21 +00:00
René van Dorst
745c170f0a
Flash: fix: Don't use READ 0x03 flash command.
...
In commit 884bc18 , `Fast Read 0x0b` was exchanged for `Read 0x03` command.
This was done because I did not see the difference between the commands
and the extra dummycycles looks like wasted time. But I overlooked that
many flash devices, the `Read 0x03` command can't run at the maximum
SPI-clock speed, but only half or less of the maximum SPI-clock speed.
This can cause in-transit data corruption while reading the device.
So change it back to `Fast Read 0x0b` command, so the SPI device is used
within the device specification.
2026-01-06 19:45:33 +01:00
René van Dorst
5b4b0efb16
installer: remove unused sys_tick timer code.
2026-01-05 21:46:05 +01:00
René van Dorst
b818a94202
SERIAL: Wrong use of TI-flag causes IRQ-storm.
...
TI-interrupt flag is used in the code, this is only
fine when SERIAL-interrupt is not enabled/used but
when is it used, it generates an interrupt which is
not handled, so it keeps generating interrupts and
trashing the performance and caused starvation on
lower priority interrupts like TIMER 2.
Use an extra flag to signal to the code that the
TX-buffer is empty.
2026-01-04 14:16:28 +01:00
René van Dorst
bbd4656810
SERIAL: Use Timer1 instead of Timer2
...
Use Timer1 as baudrate generator.
Timer1 can be programmed to have the same accuracy and deviation as
Timer2, up to 115200 at F_SYS = 125 Mhz. See comment
setup_serial_timer1() comment for valid baudrates and settings.
Timer1 is used in 8-bit auto-reload mode.
Timer2 16-bit auto-reload can now be used for other tasks like SYS_TICK.
2026-01-04 14:15:30 +01:00
René van Dorst
8b061d5fb9
SYS_TICK: Use Timer2 instead of Timer0.
...
Downside of Timer0 is, we have to manually reload
the timer value. Timer2 can do that automaticly.
This saves a lot of time in the interrupt-handler
of the Timer.
Currently Timer2 is used for baudrate-generation
but in a separete commit this is moved to Timer1.
2026-01-04 14:14:52 +01:00
René van Dorst
5ed4d7afc7
Merge pull request #67 from logicog/docs
...
Update Readme
2025-12-29 21:05:05 +00:00
René van Dorst
9ff114d234
SYSTICK: Fix writing value to TMR0 registers.
...
A `%` modulo operator was used instead of a
`&` and-operator, to split a 16 bit value into two
8 bit values.
This causes that the SYSTICKs were 0.1% too fast.
Replace the manual split with a sfr16 type, so the
compiler does the split for us.
2025-12-26 10:07:13 +01:00
René van Dorst
0abe83e3e5
sfr: add 16 bit SFR for the timer0.
...
So we don't have to manual split 16-bit value into
for bytes.
Let the compiler do the work.
2025-12-26 10:07:11 +01:00
René van Dorst
2a7b8f9838
Merge pull request #59 from logicog/timer_fixes
...
Fix internal timer tick counter for housekeeping.
Because of the high F_CPU and low SYS_TICK.
Timer0 can easy overflow.
Now this is known and fixed.
2025-12-25 09:54:58 +00:00
René van Dorst
a8227f1855
Merge pull request #54 from logicog/speeds
...
Add a Port Speed and MTU configuration Web-Page
2025-12-25 09:11:31 +00:00
René van Dorst
3ef7e45649
SWGT024_V2_0: Fix port mapping. Port 2 & 3 were swapped.
2025-12-23 14:30:27 +01:00
René van Dorst
053c16b84e
SWTG024AS: Document Slave Interface
2025-12-22 14:32:23 +01:00
René van Dorst
4e9fb19e05
SWTG024AS: more small changes
2025-12-20 20:36:41 +01:00
René van Dorst
0a0e1856ae
SWTG024AS: Link to photo
2025-12-20 14:50:25 +01:00
René van Dorst
cedd81cf00
SWTG024AS: Fix and use unit KiB, add missing managed flag.
2025-12-20 14:44:38 +01:00
René van Dorst
bf00f9aa2c
Merge pull request #57 from ranma/baudrate-rounding
...
Add rounding to baud rate calculation
2025-12-20 11:55:42 +00:00
René van Dorst
0779222194
SWTG024AS: Add Sodola SL-SWTG124AS-D
...
Info from #55 .
2025-12-19 21:07:11 +01:00
René van Dorst
44ce073869
SWTG024AS: Add port overview, rename SDS to SerDes
2025-12-19 21:03:47 +01:00
René van Dorst
12595f806a
Merge pull request #50 from logicog/sfp_readings
...
Show SFP + DOM info while hovering over the port.
2025-12-17 06:50:41 +00:00
René van Dorst
9c4d49bc8c
Merge pull request #49 from logicog/igmp
...
Add basic IGMP support.
2025-12-15 06:45:20 +00:00