Disclaimer: the information provided on this page is given as is, i.e. without warranty that you will not break your system following it. Additionally, do not expect to get support and warranty from NETGEAR if this happens.
This page documents some efforts to get a recent (PaX/grsec-enabled) kernel and latest Debian system running on NETGEAR ReadyNAS 204, instead of the original (Annapurna/NETGEAR-patched) kernel and custom system. The final goal is to have missing kernel support pushed upstream; check Changelog and Todo list below to see current status and progresses. This is the same kind of work I already performed for previous ARM-based Netgear ReadyNAS devices.
Unlike previous ARM-based ReadyNAS devices (Duo v2/NV+ v2, RN102/RN104 and RN2120), which were all powered by Marvell SoC, RN204 is powered by an Annapurna Labs SoC. NETGEAR also put four times more RAM in the device compared to what previously was in the RN102/RN104. Otherwise, apart from minor diffences w/ the RN104, which are documented below, the enclosure of both devices are basically identical (size, design, LCD, power adapter, etc).
Here are the main differences w/ the RN104:
- The RN104 is powered by a single core Marvell Armada 370 SoC runinng at 1.2GHz when the RN204 is powered by a dual-core (ARM Cortex A15) Annapurna Labs AL212 SoC running at 1.4GHz. Both have NX support.
- The RN104 has 512MB of DDR3 RAM, the 204 comes with 2GB.
- Both devices have 1 front USB2.0 port and 2 rear USB3.0 ports. Both also come with a rear eSATA port.
- The USB3.0 controller of the RN104 is a Fresco Logic FL1009-2Q0 when the 204 includes an Etrontech EJ188H.
- The RN104 comes with a GMT G762 Fan controller and a Protechnic 92mm MGT9212YB-025 fan. The RN204 comes with a GMT G762 fans controller and a 92mm Delta Electronics AFB0912HH fan.
- The RTC and alarm chip of the RN104 and RN204 are both Intersil ISL12057.
- Both devices includes 128MB of NAND (Hynix H27U1G8F2BTR for the RN102, SPANSION MS01G200BHI200 for the R204).
Here is the main table of contents for the page, with links to the various sections of the page.
Changelog i.e. work done
- June 2015: Created the page. First pictures of hardware parts. First connection via 3.3V serial console (available under the sticker at the rear of the NAS). Started splitting NETGEAR/Marvell patch above 3.12.36 kernel (0.8 million lines).
TODO list i.e. work in progress
- See what v4.1 kernel is missing and extend todo list.
- Build and boot a v4.1 kernel (first kernel with basic Annapurna SoC support)
- Document hardware parts
This section is dedicated to the hardware specs of the NETGEAR ReadyNAS 204. It is based on visual inspection of RN204 main board and two daughter boards, completed with reading of NETGEAR 3.12.36 kernel sources and publicly available (read Google-gathered) information. This is the same method I previously used for its older brothers, the ReadyNAS NV+ v2. and ReadyNAS RN104.
When available, additional information and software handling details are given for each hardware part. For instance, if you are looking for informations related to the fan controller, simply click the link below to get the details of what is used and how support is provided.
Each picture available on this page is a thumbnail of a larger picture. The larger one can be accessed by clicking the thumbnail.
If you are in a hurry looking for a specific info, you can use this table of contents to directly access information on a specific hardware part of the system or get an overview of what a NETGEAR ReadyNAS 102 is made of.
- Annapurna Alpine AL212 Dual ARM Cortex A15 SoC @1.4Ghz
- 2 GB RAM via 4x512 Mbits NANYA NT5CB512M8CN
- 128 MB SPANSION MS01G200BHI200 NAND Flash
- Intersil ISL12057 I2C bus RTC
- EtronTech EJ188H USB3.0 Controller
- GMT G761 PWM Fan Controller
- Delta Electronics AFB0912HH Fan
- Main daughter board (rear ports)
- Main board front buttons and LED
- ASMedia ASM1060
- Atheros AR8035 Gigabit Ethernet PHY
- Serial interface via 16550A UART
- CR2032 battery
- Texas instruments TPS65251
Annapurna Alpine AL212 Dual ARM Cortex A15 SoC @1.4Ghz
The ReadyNAS 204 is powered by an Annapurna Alpine AL212 SoC. It is a dual ARM Cortex A15 running at 1.4GHz. An aluminium heatsink is located on top of the SoC, as depicted below.
The heatsink can easily be removed to get access to the SoC, as depicted below
At the time of writing (June 2015), Annapurna Labs is still in stealth mode; their web site does not provide anything useful yet on their hardware.
FIXME: Print what /proc/cpuinfo info reports
2GB RAM (4 NANIA 1435 NT5CB512M8CN-DI chip)
The ReadyNAS 204 comes with 2GB of RAM connected to the SoC. This is provided by four soldered 512 Mbit NANIA NT5CB512M8CN chips.
Here is a zoom on one of the chips:
Here are the parameters of each chip (see Wikipedia SDRAM latency page for details), as described in previous datasheet
- 1600 Mb/s data rate
- 800 Mhz clock speed
- 78-ball TFBGA package
- 9mm length x 10.50mm Width / 0.80mm Ball pitch
- CAS Latency: 11
- CAS Write Latency: 11
- tRCD: 11
- tRP: 11
SPANSION S34MS01G2 128 MB NAND
FIXME: Print what kernel reports and also partitioning info
Intersil ISL12057 I2C RTC Chip
The NAS includes an Intersil ISL12057 I2C RTC chip ...
... backed up by a CR2032 battery:
The Intersil ISL12057 is a low power RTC and Alarm chip. It was also used by NETGEAR on its previous models (RN102, NR104 and RN2120). The good thing with NETGEAR reusing this RTC chip is that it now has full kernel support, including the specific extensions to wake up a powered-off device.
EtronTech EJ188H USB3.0 Controller
The USB3.0/xHCI controller used by the device is an EtronTrech EJ188H, as depicted below.
The controller has a dedicated I2C EEPROM (ATMEL-ATMLH-52-16CM_I2C) :
GMT G761 PWM Fan controller
The rotation speed of the fan is controlled by a GMT G761 PWM fan controller chip.
FIXME: add and reference a fancontrol section
Main daughter board (USB 3.0 eSata, serial, ethernet and fan connector)
Mainboard front buttons and LED
Atheros AR8035 Gigabit Ethernet PHY
Delta Electronics AFB0912HH Fan
The fan on the RN204 is a 92mmx92mmx25mm Delta Electronics AFB0912HH
Serial interface / Console
On RN204, as on previous ReadyNAS NAS, one of the SoC UART is routed up to the main daughter board and associated pins are directly available under a simple sticker at the rear of the device, on the left side, as depicted above.
Once the sticker removed, the four pins of the serial console on the main daughter board can be used to get access to the device. Note that the serial port is a 3.3V one, i.e. you need a specific adapter like the one depicted below and cannot use a usual 12V serial or USB serial dongle for that purpose..
The specific purpose of each pin is depicted below
FIXME: document pinout
Below is what default NETGEAR kernel reports about the serial console.
FIXME: document pinout