DDR memory init code is a tiny program (<1MB) that runs at early boot stages and preconfigures the RAM by testing it (training) and writing the required memory operating frequencies into registers. It is distributed as a closed-source binary in the rkbin repository, together with utilities for assembling the final binary from its various parts.
Our goal
RK3576 can these days work with nearly all open-source code, except for the earliest part which initializes the DDR RAM. It is only available in binary form from Rockchip's rkbin repository, so it's unknown how it works and what exactly it does.
Ideally we would like the full software stack to be open, which would include the DDR init code.
License prohibits reverse-engineering
Rockchip's LICENSE file in their rkbin repository is explicitly against reverse-engineering:
Except as expressively authorized by Rockchip in writing, you may NOT:
(a) decompile, reverse-engineer, dissemble, or attempt to derive any source
code from the Software;
Although formal law may permit reverse-engineering in some jurisdictions, the Flipper Devices team does not want to go down that path for now, and will instead try to convince Rockchip to open the sources. Community members have more context on the reverse-engineering side: @Bee4Queer and @doyle31
UPD
To keep the discussion readable, some information has been consolidated into the first message. Flooding, off-topic discussions, and AI slop have been removed.
DDR memory init code is a tiny program (<1MB) that runs at early boot stages and preconfigures the RAM by testing it (training) and writing the required memory operating frequencies into registers. It is distributed as a closed-source binary in the rkbin repository, together with utilities for assembling the final binary from its various parts.
Our goal
RK3576 can these days work with nearly all open-source code, except for the earliest part which initializes the DDR RAM. It is only available in binary form from Rockchip's rkbin repository, so it's unknown how it works and what exactly it does.
Ideally we would like the full software stack to be open, which would include the DDR init code.
License prohibits reverse-engineering
Rockchip's LICENSE file in their rkbin repository is explicitly against reverse-engineering:
Although formal law may permit reverse-engineering in some jurisdictions, the Flipper Devices team does not want to go down that path for now, and will instead try to convince Rockchip to open the sources. Community members have more context on the reverse-engineering side: @Bee4Queer and @doyle31
UPD
To keep the discussion readable, some information has been consolidated into the first message. Flooding, off-topic discussions, and AI slop have been removed.