Jump to content

Linksys WRT1900ACS/WRT1900ACS V2 (linksys-shelby)

From postmarketOS Wiki
Revision as of 04:37, 24 December 2024 by Exkc (talk | contribs)
Note pmOS can't run on its internal storage.However, it's possible to boot pmOS from USB Stick.
Linksys linksys-shelby
A portable monitor connected to WRT1900ACS via USB GPU
A portable monitor connected to WRT1900ACS via USB GPU
Manufacturer Linksys
Name linksys-shelby
Codename WRT1900ACS/WRT1900ACS V2
Released 2015
Type router
Hardware
Chipset Marvell Armada 385
CPU Dual-core 1.2 GHz Cortex-A9
GPU none
Display none
Storage 128MB
Memory 512MB
Architecture armv7
postmarketOS
Category testing
Pre-built images no
Mainline yes
Features
Flashing
Broken
Internal storage
Partial
Connectivity
WiFi
Broken
Ethernet
Works
Miscellaneous
FDE
No data
USB-A
Works
SATA/eSATA
No data
HDMI/DP
No data
Sensors
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Haptics
No data
Barometer
No data


Contributors

Users owning this device

Default Boot Behavior

Note nandboot and altnandboot environment variable do not contain any code that is for booting on external drive.

The device 's stock uboot is like any other u-boot,it will run commands that are saved in the bootcmd environment variable. However unlike other u-boot, the bootcmd is always setted to ether run nandboot (Run the command that in nandboot environment variable) or run altnandboot (Run the command that in altnandboot environment variable) depend on whoever it booting off the primary firmware (Slot A in android term) of the alternate firmware (Slot B in android term) .

Installation

Installing pmOS to your disk

Warning WARNING: DO NOT PLUG multiple USB stick into the router during boot if you decided to use usb stick to boot pmos.
Warning WARNING: DO NOT PLUG multiple SATA drive into the router during boot if you decided to use SATA drive to boot pmos.

Currently, only installing pmOS to a USB/SATA drive is supported.

Use pmbootstrap to build your own image, like so:

$ pmbootstrap init
$ pmbootstrap install --sdcard=/dev/sdX # change 'sdX' with the path of your USB drive

After creating your pmOS image, connect to your device via UART.

Booting

Due to the boot behavior mention above , pmOS wouldnt boot automatically when it got powered on.Therefore we need manually boot pmos from uboot shell or making it automatically boot from external drive by modify either nandboot environment variable or altnandboot environment variable.

Modify environment variable

altnandboot
USB Stick

Run these commands to modify the default altnandboot environment variable for making pmOS automatically boot when the device is powered on and a pmOS USB stick is plugged in:

Marvell# setenv altnandboot_stock ${altnandboot}
Marvell# setenv altnandboot "usb start;ext2load usb 0 ${kernel_addr_r} uImage;ext2load usb 0 ${ramdisk_addr_r} uInitrd;bootm ${kernel_addr_r} ${ramdisk_addr_r};run altnandboot_stock"
Marvell# saveenv
SATA Drive

Run these commands to modify the default altnandboot environment variable for making pmOS automatically boot when the device is powered on and a pmOS SATA Drive is plugged in:

Marvell# setenv altnandboot_stock ${altnandboot}
Marvell# setenv altnandboot "scsi init;ext2load scsi 0 ${kernel_addr_r} uImage;ext2load scsi 0 ${ramdisk_addr_r} uInitrd;bootm ${kernel_addr_r} ${ramdisk_addr_r};run altnandboot_stock"
Marvell# saveenv

See also

  • [1] WRT1900ACS on openwrt