У Cubieboard железный генератор тоже есть, но пока непонятно какой модуль нужно грузить, надо разбираться. Народ
говорит, что вот
этот модуль подходит, но в стандартном Cubian он не скомпилирован... Собирать руками надо, получается.
Ну что же, пробую по стандартной схеме... Не мануал, просто ночное извращение.
1. Ставлю 7z, заголовочники ядра и исходники:
# apt-get install linux-headers-$(uname -r) linux-source-$(uname -r)
2. Распаковываю:
# cd /usr/src
# 7z x -so linux-source-$(uname -r).tar.7z | tar xf - -C .
3. Иду в каталог с модулем и создаю нужные конфиги:
# cd /usr/src/linux-source-$(uname -r)
# cp ../linux-headers-$(uname -r)/Module.symvers .
# cp ../linux-headers-$(uname -r)/.config .
4. Накладываю
патч:
# patch -p1 < exynos.diff
patching file drivers/char/hw_random/Kconfig
Hunk #1 succeeded at 47 with fuzz 2.
patching file drivers/char/hw_random/Makefile
patching file drivers/char/hw_random/exynos-rng.c
#
5. Включаю модуль exynos-rng и компилирую его:
# echo 'CONFIG_HW_RANDOM_EXYNOS=m' >> .config
# make
^C
# make modules M=$(pwd)/drivers/char/hw_random
И... Ловлю ошибку компиляции, что ожидаемо
CC [M] /usr/src/linux-source-3.4.79-sun7i/drivers/char/hw_random/exynos-rng.o
/usr/src/linux-source-3.4.79-sun7i/drivers/char/hw_random/exynos-rng.c: In function ‘exynos_rng_probe’:
/usr/src/linux-source-3.4.79-sun7i/drivers/char/hw_random/exynos-rng.c:117:2: error: implicit declaration of function ‘devm_clk_get’ [-Werror=implicit-function-declaration]
/usr/src/linux-source-3.4.79-sun7i/drivers/char/hw_random/exynos-rng.c:117:18: warning: assignment makes pointer from integer without a cast [enabled by default]
/usr/src/linux-source-3.4.79-sun7i/drivers/char/hw_random/exynos-rng.c:124:2: error: implicit declaration of function ‘devm_ioremap_resource’ [-Werror=implicit-function-declaration]
/usr/src/linux-source-3.4.79-sun7i/drivers/char/hw_random/exynos-rng.c:124:18: warning: assignment makes pointer from integer without a cast [enabled by вefault]
cc1: some warnings being treated as errors
make[1]: *** [/usr/src/linux-source-3.4.79-sun7i/drivers/char/hw_random/exynos-rng.o] Error 1
make: *** [_module_/usr/src/linux-source-3.4.79-sun7i/drivers/char/hw_random] Error 2
Старовато у кубиана ядро, надо дистрибутив с ядром 3.6 ветки... Так что пока на полку этот драйвер.