0

У меня есть пользовательская плата на основе am335x. Я создаю buildroot для минимальной корневой файловой системы (минимальный размер): загружается как initramfs. Я могу загрузить изображение, но, к сожалению, нет записи/dev/mmcblk0. Я хотел бы знать, как заставить его создать эту запись. Ниже приведено несколько журналов и данных, которые помогут.Buildroot не создает/dev записи для emmc на пользовательской плате am335x

================================================================================================================================= ========================

# ls /dev 
console    ram14    tty26    tty55 
cpu_dma_latency  ram15    tty27    tty56 
full    ram2    tty28    tty57 
hwrng    ram3    tty29    tty58 
i2c-0    ram4    tty3    tty59 
i2c-1    ram5    tty30    tty6 
input    ram6    tty31    tty60 
kmem    ram7    tty32    tty61 
kmsg    ram8    tty33    tty62 
loop-control  ram9    tty34    tty63 
loop0    random    tty35    tty7 
loop1    shm     tty36    tty8 
loop2    tty     tty37    tty9 
loop3    tty0    tty38    ttyO0 
loop4    tty1    tty39    ttyO1 
loop5    tty10    tty4    ttyS0 
loop6    tty11    tty40    ttyS1 
loop7    tty12    tty41    ttyS2 
mem     tty13    tty42    ttyS3 
network_latency  tty14    tty43    ubi_ctrl 
network_throughput tty15    tty44    urandom 
null    tty16    tty45    usbmon0 
port    tty17    tty46    vcs 
psaux    tty18    tty47    vcs1 
ptmx    tty19    tty48    vcsa 
pts     tty2    tty49    vcsa1 
ram0    tty20    tty5    watchdog 
ram1    tty21    tty50    watchdog0 
ram10    tty22    tty51    zero 
ram11    tty23    tty52 
ram12    tty24    tty53 
ram13    tty25    tty54 
# cat /proc/partitions 
major minor #blocks name# cat /proc/devices 
Character devices: 
    1 mem 
    4 /dev/vc/0 
    4 tty 
    4 ttyS 
    5 /dev/tty 
    5 /dev/console 
    5 /dev/ptmx 
    7 vcs 
10 misc 
13 input 
29 fb 
89 i2c 
90 mtd 
128 ptm 
136 pts 
153 spi 
166 ttyACM 
180 usb 
188 ttyUSB 
189 usb_device 
226 drm 
248 ttySDIO 
249 usbmon 
250 ttyO 
251 watchdog 
252 ptp 
253 pps 
254 rtc 

Block devices: 
    1 ramdisk 
259 blkext 
    7 loop 
    8 sd 
31 mtdblock 
65 sd 
66 sd 
67 sd 
68 sd 
69 sd 
70 sd 
71 sd 
128 sd 
129 sd 
130 sd 
131 sd 
132 sd 
133 sd 
134 sd 
135 sd 
179 mmc 
# cat /etc/fstab 
# <file system> <mount pt>  <type> <options>  <dump> <pass> 
/dev/root  /    ext2 rw,noauto  0  1 
proc   /proc   proc defaults  0  0 
devpts   /dev/pts  devpts defaults,gid=5,mode=620 0  0 
tmpfs   /dev/shm  tmpfs mode=0777  0  0 
tmpfs   /tmp   tmpfs mode=1777  0  0 
tmpfs   /run   tmpfs mode=0755,nosuid,nodev 0  0 
sysfs   /sys   sysfs defaults  0  0 

=================== =============================================

Он загружает busybox и использует devtmpfs, которые являются значениями по умолчанию для buildroot. Если я использую минимальные значения TI, он показывает/dev/mmcblk0, поэтому дерево ядра и устройства в порядке. Как это решить.

С уважением, Preetam

ответ

1

Вы можете создать этот узел вручную MKNOD

mknod [OPTION]... NAME TYPE [MAJOR MINOR] 

В вашем случае типа будет б (блок). Значительное количество вы можете найти в источниках или использовать cat /proc/devices младший номер является номером раздела. Если это не так, попробуйте включить udev в конфигурации buildroot.

+0

Мне пришлось перекомпилировать buildroot с помощью mdev вместо detmpfs. – preetam