Перейти к содержанию
    

at91sam9260-ek U-Boot вот я и застопорился...

9 hours ago, aaarrr said:

.config от ядра прикрепите - посмотрим.

RomBOOT
>

AT91Bootstrap 3.8.10 (Вс 03 окт 2021 16:22:43 MSK)

NAND: Done to load image


U-Boot 2016.09.01 (Oct 03 2021 - 16:23:14 +0300)

CPU: AT91SAM9260
Crystal frequency:   18.432 MHz
CPU clock        :  198.656 MHz
Master clock     :   99.328 MHz
DRAM:  64 MiB
WARNING: Caches not enabled
NAND:  256 MiB
In:    serial
Out:   serial
Err:   serial
Net:   macb0
Error: macb0 address not set.

Hit any key to stop autoboot:  0 

NAND read: device 0 offset 0x200000, size 0x382940
 3680576 bytes read: OK

NAND read: device 0 offset 0x140000, size 0x4980
 18816 bytes read: OK
Kernel image @ 0x22000000 [ 0x000000 - 0x382840 ]
## Flattened Device Tree blob at 22800000
   Booting using the fdt blob at 0x22800000
   Loading Device Tree to 23eb2000, end 23eb997f ... OK

Starting kernel ...

Booting Linux on physical CPU 0x0
Linux version 4.8.6 (igor@debianNUC7PJYH) (gcc version 9.3.0 (Buildroot 2021.02.3) ) #1 Thu Oct 7 00:33:26 MSK 2021
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
CPU: VIVT data cache, VIVT instruction cache
OF: fdt:Machine model: Atmel at91sam9260ek
Memory policy: Data cache writeback
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
Kernel command line: console=ttyS0,115200 earlyprintk mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,256K(env),256k(evn_redundant),256k(spare),512k(dtb),6M(kernel)ro,-(rootfs) rootfstype=ubifs ubi.mtd=7 root=ubi0:rootfs
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 57488K/65536K available (4899K kernel code, 175K rwdata, 1744K rodata, 220K init, 127K bss, 8048K reserved, 0K cma-reserved)
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    vmalloc : 0xc4800000 - 0xff800000   ( 944 MB)
    lowmem  : 0xc0000000 - 0xc4000000   (  64 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .text : 0xc0008000 - 0xc04d1118   (4901 kB)
      .init : 0xc06ad000 - 0xc06e4000   ( 220 kB)
      .data : 0xc06e4000 - 0xc070ff20   ( 176 kB)
       .bss : 0xc070ff20 - 0xc072fd28   ( 128 kB)
NR_IRQS:16 nr_irqs:16 16
clocksource: pit: mask: 0x7ffffff max_cycles: 0x7ffffff, max_idle_ns: 9620954980 ns
sched_clock: 32 bits at 128 Hz, resolution 7812500ns, wraps every 16777215996093750ns
Console: colour dummy device 80x30
Calibrating delay loop... 98.72 BogoMIPS (lpj=385024)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x20008400 - 0x2000847c
devtmpfs: initialized
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 14931722236523437 ns
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
AT91: Detected SoC: at91sam9260, revision 2
No ATAGs?
gpio-at91 fffff400.gpio: at address c485a400
gpio-at91 fffff600.gpio: at address c485c600
gpio-at91 fffff800.gpio: at address c485e800
pinctrl-at91 ahb:apb:pinctrl@fffff400: initialized AT91 pinctrl driver
clocksource: tcb_clksrc: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 153935280796 ns
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
i2c-gpio i2c-gpio-0: using pins 23 (SDA) and 24 (SCL)
Linux video capture interface: v2.00
Advanced Linux Sound Architecture Driver Initialized.
clocksource: Switched to clocksource tcb_clksrc
NET: Registered protocol family 2
TCP established hash table entries: 1024 (order: 0, 4096 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
futex hash table entries: 256 (order: -1, 3072 bytes)
workingset: timestamp_bits=30 max_order=14 bucket_order=0
io scheduler noop registered (default)
fffff200.serial: ttyS0 at MMIO 0xfffff200 (irq = 16, base_baud = 6208000) is a ATMEL_SERIAL
console [ttyS0] enabled
fffb0000.serial: ttyS1 at MMIO 0xfffb0000 (irq = 26, base_baud = 6208000) is a ATMEL_SERIAL
atmel_usart fffb0000.serial: Not supported ip name nor version, set to uart
fffb4000.serial: ttyS2 at MMIO 0xfffb4000 (irq = 27, base_baud = 6208000) is a ATMEL_SERIAL
atmel_usart fffb4000.serial: Not supported ip name nor version, set to uart
[drm] Initialized drm 1.1.0 20060810
brd: module loaded
loop: module loaded
ssc fffbc000.ssc: Atmel SSC device at 0xc4890000 (irq 31)
atmel_nand 40000000.nand: No DMA support for NAND access.
nand: device found, Manufacturer ID: 0xec, Chip ID: 0xda
nand: Samsung NAND 256MiB 3,3V 8-bit
nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
atmel_nand 40000000.nand: Use On Flash BBT
Bad block table found at page 131008, version 0x01
Bad block table found at page 130944, version 0x01
nand_read_bbt: bad block at 0x000000ea0000
nand_read_bbt: bad block at 0x00000ae40000
8 cmdlinepart partitions found on MTD device atmel_nand
Creating 8 MTD partitions on "atmel_nand":
0x000000000000-0x000000040000 : "bootstrap"
0x000000040000-0x0000000c0000 : "uboot"
0x0000000c0000-0x000000100000 : "env"
0x000000100000-0x000000140000 : "evn_redundant"
0x000000140000-0x000000180000 : "spare"
0x000000180000-0x000000200000 : "dtb"
0x000000200000-0x000000800000 : "kernel"
0x000000800000-0x000010000000 : "rootfs"
libphy: Fixed MDIO Bus: probed
macb fffc4000.ethernet: invalid hw address, using random
libphy: MACB_mii_bus: probed
Davicom DM9161A fffc4000.etherne:00: attached PHY driver [Davicom DM9161A] (mii_bus:phy_addr=fffc4000.etherne:00, irq=-1)
macb fffc4000.ethernet eth0: Cadence MACB rev 0x0001010c at 0xfffc4000 irq 28 (06:23:d1:04:ad:93)
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-atmel: EHCI Atmel driver
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
ohci-atmel: OHCI Atmel driver
at91_ohci 500000.ohci: USB Host Controller
at91_ohci 500000.ohci: new USB bus registered, assigned bus number 1
at91_ohci 500000.ohci: irq 33, io mem 0x00500000
usb usb1: New USB device found, idVendor=1d6b, idProduct=0001
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: USB Host Controller
usb usb1: Manufacturer: Linux 4.8.6 ohci_hcd
usb usb1: SerialNumber: at91
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
usbcore: registered new interface driver usb-storage
usbcore: registered new interface driver usbserial
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial support registered for generic
usbcore: registered new interface driver ftdi_sio
usbserial: USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver pl2303
usbserial: USB Serial support registered for pl2303
udc: at91_udc version 3 May 2006
g_serial gadget: Gadget Serial v2.4
g_serial gadget: g_serial ready
mousedev: PS/2 mouse device common for all mice
rtc-at91sam9 fffffd20.rtc: rtc core: registered fffffd20.rtc as rtc0
rtc-at91sam9 fffffd20.rtc: rtc0: SET TIME!
AT91: Starting after general reset
at91_wdt fffffd40.watchdog: watchdog is disabled
at91_wdt: probe of fffffd40.watchdog failed with error -22
atmel_mci fffa8000.mmc: version: 0x210
atmel_mci fffa8000.mmc: using PDC
atmel_mci fffa8000.mmc: Atmel MCI controller at 0xfffa8000 irq 30, 1 slots
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
iio iio:device0: Resolution used: 10 bits
iio iio:device0: not support touchscreen in the adc compatible string.
NET: Registered protocol family 10
sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
NET: Registered protocol family 17
ubi0: attaching mtd7
usb 1-1: new full-speed USB device number 2 using at91_ohci
random: fast init done
g_serial gadget: full-speed config #2: CDC ACM config
usb 1-1: New USB device found, idVendor=1a40, idProduct=0101
usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
usb 1-1: Product: USB 2.0 Hub [MTT]
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
ubi0: scanning is finished
ubi0: attached mtd7 (name "rootfs", size 248 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 129024 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 512
ubi0: VID header offset: 512 (aligned 512), data offset: 2048
ubi0: good PEBs: 1978, bad PEBs: 6, corrupted PEBs: 0
ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 163925680
ubi0: available PEBs: 0, total reserved PEBs: 1978, PEBs reserved for bad PEB handling: 34
ubi0: background thread "ubi_bgt0d" started, PID 667
input: gpio_keys as /devices/soc0/gpio_keys/input/input0
rtc-at91sam9 fffffd20.rtc: hctosys: unable to read the hardware clock
ALSA device list:
  No soundcards found.
UBIFS (ubi0:0): recovery needed
UBIFS (ubi0:0): recovery deferred
UBIFS (ubi0:0): UBIFS: mounted UBI device 0, volume 0, name "rootfs", R/O mode
UBIFS (ubi0:0): LEB size: 129024 bytes (126 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
UBIFS (ubi0:0): FS size: 248887296 bytes (237 MiB, 1929 LEBs), journal size 9033728 bytes (8 MiB, 71 LEBs)
UBIFS (ubi0:0): reserved for root: 0 bytes (0 KiB)
UBIFS (ubi0:0): media format: w4/r0 (latest is w4/r0), UUID 9F4F3A22-0485-4A0E-B51A-EE01CDB0CB14, small LPT model
VFS: Mounted root (ubifs filesystem) readonly on device 0:13.
devtmpfs: mounted
Freeing unused kernel memory: 220K (c06ad000 - c06e4000)
This architecture does not have kernel memory protection.
UBIFS (ubi0:0): completing deferred recovery
UBIFS (ubi0:0): deferred recovery completed
UBIFS (ubi0:0): background thread "ubifs_bgt0_0" started, PID 679
Starting syslogd: OK
Starting klogd: OK
Running sysctl: OK
Initializing random number generator: OK
Saving random seed: OK
Starting network: OK

Welcome to Buildroot
buildroot login: root    
# df
Filesystem           1K-blocks      Used Available Use% Mounted on
ubi0:rootfs             227892      1516    226376   1% /
devtmpfs                 28744         0     28744   0% /dev
tmpfs                    28852         0     28852   0% /dev/shm
tmpfs                    28852        20     28832   0% /tmp
tmpfs                    28852        16     28836   0% /run
# 
# random: crng init done

вот по этой ссылке:

https://www.at91.com/viewtopic.php?f=12&t=23189

это конфиг от build root(прилепил много чего в конфигурацию...):

 

config

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, прекрасно: ubi завелся, про jffs2 можно забыть - у него весьма ограниченный круг применений в современных условиях.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня основная задача:

- собрать минимальное ядро, что бы где-то в /etc задавать конфигурацию;

- возможночть исходя из конфигурации применять(загружать) модули *.ko;

- поднять USB-BLUETOOTH и USB-WIFI  (потому как USB-MASTORAGE уже есть) в первую очередь;

- поднять I2C; SPI; IO и пр. применяя *.ko по мере необходимости

И всё это с целью получить официальное разрешение на разработку небольшой платы с современным ARM и так же получить официальное рабочее время на освоение сборки и конфигурацию Linux.

Сейчас я могу это делать только с 19:00 до времени сна. Утром около 5:30 подъём и дорога на работу.

PS: это моё сообщение не официальное с точки зрения рабочего времени.

Изменено пользователем Овчинников Игорь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так тут практически все готово:

USB BT/WiFi: просто включить соответствующие подсистемы и драйверы в конфигурации ядра, если этого еще не сделано

I2C: проверить работу (i2cdetect -y 0), возможно, используемые GPIO не соответствуют плате:

i2c-gpio i2c-gpio-0: using pins 23 (SDA) and 24 (SCL)

SPI: нужно добавить описание в dts. Но сначала придется как-то выяснить, какие выводы задействованы (через ручное управление GPIO и мультиметр, например)

GPIO: уже должно работать (см. /sys/class/gpio)

 

34 minutes ago, Овчинников Игорь said:

И всё это с целью получить официальное разрешение на разработку небольшой платы с современным ARM и так же получить официальное рабочее время на освоение сборки и конфигурацию Linux.

Сильно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, aaarrr said:

Так тут практически все готово:

USB BT/WiFi: просто включить соответствующие подсистемы и драйверы в конфигурации ядра, если этого еще не сделано

I2C: проверить работу (i2cdetect -y 0), возможно, используемые GPIO не соответствуют плате:

i2c-gpio i2c-gpio-0: using pins 23 (SDA) and 24 (SCL)

SPI: нужно добавить описание в dts. Но сначала придется как-то выяснить, какие выводы задействованы (через ручное управление GPIO и мультиметр, например)

GPIO: уже должно работать (см. /sys/class/gpio)

 

Сильно.

По поводу сильно, не знаю... но украдкой делать это жесть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 minutes ago, Овчинников Игорь said:

украдкой делать это жесть

Тем более сильно. Но, думаю, цель того стоит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сначала угробил, потом восстановил....

# mount /dev/sda1 /mnt/sda
FAT-fs (sda1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
# 
# ls /mnt/sda
Image                      at91sam9260ek.dtb
Lin_C++_DOC                distr
RECYCLER                   info
RES                        moxa_kma
System Volume Information  vmlinux
VirtBox                    zImage
# 
# uname -a
Linux buildroot 4.8.6 #1 Thu Oct 7 14:43:49 MSK 2021 armv5tejl GNU/Linux
# 
# 

Долго курил мено u-boot и кучу времени потерял, в надежде сделать не очень долгое "переключение" между источником загрузки... потом буду думать, если будут силы и время. Время - вот чего не хватает и жаль что в сутках только 24 часа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 hours ago, aaarrr said:

Так тут практически все готово:

USB BT/WiFi: просто включить соответствующие подсистемы и драйверы в конфигурации ядра, если этого еще не сделано

I2C: проверить работу (i2cdetect -y 0), возможно, используемые GPIO не соответствуют плате:

i2c-gpio i2c-gpio-0: using pins 23 (SDA) and 24 (SCL)

SPI: нужно добавить описание в dts. Но сначала придется как-то выяснить, какие выводы задействованы (через ручное управление GPIO и мультиметр, например)

GPIO: уже должно работать (см. /sys/class/gpio)

 

Сильно.

про DTS: а что методом написания модуля типа *.ko не реализуемо? В подгружаемом модуле должны бать определения, каккой вывод IO, какой регистр контроллера и прочее... чисто на низком уровне. Ведь именно в этом и весь смысл. Загрузи модуль такой-то и получил доступ к чему-то. Так нельзя?

А нужный модуль загружается иди с правами ROOT или при старте системы согласно конфигурации.

Изменено пользователем Овчинников Игорь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 hours ago, Овчинников Игорь said:

про DTS: а что методом написания модуля типа *.ko не реализуемо?

SPI - стандартный интерфейс. Ваш модуль может его использовать, но драйвер-то завести нужно.

Можно и вручную окучить любую периферию, и использовать в эксклюзивном режиме, но лучше сначала изучить, как принято.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, aaarrr said:

SPI - стандартный интерфейс. Ваш модуль может его использовать, на драйвер-то завести нужно.

Можно и вручную окучить любую периферию, и испрльзовать в эксклюзивном режиме, но лучше сначала изучить, как принято.

Не спорю! Но SPI на этой плате может применяться, а может и нет - наколько я привык, в микроконтроллерах выводы, согласно даташиту, назначаются. Я, как говорится, только в начале пути... но к микроконтроллерам привык. Единстрвенное то, что именно мкроконтроллеры(код для них) делал под виндой, хоть сам уже, довольно значительное время, пересел на Linux.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброго времени суток!

Извините, но есть вопрос:

При перезаливке rootfs система уже не стартует, а приходится зсливать всё с самого начала. Где, точнее в каких местах, происходят изменения. Может с заменой rootfs следует только обновить некоторве места и не трогать загрузчики. Bootstrap по моему вообще не при чём.

Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 minutes ago, Овчинников Игорь said:

При перезаливке rootfs система уже не стартует, а приходится зсливать всё с самого начала.

Каким образом перезаливаете? Не должно ничего ломаться. Лог неудачной загрузки приведите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

29 minutes ago, aaarrr said:

Каким образом перезаливаете? Не должно ничего ломаться. Лог неудачной загрузки приведите.

Перезаливаю SAM-BA под виндой... есть и JTAG, но больно хлопотно для такого.

Сейчас я не дома, но лог похож на то, когда я только неудачно запускал... как будто нет rootfs. Потому и такой вопрос, что не понятно почему так.

Думал при первом запуске, что-то гдето меняется... потом в процессе работы/перезапусков нет ни каких проблем.

Лог смогу только вечером. Буду разбираться... думал такое встречается.

Изменено пользователем Овчинников Игорь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть правда вариант - каждый залитый уже файл, сравнивать с оигиналом... я имею ввиду области в NAND с тем, что записывал.

Изменено пользователем Овчинников Игорь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

49 minutes ago, Овчинников Игорь said:

думал такое встречается

Всякое встречается, но по общему описанию о причине не догадаться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...