Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Chaos calmer#5

Closed
teasiu wants to merge 430 commits into
masterfrom
chaos_calmer
Closed

Chaos calmer#5
teasiu wants to merge 430 commits into
masterfrom
chaos_calmer

Conversation

@teasiu

@teasiu teasiu commented Mar 19, 2016

Copy link
Copy Markdown

cc

Felix Fietkau and others added 30 commits September 26, 2015 23:18
… in unbridged AP configurations (#20574)

Signed-off-by: Felix Fietkau <[email protected]>

Backport of r47053

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47054 3c298f89-4303-0410-b956-a3cf2f4a3e73
…vs to procd instead

Signed-off-by: Felix Fietkau <[email protected]>

Backport of r47055

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47060 3c298f89-4303-0410-b956-a3cf2f4a3e73
When using FullMAC drivers (e.g. brcmfmac) we don't get mgmt frames so
check for banned client in probe request handler won't ever be used.
Since cfg80211 provides us info about STA associating let's put a check
there.

Signed-off-by: Rafał Miłecki <[email protected]>

Backport of r47064

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47065 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46470

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47071 3c298f89-4303-0410-b956-a3cf2f4a3e73
This patch is to add the WIZnet WizFi630A board as a new platform. The board is in mini pci express form factor.

Signed-off-by: Tobias Welz <[email protected]>

This is a backport of patch r46921

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47072 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46935

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47082 3c298f89-4303-0410-b956-a3cf2f4a3e73
jffs2reset was following symlinks making it delete mounts for example.

Signed-off-by: John Crispin <[email protected]>

Backport of r46960

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47083 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: Felix Fietkau <[email protected]>

Backport of r46738

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47084 3c298f89-4303-0410-b956-a3cf2f4a3e73
Provides ubus calls for sysupgrade and password changing.

Signed-off-by: John Crispin <[email protected]>

Backport of r47075

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47085 3c298f89-4303-0410-b956-a3cf2f4a3e73
only tested on mt7628

Signed-off-by: John Crispin <[email protected]>

Backport of r46950

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47086 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46951

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47087 3c298f89-4303-0410-b956-a3cf2f4a3e73
newer socs have 2 mux registers

Signed-off-by: John Crispin <[email protected]>

Backport of r46952

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47088 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46953

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47089 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46954

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47090 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46955

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47091 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46956

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47092 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46957

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47093 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46958

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47094 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46959

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47095 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46659

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47096 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r47073

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47097 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46475

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47098 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r47074

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47099 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r47076

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47100 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: John Crispin <[email protected]>

Backport of r46474

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47101 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: Felix Fietkau <[email protected]>

Backport of r47138

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47140 3c298f89-4303-0410-b956-a3cf2f4a3e73
…n mac os x

Signed-off-by: Felix Fietkau <[email protected]>

Backport of r47139

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47141 3c298f89-4303-0410-b956-a3cf2f4a3e73
Signed-off-by: Felix Fietkau <[email protected]>

Backport of r47142

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47144 3c298f89-4303-0410-b956-a3cf2f4a3e73
… mac80211 version

Signed-off-by: Felix Fietkau <[email protected]>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47145 3c298f89-4303-0410-b956-a3cf2f4a3e73
One second is not enough for some devices to ackowledge null data frame
which is sent at the end of ap_max_inactivity interval. In particular,
this causes severe Wi-Fi instability with Apple iPhone which may take
up to 3 seconds to respond.

Signed-off-by: Dmitry Ivanov <[email protected]>

Backport of r47149

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47150 3c298f89-4303-0410-b956-a3cf2f4a3e73
michaelchen644 pushed a commit to michaelchen644/openwrt that referenced this pull request Mar 26, 2024
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 9, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M (802.11), port openwrt#3 on AR8327,
          1x1000M (802.11at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 | - on label - not in use in OpenWRT
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Refactored MAC and calibration data setups to use nvmem-layout
- Switched LAN interface to be the PoE (primary) port
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port

TODO:
- Identify GPIOs for other LEDs and set pinctrl accordingly
- Add the shift registers for controlling beamforming antennas
- Add the bit-banged I²C bus used for onboard TPM
- Refactor boot scheme and flash layout
- Exclude the reserved memory region at top of RAM used for
  communication with bootloader

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 10, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M (802.11), port openwrt#3 on AR8327,
          1x1000M (802.11at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 | - on label - not in use in OpenWRT
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Refactored MAC and calibration data setups to use nvmem-layout
- Switched LAN interface to be the PoE (primary) port
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication

TODO:
- Add the shift registers for controlling beamforming antennas
- Add the bit-banged I²C bus used for onboard TPM
- Refactor boot scheme and flash layout

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 10, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Refactored MAC and calibration data setups to use nvmem-layout
- Switched LAN interface to be the PoE (primary) port
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM

TODO:
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported
- Configure Ethernet port LED initvals for link/act/speed
- Refactor boot scheme and flash layout

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 10, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Refactored MAC and calibration data setups to use nvmem-layout
- Switched LAN interface to be the PoE (primary) port
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM

TODO:
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported
- Configure Ethernet port LED initvals for link/act/speed
- Refactor boot scheme and flash layout

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 10, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Switched LAN interface to be the PoE (primary) port
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 10, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
 9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Switched LAN interface to be the PoE (primary) port
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 12, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
 9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Switched LAN interface to be the PoE (primary) port
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver.
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 12, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
 9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver.
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL pushed a commit to Leo-PL/openwrt that referenced this pull request Nov 12, 2024
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

 1. Setup tftp server on the local network
 2. Connect to UART with TTL
 3. Interupt uboot process with Ctrl-C
 4. Setup appropriate ipaddr and serverip in setenv:
	a) setenv ipaddr 192.168.1.1
	b) setenv serverip 192.168.1.2
 5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp/1600000A.img
 6. On R500 boot into initrd image
	a) tftpboot
	b) bootm
 7. On TFTP server - scp openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
 8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
 9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver.
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
@ghost ghost mentioned this pull request Nov 20, 2024
1 task
Leo-PL added a commit to Leo-PL/openwrt that referenced this pull request Jan 9, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL added a commit to Leo-PL/openwrt that referenced this pull request Jan 12, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL added a commit to Leo-PL/openwrt that referenced this pull request Jan 12, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL added a commit to Leo-PL/openwrt that referenced this pull request Jan 13, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Leo-PL added a commit to Leo-PL/openwrt that referenced this pull request Jan 19, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
hauke pushed a commit to Leo-PL/openwrt that referenced this pull request Jan 20, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Link: openwrt#17550
Signed-off-by: Hauke Mehrtens <[email protected]>
KGeri201 pushed a commit to KGeri201/openwrt that referenced this pull request Jan 24, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Link: openwrt#17550
Signed-off-by: Hauke Mehrtens <[email protected]>
Vladdrako pushed a commit to Vladdrako/openwrt that referenced this pull request Feb 8, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port #3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Link: openwrt#17550
Signed-off-by: Hauke Mehrtens <[email protected]>
M3m3M4n pushed a commit to M3m3M4n/openwrt that referenced this pull request Feb 16, 2025
Ruckus R500 datasheet: https://webresources.ruckuswireless.com/datasheets/r500/ds-ruckus-r500.html

Specifications:

SoC: 720Mhz QCA9558
RAM: 256MB
Storage: 64MB of FLASH (SPI NOR - S25FL512S)
1x AR8327 GB switch
Ethernet: 1x1000M port openwrt#3 on AR8327,
          1x1000M (802.3at POE), port openwrt#5 on AR8327
Wireless: QCA988X HW2.0 802.11ac
AR9550 2.4GHz 802.11b/g/n
5x GPIO LED
1x GPIO Reset Button
1x DC Jack 12v
1x UART, 3.3v, 115200
1x TPM, SLB9645TT12
2x Beamforming antennas configured via 74LV164

MAC addresses:
 1. art 0x807E | Factory bridged | f0:3e:90:XX:XX:80 |
 2. art 0x66   | eth0            | f0:3e:90:XX:XX:83 | (port 5, cpu port 6) - PoE port
 3. art 0x6c   | eth1            | f0:3e:90:XX:XX:84 | (port 3, cpu port 0) - non PoE port

Serial console: 115200-8-N-1 on internal H4 header.
Pinout:

H1
-----------
|1|x|3|4|5|
-----------

Pin 1 is near the "H4" marking.
1 - RX
x - no pin
3 - VCC (3.3V)
4 - GND
5 - TX

JTAG: Connector H2, similar to MIPS eJTAG, standard, unpoulated.

H9
----------------------
|2 |4 |6 |8 |10|12|14|
----------------------
|1 |3 |5 |7 |9 |11|13|
----------------------

3 - TDI
5 - TDO
7 - TMS
9 - TCK
2,4,6,8,10 - GND
14 - Vref
1,11,12,13 - Not connected

I²C: connector H2, near power LED, unpopulated:

------
|1|2|3
------
    H2

1 - SCL
2 - SDA
3 - GND

Installation:

Serial Port/TFTP

1. Setup tftp server on the local network
2. Connect to UART with TTL
3. Interupt U-boot process with Ctrl-C
4. Setup appropriate ipaddr and serverip in setenv:
  - setenv ipaddr 192.168.1.1
  - setenv serverip 192.168.1.2
5. On TFTP Server - copy openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin to /srv/tftp
6. On R500 boot into initrd image
  - tftpboot 0x81000000 openwrt-ath79-generic-ruckus_r500-initramfs-kernel.bin
  - bootm 0x81000000
7. On TFTP server - scp -O openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin [email protected]:/tmp
8. Ensure the boot command is set before flashing the image:
    fw_setenv bootcmd 'bootm 0xbf1c0000'
9. On R500 - sysupgrade /tmp/openwrt-ath79-generic-ruckus_r500-squashfs-sysupgrade.bin
10. If not done in 8; set boot command from U-boot shell itself:
  - setenv bootcmd bootm 0xbf1c0000
  - saveenv
  - reset

This patch adapted from https://github.com/victhor393/openwrt-ruckus-r500/tree/ruckus-r500-master

Signed-off-by: Damien Mascord <[email protected]>

- Heavily refactored the device tree
- Extended commit message
- Documented onboad connectors
- Refactored MAC and calibration data setups to use nvmem-layout
- Made both network interfaces LAN ports and bridge them, this makes
  more sense for an access point and is consistent with the rest of
  Ruckus APs.
- Enable lzma-loader for compressed initramfs
- Enabled the optional internal USB port
- Added missing LEDs and according pinctrl settings
- Added reserved memory region used for bootloader communication
- Added the bit-banged I²C bus and onboard TPM
- Refactored boot scheme and flash layout to match earlier Ruckus
  devices and maximize usable space for user data.

Quirks:
- H7 is the physical presence switch for the SLB9645TT12 TPM.

TODO:
- Link state reporting on the Ethernet ports doesn't work and both ports
  report "up" due to limitation of swconfig ar8327 driver. With DSA
  conversion, this shall be rectified.
- Locate 2nd shift register (U7) controlling beamforming antennas, probably
  on ath10k GPIOs which are currently unsupported in the driver. For
  this, there is a device tree node describing that - but explicitly
  disabled.
- At the moment of adding support, there is an endianness bug in the TPM
  driver causing it to not detect the TPM module because of ID mismatch.

Signed-off-by: Lech Perczak <[email protected]>
Link: openwrt#17550
Signed-off-by: Hauke Mehrtens <[email protected]>
lexmark3200 added a commit to lexmark3200/openwrt that referenced this pull request Sep 11, 2025
This is first step to add support for Cudy C200P - .

Specifications:

    SoC: MediaTek MT7621AT
    RAM: 256 MB (DDR3)
    Flash: 16 MB (NOR)

Interfaces:

    Switch: 1 WAN, 4 LAN (Gigabit)
    Gigabit RJ45 PoE Ports 	openwrt#2~openwrt#5
    Max Power on a Single PoE Ports 	30W
    PoE Ports : The PoE ports comply with IEEE 802.3at/af standards.
    Ports: 1 USB-A 3.0 Ports

LED:

    System
    PoE Max Status
    Link/ACT/PoE Status of Each PoE Port

Physical Buttons:

 	Reset Button

Power Input:

 	DC Jack

Power Methods:

    DC: 54V 1.11A
    802.3at/af PoE
    Passive PoE: 24/48V

Signed-off-by: Marcin Leksmark <[email protected]>
swapnanil1 added a commit to swapnanil1/openwrt that referenced this pull request Sep 12, 2025
added more options to disable for performance , IPV6, logging etc


Signed-off-by: Swapnanil <[email protected]>
FrankZRS pushed a commit to Cascoda/OpenWrt that referenced this pull request Dec 16, 2025
Add release script & update config files
lukasz1992 pushed a commit to lukasz1992/openwrt that referenced this pull request Mar 20, 2026
@marchmin marchmin mentioned this pull request May 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants