LINUX.ORG.RU

OrangePI и SPI

 ,


0

2

Добрый день.
Подскажите, пожалуйста, как можно на OrangePI увеличить размер принимающего SPI-буфера до 64К (и надо ли)?
Файла /boot/cmdline.txt нет, и создание его с записью

spidev.bufsiz=65535
не помогает.
Команда
cat /sys/module/spidev/parameters/bufsiz
выдаёт 4096.
Плата - OrangePI3 LTS.
ОС - Debian (Orangepi3-lts_3.0.8_debian_bullseye_server_linux5.16.17).

Ответ на: комментарий от token_polyak

Подловили.
Я не смог найти информации, как его увеличить.
Предполагается, что размер передаваемых данных от Slave будет равен 64К. Чтобы не производить операцию чтения по 4096 байт 16 раз, хотелось бы одним разом управиться.

jockerface
() автор топика
Ответ на: комментарий от jockerface

Сначала надо разобраться, как у тебя грузится ядро. Вполне вероятно, что никакой cmdline.txt ни на каком этапе не учитывается, и опции надо прописать где-то ещё. Покажи содержимое директории /boot (ls /boot), если там есть boot.cmd - можно нужную опцию добавить в него, а затем превратить в образ командой mkimage -A arm -T script -d boot.cmd boot.scr. Ну или переписать, чтоб читал строку параметров ядра из текстового файла.

Ещё посмотри cat /proc/cmdline, вдруг оно всё-таки читается. И попробуй от рута echo 65535 > /sys/module/spidev/parameters/bufsiz - на случай, если изменить просто-напросто нельзя.

token_polyak ★★★★★
()
Ответ на: комментарий от token_polyak

Здравствуйте. Попробовал следующее:
1. Добавил опцию spidev.bufsiz=65535 в файл boot.cmd. Не помогло.
2. Попробовал в рута выполнить

echo 65535 > /sys/module/spidev/parameters/bufsiz
Не помогло. Ошибка
/sys/module/spidev/parameters/bufsiz: Permission denied
Если изменить права доступа на 666, возникает
echo: write error: Input/output error

3. Попробовал наложить оверлей на SPI (orangepi-add-overlay). Не помогло.
Что ещё можно попробовать сделать?

jockerface
() автор топика