Yeah we’re getting there. My build script now adds stuff to the default rockchip config before it’s copied to the root of the kernel folder, that seems to work.
I’ve also added a post-build script which also sorts out a few things:
- Runs
ssh-keygen -A
to install default SSH keys (otherwise you can’t login)
- Permanently turns off WiFi power saving via a NetworkManager conf
- Pre-installs Docker
I can then flash the board and use an AmazonBasics USB3 Ethernet adaptor to connect to my router, which works out of the box (good test to make sure the install was successful).
EDIT: Now trying to get Docker to run, think I need some more modules enabled.
Ok so it seems like no modules are being build when I do this in Docker (MODPOST says nothing created, and there’s no /lib/modules
on the device.
However, if I build the kernel on the Rock960, it makes about 800 modules and I can run make modules_install
. All I did is:
- Add a gig of swap
- Clone 96rocks/kernel and checkout
release-4.4-rock960
- Set arch (probably not needed)?
make rockchip_linux_defconfig
- make && make modules_install
Is there something different I need to do during the cross-compilation to get this working?
One strange thing is that in Docker, once I clone the repo, I get kernel 4.4.103, but when I clone on the board (same tag), I get kernel 4.4.154. The last commit for that branch was December, so I don’t see how it’s building a new version… The build process runs:
RUN cd rock960dev && repo start 96rocks/release-4.4-rock960 --all
Does that not do what I think it does? When I manually run git checkout
, I get 4.4.154
as expected(?).