Oppstart bruker NFS og TFTP (oppdatert)
Snarere enn sakte seg ut NAND flash kan du starte mini2440 over et nettverk ved å laste kjernen bruker TFTP og OS fra en NFS aksje. Dette gjør det også mye raskere å teste endringer. Ved hjelp av Fedora 11 kan du bruke YUM for å installere TFTP, TFTP-server og nfs-utils.
Jeg opprettet en mappe / home/doug/mini2440/root_fs og lagt til følgende linje i / etc / exports å tillate r / w adkomst fra 192.168.1 .*:
.. Og pakket ut Angstrom filsystemet som root til / home/doug/mini2440/root_fs
Du må redigere / etc / xinetd.d / tftp å sette TFTP. Mine er lagt ut nedenfor for referanse, du minst trenger for å sette deaktivere = nei.
# Beskrivelse: TFTP server serverer filer ved hjelp av trivielle filoverføring
# Protokollen. TFTP-protokollen er ofte brukes for å starte diskløse
# Arbeidsstasjoner, laste konfigurasjonsfiler til nett-aware skrivere,
# Og for å starte installasjonsprosessen for noen operativsystemer.
tjeneste TFTP
{
deaktivere = no
socket_type = dgram
protokoll = UDP
vente = yes
user = root
sbin / in.tftpd server = / usr / sbin / in.tftpd
home / doug / mini2440 / kernel server_args =-s / home / Doug / mini2440 / kernel
per_source = 11
CPS = 100 2
flags = IPv4
}
Jeg begynte da tjenestene:
service xinetd start / Sbin / service xinetd start
For å automatisere disse tror jeg du kan gjøre:
chkconfig xinetd på
chkconfig nfs på
Neste jeg redigerte uboot miljøet. Bruk kommandoen setenv å endre eller legge til oppføringer og savenev når du er ferdig. Jeg endte opp med følgende:
bootdelay = 3
baudrate = 115200
: 18 : 12 : 27 ethaddr = 08:08: 11: 18: 12: 27
usbtty = cdc_acm
=mini2440-nand:256k @ 0 ( u-boot ) ,128k ( env ) ,5m ( kernel ) ,- ( root ) mtdparts = mtdparts = mini2440-nog: 256k @ 0 (u-boot), 128k (ENV), 5m (kernel), - (root)
=0tb mini2440 = mini2440 = 0tb
=ttySAC0, 115200 noinitrd bootargs_base = konsoll = ttySAC0, 115200 noinitrd
= / sbin / init bootargs_init = init = / sbin / init
= / dev / mtdblock3 rootfstype =jffs2 root_nand = root = / dev / mtdblock3 rootfstype = jffs2
= / dev / mmcblk0p2 rootdelay = 2 root_mmc = root = / dev / mmcblk0p2 rootdelay = 2
mnt / nfs root_nfs = / mnt / nfs
= / dev / nfs rw nfsroot = ${serverip} : ${root_nfs} set_root_nfs = setenv root_nfs root = / dev / nfs rw nfsroot = $ {ServerIP}: $ {root_nfs}
ip = ${ipaddr} : ${serverip} :: ${netmask} :mini2440:eth0 ifconfig_static = kjøre setenv ifconfig ip = $ {ipaddr}: $ {ServerIP}: $ {netmask}: mini2440: eth0
ip =dhcp ifconfig_dhcp = kjøre setenv ifconfig ip = dhcp
=dhcp ifconfig = ip = dhcp
set_bootargs_mmc = setenv bootargs $ {bootargs_base} $ {bootargs_init} $ {mini2440} $ {root_mmc}
set_bootargs_nand = setenv bootargs $ {bootargs_base} $ {bootargs_init} $ {mini2440} $ {root_nand}
set_bootargs_nfs = kjøre set_root_nfs; setenv bootargs $ {bootargs_base} $ {bootargs_init} $ {mini2440} $ {root_nfs} $ {ifconfig}
=mini2440-nand mtdids = nand0 = mini2440-nog
=ttySAC0, 115200 noinitrd init = / sbin / init mini2440 =0tb ip =192.168.1.85 root = / dev / nfs rw nfsroot =192.168.1.10: / home / doug / mini2440 / root_fs bootargs = konsoll = ttySAC0, 115200 noinitrd init = / sbin / init mini2440 = 0tb ip = 192.168.1.85 root = / dev / nfs rw nfsroot = 192.168.1.10: / home / Doug / mini2440 / root_fs
bootfile = "uImage"
filstørrelse = 1E9088
fileaddr = 32000000
gatewayip = 192.168.1.100
netmask = 255.255.255.0
ipaddr = 192.168.1.85
ServerIP = 192.168.1.10
bootcmd = tftp; bootm 32000000
partisjon = nand0, 0
mtddevnum = 0
mtddevname = u-boot
Vær oppmerksom når du setenv du har å utelate = tegn. Tydeligvis du ønsker å endre noe av dette for å dekke dine nettverksoppsett. Her min laptop er 192.168.1.10 og 192.168.1.100 er min pfsense boksen som er tildele 192.168.1.85 til mini2440 av DHCP.
Når du starter systemet uboot vil laste ned kernel enn TFTP og deretter montere NFS aksjen.
Hvis du har DHCP på nettverket Angstrom bør automatisk få en IP. Du kan hoppe over resten i dette tilfellet!
Hvis du ønsker en statisk adresse du kan endre / etc / network / interfaces. Jeg bare byttet dhcp til statisk for eth0:
Og etter dette systemet startet opp fint. Til slutt har jeg et notat som sier jeg slettet symlink / etc / resolve.conf og erstattet det med:
søk lokale
nameserver 192.168.1.100
Vær advart om at det hele av nyere må være kompatibel med brannmuren og SELinux, vil det ikke fungere ellers!
Jeg fant følgende Links nyttige:



Kjære venner,
Jeg har bygd en openembedded distrubition for mini2440. Jeg har kopiert
mini2440-base-image.tar.gz til min host pc og jeg arrenged en NFS for cross
bygningen. Det fungerer OK, men når jeg kopierte og trekke ut
mini2440-konsoll-image.tar.gz, er mitt NFS svarer ikke. Har du noen
råd til meg? Jeg kopierte mine minicom konsoll meldinger og festet den.
Også jeg prøvde med rootfs for NFS Sistem under linken, men det er fortsatt ikke
reagere.
U-Boot 1.3.2-mini2440 (6 oktober 2009 - 12:51:09)
I2C: klar
DRAM: 64 MB
Flash: 2 MB
NAND: Bad block table ikke funnet for chip 0
Bad block table ikke funnet for chip 0
128 MiB
Fant Miljø offset i OOB ..
USB: S3C2410 USB Deviced
In: seriell
Ut: seriell
Err: seriell
MAC: 08:08:11:18:12:27
Hit helst tast for å stoppe Autoboot: 0
dm9000 i / o: 0 × 20000300, id: 0x90000a46
DM9000: kjører i 16 bit modus
MAC: 08:08:11:18:12:27
TFTP fra serveren 192.168.1.10; vår IP-adresse er 192.168.1.85
Filnavn 'uImage.bin'.
Load adresse: 0 × 32000000
Loading: kontrollsum dårlig
kontrollsum dårlig
T ################################################# ################
################################################## ###############
#########
gjort
Bytes overføres = 2031220 (1efe74 hex)
# # Oppstart kernel fra Legacy Bilde på 32000000 ...
Bilde Name: Angstrom/2.6.31 + git/mini2440
Opprettet: 2009-10-30 09:06:09 UTC
Bilde Type: ARM Linux Kernel bilde (ukomprimert)
Data Size: 2031156 Bytes = 1,9 MB
Load Adresse: 30008000
Entry Point: 30008000
Bekrefter Sjekksum ... OK
Laster Kernel bilde ... OK
OK
Starter kernel ...
Pakke
Linux-versjon 2.6.31.1 (sven @ office) (gcc version 4.2.4) # 1 Fre 30 oktober 17:04:01 CST 2009
CPU: ARM920T [41.129.200] revision 0 (ARMv4T), cr = c0007177
CPU: VIVT data cache, VIVT instruksjon cache
Machine: MINI2440
Minne policy: ECC deaktivert, Data cache writeback
CPU S3C2440A (id 0 × 32440001)
S3C24XX klokker, (c) 2004 Simtec Electronics
S3C244X: kjerne 405,000 MHz, minne 101,250 MHz, 50,625 perifere MHz
KLOKKE: Slow mode (1.500 MHz), rask, MPLL på, UPLL på
Bygget en zonelists i sone orden, mobilitet gruppering på. Totalt sider: 16 256
Kernel kommandolinjen: konsoll = ttySAC0, 115200 noinitrd init = / sbin / init mini2440 = 0tb ip = 192.168.1.85 root = / dev / nfs rw nfsroot = 192.168.1.10: / hd
PID hash table oppføringer: 256 (orden: 8, 1024 bytes)
Dentry cache hash table oppføringer: 8192 (rekkefølge: 3, 32768 bytes)
Inode-cache hash table oppføringer: 4096 (rekkefølge: 2, 16384 bytes)
Minne: 64 MB = 64 totalt
Minne: 60640KB tilgjengelig (3568K kode, 417K data, 132k init, 0K highmem)
SLUB: Genslabs = 11, HWalign = 32, Order = 0-3, MinObjects = 0, CPUer = 1, Noder = 1
NR_IRQS: 85
IRQ: clearing påvente status 02000000
IRQ: clearing subpending status 00000002
Console: farge dummy enhet 80 × 30
konsollen [ttySAC0] aktivert
Kalibrering forsinkelse sløyfe ... 201,93 Bogomips (lpj = 504832)
Mount-cache hash table oppføringer: 512
CPU: Testing skrive buffer coherency: ok
NET: Registered protokoll familie 16
MINI2440: Option string mini2440 = 0tb
MINI2440: LCD [0:240 X320] 1:800 × 480 2:1024 × 768
S3C2440: Initialiserer arkitektur
S3C2440: IRQ Support
S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Electronics
DMA kanal 0 på c4808000, 33 IRQ
DMA-kanal 1 på c4808040, 34 IRQ
DMA kanal 2 på c4808080, 35 IRQ
DMA kanal 3 på c48080c0, 36 IRQ
S3C244X: Klokke Support, DVS off
bio: lage plate ved 0
usbcore: registrerte nye grensesnitt driver usbfs
usbcore: registrerte nye grensesnitt driver hub
usbcore: registrerte nye enhetsdriveren usb
s3c-I2C s3c2440-I2C: slave adresse 0 × 10
s3c-I2C s3c2440-I2C: busshastighet satt til 98 KHz
s3c-I2C s3c2440-I2C: I2C-0: S3C I2C adapter
NET: Registered protokoll familie 2
IP rute cache hash table oppføringer: 1024 (orden: 0, 4096 bytes)
TCP etablert hash table oppføringer: 2048 (rekkefølge: 2, 16384 bytes)
TCP binde hash table oppføringer: 2048 (rekkefølgen: 1, 8192 bytes)
TCP: Hash tabeller konfigurert (etablert 2048 bind 2048)
TCP Reno registrert
NET: Registered protokoll familie en
JFFS2 versjon 2.2. (NAND) © 2001-2006 Red Hat, Inc.
ROMFS MTD (C) 2007 Red Hat, Inc.
msgmni er satt til 118
ALG: Ingen test for stdrng (krng)
io scheduler Noop registrert
io scheduler foregripende registrert (standard)
io scheduler frist registrert
io scheduler cfq registrert
Console: bytter til farge frame buffer enhet 60 × 53
fb0: s3c2410fb frame buffer enhet
s3c2440-uart.0: ttySAC0 på MMIO 0 × 50000000 (IRQ = 70) er en S3C2440
s3c2440-uart.1: ttySAC1 på MMIO 0 × 50004000 (IRQ = 73) er en S3C2440
s3c2440-uart.2: ttySAC2 på MMIO 0 × 50008000 (IRQ = 76) er en S3C2440
BRD: modul loaded
at24 0-0050: 1024 byte 24c08 EEPROM (skrivbar)
dm9000 Ethernet Driver, v1.31
eth0: dm9000e på c486e300, c4872304 IRQ 51 MAC: 08:08:11:18:12:27 (chip)
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c24xx-NAND s3c2440-nog: Tacls = 1, 9ns Twrph0 = 3 29ns, Twrph1 = 2 19ns
s3c24xx-NAND s3c2440-nog: NAND soft ECC
NAND-enhet: Produsent ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3 V 8-bit)
Opprette fire MTD partisjoner på "NAND 128MiB 3,3 V 8-bit":
0 × 000000000000-0 × 000 000 040 000: "u-boot"
ftl_cs: FTL header ikke funnet.
0 × 000000040000-0 × 000 000 060 000: "U-boot-ENV"
ftl_cs: FTL header ikke funnet.
0 × 000000060000-0 × 000 000 560 000: "kernel"
ftl_cs: FTL header ikke funnet.
0 × 000000560000-0 × 000 008 000 000: "root"
ftl_cs: FTL header ikke funnet.
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
s3c2410-OHCI s3c2410-OHCI: S3C24XX OHCI
s3c2410-OHCI s3c2410-OHCI: nye USB bus registrert, tildeles buss nummer 1
s3c2410-OHCI s3c2410-OHCI: IRQ 42, io mem 0 × 49000000
usb usb1: konfigurasjon # 1 valgt fra en valg
hub 1-0:1.0: USB hub funnet
hub 1-0:1.0: 2 porter oppdaget
usbcore: registrerte nye grensesnitt driver libusual
s3c2440-usbgadget s3c2440-usbgadget: S3C2440: økende FIFO til 128 bytes
mus: PS / 2 mus enhet felles for alle mus
inngang: GPIO-keys as / devices/platform/gpio-keys/input/input0
s3c2440-ts s3c2440-ts: Starte
Opprettet gruppe ts filter len 12 dybde 2 med 10 treske 6
Opprettet Median ts filter len 20 dybde 2 dec 24
Opprettet Mean ts filter len 4 dybde 2 treske 65535
Opprettet Lineær ts filter dybde 2
s3c2440-ts s3c2440-ts: 4 filter (s) initialisert
s3c2440-ts s3c2440-ts: lastet
input: s3c2410 berøringsskjerm as / devices/virtual/input/input1
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
s3c2410-RTC s3c2410-RTC: RTC deaktivert, re-muliggjør
s3c2410-RTC s3c2410-RTC: RTC kjerne: registrerte s3c som rtc0
I2C / dev oppføringer sjåfør
S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
s3c2410-WDT s3c2410-WDT: vaktbikkje inaktive, reset deaktivert, aktivert IRQ
cpuidle: bruk guvernør stige
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright (c) Pierre Ossman
kartlagt kanal 0-0
s3c2440-SDI s3c2440-SDI: slått ned.
s3c2440-SDI s3c2440-SDI: initialiseringen gjort.
Registrerte ledet enheten: led1
Registrerte ledet enheten: LED2
Registrerte ledet enheten: led3
Registrerte ledet enheten: led4
Registrerte ledet enheten: bakgrunnsbelysning
usbcore: registrerte nye grensesnitt driver hiddev
usbcore: registrerte nye grensesnitt driver usbhid
usbhid: v2.6: USB HID kjerne driver
Advanced Linux Sound Architecture Driver versjon 1.0.20.
Ingen enhet for DAI UDA134X
Ingen enhet for DAI s3c24xx-I2S
S3C24XX_UDA134X SoC Audio driver
UDA134X SoC Audio Codec
asoc: UDA134X s3c24xx-I2S kartlegging ok
ALSA enhetslisten:
# 0: S3C24XX_UDA134X (UDA134X)
TCP kubikk registrert
NET: Registered protokoll familie 17
RPC: Registrerte udp transport-modul.
RPC: Registrerte tcp transport-modul.
s3c2410-RTC s3c2410-RTC: innstillingen systemklokken til 2009-12-19 00:36:25 UTC (1261182985)
eth0: link ned
IP-Config: Gjette netmask 255.255.255.0
IP-Config: Komplett:
enhet = eth0, adr = 192.168.1.85, maske = 255.255.255.0, GW = 255.255.255.255,
host = 192.168.1.85, domene =, NIS-domene = (ingen),
bootserver 255.255.255.255 =, rootserver = 192.168.1.10, rootpath =
Looking up port of RPC 100003 / 2 på 192.168.1.10
eth0: link up, 100Mbps, full dupleks, LPA 0xCDE1
Looking up port of RPC 100005 / 1 på 192.168.1.10
VFS: Montert root (NFS filsystem) på enheten 00:14.
Frigjøre init minne: 132k
INIT: version 2.86 booting
Vennligst vent: booting ...
Starter udev
Fylle dev cache
Remontering root file system ...
Ukjent HZ verdi! (90) Anta 100.
ALSA: Gjenopprette mixer innstillinger ...
Konfigurere nettverksgrensesnitt ... Ingen stat er til stede for kort S3C24XXUDA134X
/ Usr / sbin / alsactl: analysere: 1639: Kan ikke åpne filen '/ usr/share/alsa/init/00main': Ingen slik fil eller katalog
Ingen stat er til stede for kort S3C24XXUDA134X
nfs: server 192.168.1.10 ikke svarer, fortsatt prøver
Hei alle,
Jeg har nøyaktig samme atferd med openembedded med NFS
Jeg antar at etter meldingen "Ingen stat er til stede for kort S3C24XXUDA134X" openembedded prøve å reconfig ethernet grensesnitt og unnlater NFS kobling men jeg vet ikke hva jeg skal gjøre for å unngå dette.
har noen funnet en løsning?
takk for hjelpe meg
jmboy
Hei
Jeg hadde samme problemet, var nettverk konfigureres og NFS forbindelsen gikk tapt.
Jeg kunne ikke finne URL av løsningen å poste her, men jeg har fortsatt skiftet fil på min rootfs.
redigere filen / etc / init.d / networking på rootfs
finne linjer som ser slik ut:
echo-n "Konfigurere nettverksgrensesnitt ..."
ifup-a
echo "ferdig."
og kommentere ut andre linje for å ha noe sånt som dette:
echo-n "Konfigurere nettverksgrensesnitt ..."
# Ifup-a
echo "ferdig."
Etter dette rootfs over NFS har ingen problemer. Minst for meg.
Dette ser ut som stygg løsning, men håper det vil hjelpe deg.
Hei, ja, da jeg kom over dette problemet jeg endret til en fast IP-adresse. Det merkelige var da jeg prøvde det samme på et annet nettverk, konfigurert i ganske mye på samme måte, det gjorde jeg ikke trenger å endre noe. Jeg har aldri funnet ut hva forskjellen var. Takk for innlegget Irakli.