Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:0
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:4
Форум » starterkit.ru » Отладочные платы » SK-iMX233
SK-MIMX233 телодвижения ...
Pavel Ivanchenko
Добавлено 12.02.2010 11:51 Сообщение: 121
Pavel Ivanchenko
Admin
4.39

Пункты: 91528
Регистрация: 24.03.2009
Пол: Мужчина
Как во всем этом безобразии ядро править, есть идеи?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 12.02.2010 12:06 Редактировалось 12.02.2010 12:20 Сообщение: 122
sasamy
4.70

Пункты: 77333
Регистрация: 14.08.2009
Да - с этим похоже проблем не будет, по крайней мере у меня вроде получается после прочтения доки :) План такой
1 При первой сборке как обычно выбираем фрискейловское ядро и ставим галку Leave the sources after building
2 При повторной сборке ./ltib -m config - выбираем kernel-->Local Linux directory build , и прописываем путь к сохранившимся исходникам там где написано Enter your Linux source directory, например у меня это /home/sasa/i.mx233/new/ltib/rpm/BUILD/linux-2.6.31
3 На всякий случай я еще каждый раз добавляю галку Leave the sources after building, не уверен что это нужно
4 Чтобы каждый раз не дергать при пересборке config ставим галку Always rebuild the kernel

Для пересборки теперь достаточно ./ltib. Да - галку с инклудов я убрал - как оказалось она нужна только если собираются какие-то свои модули в других местах вне этой системы сборки

PS спасибо за доку

PPS Я думаю для надежности стоит вынести ядро из ltib/rpm/BUILD/linux-2.6.31 куда-то в другое место из дерева системы сборки и на него указать путь а то фик его знает - взбредет ему распаковать ядро и все несохраненные изменения могут пойти к чертям :)
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 12.02.2010 12:52 Редактировалось 12.02.2010 12:59 Сообщение: 123
sasamy
4.70

Пункты: 77333
Регистрация: 14.08.2009
Дока полезная - оказывется там очень много возможностей - можно работать с отдельными пакетами, делать правки, автоматически создавать патчи после этого и вообще похоже проблем с внесением изменений или добавлением новых пакетов не будет, надо только повнимательней читать :) Я сначала по буилдруту заскучал - счас понимаю что эта система намного удобней при разработке..
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 12.02.2010 13:19 Редактировалось 12.02.2010 13:21 Сообщение: 124
Pavel Ivanchenko
Admin
4.39

Пункты: 91528
Регистрация: 24.03.2009
Пол: Мужчина
Действительно, так намного лучше :), спасибо!
Собрал минимальный профиль - работает, теперь пытаюсь подключить драйвер KSZ8851SNL.
В поддержке сетевых устройств включаю KS8851 и отключаю ENC28J60, в файле stmp378x_devb.c добавил секцию:
Код
static struct spi_board_info spi_board_info[] __initdata = {
#if defined(CONFIG_ENC28J60) || defined(CONFIG_ENC28J60_MODULE)
<------>{
<------><------>.modalias = "enc28j60",
<------><------>.max_speed_hz = 6 * 1000 * 1000,
<------><------>.bus_num<------>= 1,
<------><------>.chip_select = 0,
<------><------>.platform_data = &enc_data,
<------>},
#endif
<------>{
<------><------>.modalias = "ks8851",
<------><------>.max_speed_hz = 6 * 1000 * 1000,
<------><------>.bus_num<------>= 1,
<------><------>.chip_select = 0,
<------><------>.platform_data = &enc_data,
<------>},
};
Пересобрал, запустил, а в системе что то ни слова о 8851:
Код
Linux version 2.6.31-203-gee1fdae (user@debian) (gcc version 4.1.2) #7 PREEMPT Wed Feb 10 19:58:20 EST 2010
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: STMP378X
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
Kernel command line: console=ttyAM0,115200 root=/dev/mmcblk0p3 rw rootwait lcd_panel=lms430 ssp1=mmc
PID hash table entries: 256 (order: 8, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 64MB = 64MB total
Memory: 56320KB available (3932K code, 273K data, 124K init, 0K highmem)
SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:224
Console: colour dummy device 80x30
console [ttyAM0] enabled
Calibrating delay loop... 99.94 BogoMIPS (lpj=499712)
Security Framework initialized
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
regulator: core version 0.5
NET: Registered protocol family 16
regulator: vddd: 800 <--> 1575 mV fast normal
regulator: vddd_bo: 800 <--> 1575 mV fast normal
regulator: vdda: 1500 <--> 2275 mV fast normal
regulator: vddio: 2800 <--> 3575 mV fast normal
regulator: overall_current: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-keyboard-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx_ts-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-appuart-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-dbguart-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx_wdt-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-rtc-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-fb-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-bl-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-rotdec-1: 0 <--> 2147483 mA fast normal
regulator: i2c_stmp3xxx-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-persistent-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-dcpboot-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-dcp-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-battery-1: 0 <--> 2147483 mA fast normal
regulator: stmp3xxx-pxp-1: 0 <--> 2147483 mA fast normal
regulator: mmc_ssp-1: 0 <--> 2147483 mA fast normal
regulator: mmc_ssp-2: 0 <--> 2147483 mA fast normal
regulator: charger-1: 0 <--> 2147483 mA fast normal
regulator: power-test-1: 0 <--> 2147483 mA fast normal
regulator: cpufreq-1: 0 <--> 2147483 mA fast normal
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
Unpacking initramfs...
Freeing initrd memory: 4096K
usb: DR gadget (utmi) registered
JFFS2 version 2.2. (NAND) &#194;© 2001-2006 Red Hat, Inc.
msgmni has been set to 118
alg: No test for stdrng (krng)
cryptodev: driver loaded.
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered (default)
Console: switching to colour frame buffer device 60x34
stmp3xxx-dbguart: ttyAM0 at MMIO 0x80070000 (irq = 0) is a Debug UART
stmp3xxx-appuart.0: ttySP0 at MMIO 0x8006c000 (irq = 24) is a stmp3xxx-appuart.0
Found APPUART 3.0.0
loop: module loaded
GPMI NAND Flash driver
bch_init: initialized
ecc8_init: initialized
Scanning for NAND Flash chips...
NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-bit)
Manufacturer : Samsung (0xec)
Device Code : 0xda
Cell Technology : SLC
Chip Size : 256 MiB
Pages per Block : 64
Page Geometry : 2048+64
ECC Strength : 4 bits
ECC Size : 512 B
Data Setup Time : 20 ns
Data Hold Time : 10 ns
Address Setup Time: 20 ns
GPMI Sample Delay : 6 ns
tREA : Unknown
tRLOH : Unknown
tRHOH : Unknown
Description : K9F2G08U0A
Scanning for NCB...
GPMI: Checking page 0x00000000
GPMI: Signature found at 0x00000000
GPMI: Valid NCB found at 0x00000000
Scanning device for bad blocks
Bad eraseblock 1383 at 0x00000ace0000
Bad eraseblock 2046 at 0x00000ffc0000
Boot area protection enabled: 0x1400000 bytes.
Partitioning for one chip.
Creating 2 MTD partitions on "gpmi-medium":
0x000000000000-0x000001400000 : "gpmi-0-boot"
0x000001400000-0x000010000000 : "gpmi-general-use"
usbmon: debugfs is not available
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
mice: PS/2 mouse device common for all mice
input: stmp3xxx-keyboard as /class/input/input0
input: STMP3XXX touchscreen as /class/input/input1
input: stmp3xxx-rotdec as /class/input/input2
STMP3xxx RTC driver v1.0 hardware v2.0.0
stmp3xxx-rtc stmp3xxx-rtc: rtc core: registered stmp3xxx-rtc as rtc0
Linux video capture interface: v2.00
stmp3xxx-pxp stmp3xxx-pxp: initialized
stmp3xxx watchdog: initialized, heartbeat 19 sec
__stmp3xxx_reset_block(f0010000): timeout when resetting
__stmp3xxx_reset_block(f0010000): timeout when resetting
stmp3xxx-dcp stmp3xxx-dcp: DCP crypto enabled.!
Advanced Linux Sound Architecture Driver Version 1.0.20.
stmp378x-audio stmp378x-audio: STMP378X ADC/DAC Audio Codec 0.1
No device for DAI stmp378x adc/dac
stmp3xxx-spdif stmp3xxx-spdif: STMP3XXX SPDIF Audio Transmitter 0.1
No device for codec stmp3xxx spdif
No device for DAI stmp3xxx spdif
No device for DAI stmp3xxx adc/dac
No device for DAI stmp3xxx spdif
asoc: stmp378x adc/dac <-> stmp3xxx adc/dac mapping ok
asoc: stmp3xxx spdif <-> stmp3xxx spdif mapping ok
stmp3xxx_request_pin: CONFLICT DETECTED pin 2:7 caller spdif owner stmp3xxx-rotdec
ALSA device list:
#0: STMP3780 Devb (stmp378x adc/dac)
#1: STMP3780 Devb (stmp3xxx spdif)
TCP cubic registered
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
stmp3xxx-rtc stmp3xxx-rtc: setting system clock to 1970-01-01 00:00:24 UTC (24)
Freeing init memory: 124K
init started: BusyBox v1.15.0 ()
starting pid 707, tty '': '/etc/rc.d/rcS'
Mounting /proc and /sys
Starting the hotplug events dispatcher udevd
Synthesizing initial hotplug events
Setting the hostname to freescale
Mounting filesystems
mount: mounting usbfs on /proc/bus/usb failed: No such file or directory
Starting inetd:
starting pid 1031, tty '': '/sbin/getty -L ttyAM0 115200 vt100'

/proc/kmsg то же молчит
Код
gpmi_ecc_read_oob: ECC failed=2, corrected=0
<4>Bad eraseblock 2046 at 0x00000ffc0000
<7>readsize = 2112, bufmask = 0x1FF
<6>Boot area protection enabled: 0x1400000 bytes.
<6>Partitioning for one chip.
<5>Creating 2 MTD partitions on "gpmi-medium":
<5>0x000000000000-0x000001400000 : "gpmi-0-boot"
<5>0x000001400000-0x000010000000 : "gpmi-general-use"
<5>usbmon: debugfs is not available
<6>Initializing USB Mass Storage driver...
<6>usbcore: registered new interface driver usb-storage
<6>USB Mass Storage support registered.
<6>mice: PS/2 mouse device common for all mice
<6>input: stmp3xxx-keyboard as /class/input/input0
<6>input: STMP3XXX touchscreen as /class/input/input1
<6>input: stmp3xxx-rotdec as /class/input/input2
<6>STMP3xxx RTC driver v1.0 hardware v2.0.0
<6>stmp3xxx-rtc stmp3xxx-rtc: rtc core: registered stmp3xxx-rtc as rtc0
<6>Linux video capture interface: v2.00
<6>stmp3xxx-pxp stmp3xxx-pxp: initialized
<6>stmp3xxx watchdog: initialized, heartbeat 19 sec
<3>__stmp3xxx_reset_block(f0010000): timeout when resetting
<3>__stmp3xxx_reset_block(f0010000): timeout when resetting
<5>stmp3xxx-dcp stmp3xxx-dcp: DCP crypto enabled.!
<6>Advanced Linux Sound Architecture Driver Version 1.0.20.
<6>stmp378x-audio stmp378x-audio: STMP378X ADC/DAC Audio Codec 0.1
<4>No device for DAI stmp378x adc/dac
<6>stmp3xxx-spdif stmp3xxx-spdif: STMP3XXX SPDIF Audio Transmitter 0.1
<4>No device for codec stmp3xxx spdif
<4>No device for DAI stmp3xxx spdif
<4>No device for DAI stmp3xxx adc/dac
<4>No device for DAI stmp3xxx spdif
<6>asoc: stmp378x adc/dac <-> stmp3xxx adc/dac mapping ok
<6>asoc: stmp3xxx spdif <-> stmp3xxx spdif mapping ok
<4>stmp3xxx_request_pin: CONFLICT DETECTED pin 2:7 caller spdif owner stmp3xxx-rotdec<6>ALSA device list:
<6> #0: STMP3780 Devb (stmp378x adc/dac)
<6> #1: STMP3780 Devb (stmp3xxx spdif)
<6>TCP cubic registered
<6>NET: Registered protocol family 17
<6>RPC: Registered udp transport module.
<6>RPC: Registered tcp transport module.


/proc/devices
Код

Character devices:
1 mem
4 /dev/vc/0
4 tty
5 /dev/tty
5 /dev/console
5 /dev/ptmx
7 vcs
10 misc
13 input
29 fb
81 video4linux
90 mtd
116 alsa
128 ptm
136 pts
180 usb
189 usb_device
204 ttyAM
242 ttySP
254 rtc

Block devices:
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
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 12.02.2010 13:43 Сообщение: 125
Pavel Ivanchenko
Admin
4.39

Пункты: 91528
Регистрация: 24.03.2009
Пол: Мужчина
Странно, включил в ядро еще поддержку ENC28J60, так же никаких упоминаний при старте, раньше (на 2.6.28) хотябы ругалась что найти устройство не может.
Подумал опять глюки со сборкой, выключил из ядра SD/MMC - устройство mmc исчезло.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 12.02.2010 13:45 Редактировалось 12.02.2010 13:50 Сообщение: 126
sasamy
4.70

Пункты: 77333
Регистрация: 14.08.2009
Павел - выложи гденить конфиг ядра и файлы в которых делал исправления.

А понял - похоже дело в том что в командной строке прописан режим ssp - mmc, надо его на spi переключить или взможно просто убрать ssp1=mmc
Kernel command line: console=ttyAM0,115200 root=/dev/mmcblk0p3 rw rootwait lcd_panel=lms430 >>>ssp1=mmc<<<

ЗЫ подсветка табуляции в мс отключается в редакторе [shift]+[alt]+[-]
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 12.02.2010 13:53 Редактировалось 12.02.2010 14:03 Сообщение: 127
Pavel Ivanchenko
Admin
4.39

Пункты: 91528
Регистрация: 24.03.2009
Пол: Мужчина
Забавно, сейчас тупо вставил printk в инит ENC28J60 - никаких следов. Сейчас аргументы запуска подправлю.
Attachment file: uploads/forum/forum-5VPzq6F06T-7.zip

Остается понять, где они аргументы звпуска подсовывают, т.к. это не аргументы из конфига ядра и не из imx-bootlets ...

Ага, хотя и boot stream у меня и отключен, но аргументы для ядра она похоже все равно из конфига LTIB берет.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 12.02.2010 14:05 Редактировалось 12.02.2010 14:12 Сообщение: 128
sasamy
4.70

Пункты: 77333
Регистрация: 14.08.2009
Вариантов немного... если нет загрузчика то всего два :) Либо в командной строке в конфиге ядра либо в бутсрапе в atag cmdline - там есть текстовые файлы с вариантами для разных плат, счас скажу точней где это

Так, а профиль какой выбран - похоже не update ? там нет такого варианта :) Ничего - счас найдем...

А вообще нужно передать ssp1=spi1
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 12.02.2010 14:15 Сообщение: 129
Pavel Ivanchenko
Admin
4.39

Пункты: 91528
Регистрация: 24.03.2009
Пол: Мужчина
Профиль минимальной системы, во всех уже конфигах, чтто нашел, скрутил, а все равно не меняется, похоже что все-таки через linux-prep ...
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 12.02.2010 14:18 Редактировалось 12.02.2010 14:21 Сообщение: 130
sasamy
4.70

Пункты: 77333
Регистрация: 14.08.2009
Нашлась эта гадская строка - она передается через atag в linux_prep но ее линковщик потом где-то незаметно подсовывает
вот тут

ltib/config/platform/imx/packages.lkc

config PKG_BOOT_STREAM_CMDLINE1

Если что можно тут поменять но я думаю есть более правильный метод. Возможно... а вернее даже точно нужно пересобирать пакет этот с бутсрапом - он же уже из rpm его вытряхивает поэтому где ты не меняй - ничего не меняется :)
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » SK-iMX233