Hello Sergei Shtylyov
It is working now. Thank you very much for all the help and support.
sudheer wrote:
I gave the following bootargs:
console=ttyS0,115200 root=/dev/ram rw
kgdboe=@xxxxxxxxxxxx/,@192.168.3.14/00:08:A1:84:EF:CA kgdbwait
I gave the bootargs
console=ttyS0,115200 root=/dev/ram rw
kgdboe=@xxxxxxxxxxxx/,@192.168.3.14/ kgdbwait
You don't have to specify the remote MAC, IIUC.
When i dont give the mac address, the mac address all FFs(default) is
considered. So am giving the mac address too, only then its working
properly.
What, you don't have ARP on host?!
I have added the patch and the arp entry in the host for the target ,
only then the gdb and kgdb are communicating.
Even now it shows all FFs while booting but after booting i could bring
up eth0 and ping.
<DUMP>
Memory CAM mapping: CAM0=256Mb, CAM1=0Mb, CAM2=0Mb residual: 0Mb
Linux version 2.6.15.5 (root@Sudheer) (gcc version 3.4.4) #54 Tue Jan 30
15:30:07 IST 2007
KGDB cannot initialize I/O yet.
Built 1 zonelists
Kernel command line: console=ttyS0,115200 root=/dev/ram rw
ramdisk_size=12288 kgdboe=@xxxxxxxxxxxx/,@192.168.3.14/ kgdbwait
kgdboe: local port 6443
kgdboe: local IP 192.168.3.80
kgdboe: interface eth0
kgdboe: remote port 6442
kgdboe: remote IP 192.168.3.14
kgdboe: remote ethernet address ff:ff:ff:ff:ff:ff
OpenPIC Version 1.2 (1 CPUs and 60 IRQ sources) at fcfbb000
PID hash table entries: 2048 (order: 11, 32768 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 254976k available (1616k kernel code, 444k data, 120k init, 0k
highmem)
Mount-cache hash table entries: 512
checking if image is initramfs...it isn't (no cpio magic); looks like an
initrd
Freeing initrd memory: 2260k freed
NET: Registered protocol family 16
PCI: Probing PCI hardware
Generic PHY: Registered new driver
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
Generic RTC Driver v1.07
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
serial8250.0: ttyS0 at MMIO map 0xfdf04500 mem 0xfcffc500 (irq = 26) is
a 16550A
serial8250.0: ttyS1 at MMIO map 0xfdf04600 mem 0xfcffb600 (irq = 26) is
a 16550A
RAMDISK driver initialized: 16 RAM disks of 12288K size 1024 blocksize
loop: loaded (max 8 devices)
Gianfar MII Bus: probed
eth0: Gianfar Ethernet Controller Version 1.2, 00:01:af:07:9b:8a
eth0: Running with NAPI enabled
eth0: 256/256 RX/TX BD ring size
eth1: Gianfar Ethernet Controller Version 1.2, 00:01:af:07:9b:8b
eth1: Running with NAPI enabled
eth1: 256/256 RX/TX BD ring size
eth2: Gianfar Ethernet Controller Version 1.2, 7f:78:36:82:b9:f7
eth2: Running with NAPI enabled
eth2: 256/256 RX/TX BD ring size
netconsole: not configured, aborting
kgdboe: local port 6443
kgdboe: local IP 192.168.3.80
kgdboe: interface eth0
kgdboe: remote port 6442
kgdboe: remote IP 192.168.3.14
kgdboe: remote ethernet address ff:ff:ff:ff:ff:ff
kgdboe: device eth0 not up yet, forcing it
kgdboe: carrier detect appears untrustworthy, waiting 4 seconds
phy0:7: Link is Up - 100/Full
kgdboe: debugging over ethernet enabled
i2c /dev entries driver
NET: Registered protocol family 2
IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
TCP established hash table entries: 16384 (order: 4, 65536 bytes)
TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
TCP: Hash tables configured (established 16384 bind 16384)
TCP reno registered
TCP bic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
kgdb: Waiting for connection from remote gdb... <WAITS
HERE FOR GDB>
RAMDISK: Compressed image found at block 0
EXT2-fs warning: maximal mount count reached, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 120k init
init started: BusyBox v1.1.2 (2006.09.27-13:46+0000) multi-call binary
### Application running ...
Thanks
Sudheer
I have added few lines of code in driver/net/gianfar.c
void gfar_poll_gianfar(struct net_device *dev )
{
disable_irq(dev->irq);
gfar_interrupt(dev->irq, dev, NULL);
enable_irq(dev->irq);
}
This isn't complete, please use the community patch. Gianfar TSEC
has 3 interrupts and all of them must be disabled.
Now am able to boot the target kernel without any error. kgdb waits
for gdb connection.
kgdboe: local port 6443
kgdboe: local IP 192.168.3.80
kgdboe: interface eth0
kgdboe: remote port 6442
kgdboe: remote IP 192.168.3.14
kgdboe: remote ethernet address 00:08:a1:84:ef:ca
kgdboe: eth0 doesn't support polling, aborting.
kgdboe: netpoll_setup failed kgdboe failed
Have you backported the gianfar netpoll patch from 2.6.20-rc1?
I haven't backported the 2.6.20-rc1. As there are many patches under
that tree , i didnt try for it and could not know which one to add.
You certainly didn't need to backport the whole 2.6.20-rc1, only a
signle patch (-:
http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff_plain;h=f2d71c2d800e68f158a5949e38b23f5140948548
WBR, Sergei
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/kernelnewbies/
FAQ: http://kernelnewbies.org/faq/