Sziasztok!
Egy beagyazott voyage linux rendszeren az egyik modult (scx200_acb) megpeccseltem, az uj valtozatot (scx200_acb_v2) betettem a /lib/modules/`uname -r`/extern ala. A `depmod -a` lefuttatva, mukodik is ugy ahogy kell, minden oke. Az /etc/modules ill. /etc/modprobe.d/akarmi.conf-ban is lecsereltem a hivatkozasokat (scx200_acb => scx200_acb_v2), ennek ellenere a boot soran az scx200_acb "jon fel". Mit lehet itten tenni?
Talan az ad egy apro nehezitest, hogy ebben a disztroban (3.4.4-voyage) az i2c-core-t statikusan forditottak bele a kernelbe, es ezen a hardveren csak ez az SCX200-as I2C host van (tehat az smbus_xfer funkcionalitast ez az scx200_acb modul adja). A tobbi I2C slave device (lm90, lm92, ill egy sajat custom eszkoz) az szinten modul formajaban erheto el.
thx, A.
- 969 megtekintés
Hozzászólások
Szerintem initrd, init RAM, dracut környékén keresd a megoldást.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Egyelore semmi :/ Ugy persze felall a rendszer, hogy az /etc/rc.local-bol kicserelem, de ez messze nem tul elegans persze (foleg hogy egy filerendszer is jonne majd ezutan, amit az /etc/fstab-ban kellene elhelyezni). A `dmesg` alapjan ugy tunik hogy a south bridge (CS5535) valamelyik masik drivere ranthatja magaval:
[ 5.032593] AMD Geode RNG detected
[ 5.080985] cs5535-mfgpt cs5535-mfgpt: reserved resource region [io 0x6200-0x623f]
[ 5.081114] cs5535-mfgpt cs5535-mfgpt: 8 MFGPT timers available
[ 5.081224] geode-aes: GEODE AES engine enabled.
[ 5.091565] cs5535-smb cs5535-smb: SCx200 device 'CS5535 ACB0' registered
[ 5.114663] Error: Driver 'cs5535-smb' is already registered, aborting...
[ 5.143898] input: PC Speaker as /devices/platform/pcspkr/input/input0
[ 5.489246] Error: Driver 'pcspkr' is already registered, aborting...
[ 7.483880] Error: Driver 'cs5535-smb' is already registered, aborting...
A modules.dep alapjan ez a modul (scx200_acb) semminek sem a fuggosege:
root@voyage:/lib/modules/3.4.4-voyage# cat modules.dep | grep scx200_acb
kernel/drivers/i2c/busses/scx200_acb.ko:
extern/scx200_acb_v2.ko:
root@voyage:/lib/modules/3.4.4-voyage#
- A hozzászóláshoz be kell jelentkezni
mi tortenik ha csak simplan felulirod a regi .ko fajlt az ujjal?
--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Vsz menne, egy proba erejeig meg is nezem mindjart. De ha lehet, ezt inkabb csak akkor csinalnam ha mas kulturalt megoldas nincs. A peccselt modul tobb funkcionalitast ad ehhez az I2C master eszkozhoz, szoval nincs ra oka hogy ne mukodjon igy...
- A hozzászóláshoz be kell jelentkezni
Kerneles emlékeim szerint elmentődik, hogy egy adott pci id-vel rendelkező eszközhöz melyik modul tartozik -> lelkesen betölti. (Platform device elején régen egy makróval definiáltad a modulon belül, PCI-nél nem emlékszem)
- A hozzászóláshoz be kell jelentkezni
Valoban van ilyen, koszi! PCI_VENDOR_ID_NS:PCI_DEVICE_ID_NS_SCx200_BRIDGE = 0x100b:0x0500 ill 0x0510-re hivatkozik (marmint az scx200-as modul). Elkezdek igy nyomozni, oszt meglatjuk.
- A hozzászóláshoz be kell jelentkezni