[U-Boot-Users] HDD/IDE Interface using IDE_8xx_Direct

prabhu prabhu at signal-networks.com
Fri Jun 9 07:35:03 CEST 2006


Dear sir,
 
We are interfacing MPC8xx processor with IDE/HDD by using Memory
controller.In U-boot we configured CONFIG_IDE_8xx_DIRECT(PIO 4).
The Logic implemented is interfaced with the User Programmable Machine B
(UPMB) of MPC’s memory Controller unit.
 
MPC860/866 at 80MHz/100/130Mhz.
We are able to detect the HDD at the U-boot prompt(IDE status = OK and
status register value is 0x50).
But when we run it from kernel with rfs mounted on HDD it shows the
following error.
 
I've captured the log of IDE with debug enabled.
Please do have a look at it & Kindly let me know where we went wrong.

U-Boot 1.1.3 (May 29 2006 - 15:37:12)
 
CPU:   unknown MPC86x (0x08010004) at 80 MHzz at 16 kB I-Cache 8 kB D-Cache
FEC present
         *** Warning: CPU Core has Silicon Bugs -- Check the Errata ***
clock 80000000Hz != 617900000Hz
Board: Integrated Communications Manager - Beta  with MPC860P 
UPMB Enabled for IDE 
I2C:   ready
DRAM:  (32 MB SDRAM) 32 MB
Top of RAM usable for U-Boot at: 02000000
Reserving 374k for U-Boot at: 01fa2000
Reserving 400k for malloc() at: 01f3e000
Reserving 60 Bytes for Board Info at: 01f3dfc4
Reserving 48 Bytes for Global Data at: 01f3df94
Stack Pointer at: 01f3df78
New Stack Pointer is: 01f3df78
Now running in RAM - U-Boot at: 01fa2000
FLASHz flash_protect ON: from 0xFF800000 to 0xFF828FFF
protect on 0
protect on 1
protect on 2
protect on 3
flash_protect ON: from 0xFF840000 to 0xFF843FFF
protect on 4
 AMD-LV160-B : 8 MB
In:    serial
Out:   serial
Err:   serial
U-Boot relocated to 01fa2000
Net: @@FEC ETHERN
¤
IDE:   Bus 0: ide_outb (dev= 0, port= 0x1c, val= 0xe0) : @ 0xfeff001c
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x80
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x80
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x90
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x90
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x50
OK 
  Device 0z ide_outb (dev= 0, port= 0x1c, val= 0xe0) : @ 0xfeff001c
ide_outb (dev= 0, port= 0x1e, val= 0xec) : @ 0xfeff001e
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x58
in input swap data base for read is feff0010
Model: ST340015A Firm: 3.01 Ser#: 5LAC48ZY
            Type: Hard Disk
            Capacity: 38166.6 MB = 37.2 GB (78165360 x 512)
ide_read dev 0 start 0, blocks 1 buffer at 1F3DCF8
ide_outb (dev= 0, port= 0x1c, val= 0xe0) : @ 0xfeff001ã
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x50
ide_outb (dev= 0, port= 0x1e, val= 0xe5) : @ 0xfeff001e
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x50
ide_inb (dev= 0, port= 0x14) : @ 0xfeff0014 -> 0xff
Powersaving FF
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x50
ide_outb (dev= 0, port= 0x14, val= 0x01) : @ 0xfeff0014
ide_outb (dev= 0, port= 0x16, val= 0x00) : @ 0xfeff0016
ide_outb (dev= 0, port= 0x18, val= 0x00) : @ 0xfeff0018
ide_outb (dev= 0, port= 0x1a, val= 0x00) : @ 0xfeff001a
ide_outb (dev= 0, port= 0x1c, val= 0xe0) : @ 0xfeff001c
ide_outb (dev= 0, port= 0x1e, val= 0x20) : @ 0xfeff001e
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0xd0
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0x58
in input data base for read is feff0010
ide_inb (dev= 0, port= 0x1e) : @ 0xfeff001e -> 0ø50
LCD:    4 Line Display

### main_loop entered: bootdelay=1


### main_loop: bootcmd="bootm 0xff900000"
Hit ány key to stop autoboot:  1  0 ## Âooting image at ff900000 ...
   Image Name:   Lin Kernel
   Created:      2006-05-29   5:20:27 UTC
   Image Type:   PowerPC Linux Kernel Imáge (gzip compråsseä)
   Äata Size:    640339 Bytes = 625.3 kB
   Load Adäress: 00000000
   Entry Ðoint:  00000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK## Current stack ends at 0x01F3DBD8 =>
set upper limit to 0x00800000
## cmdline at 0x007FFF00 ... 0x007FFF10
bd address  = 0x01F3DFC4
memstart    = 0x00000000
memsize     = 0x02000000
flashstart  = 0xFF800000
flashsize   = 0x00800000
flashoffset = 0x00029000
sramstart   = 0x00000000
sramsize    = 0x00000000
immr_base   = 0xFF000000
bootflags   = 0x00000001
intfreq     =     80 MHz
busfreq     =     40 MHz
ethaddr     = 00:A2:63:4C:5D:15
IP addr     = 192.168.1.1
baudrate    =  38400 bpsNo initrd
## Transferring control to Linux (at address 00000000) ...
Linux version 2.4.18_mvl30-fads ((gcc version 3.2.1 20020930 (MontaVista))
#302 Mon May 29 10:38:58 IST 2006
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/hda rw
rtsched version <20011203.1609.50>
Decrementer Frequency = 300000000/60
Calibrating delay loop... 79.87 BogoMIPS
Memory: 30728k available (1100k kernel code, 344k data, 56k init, 0k highmem)
Dentry-cache hash table entries: 4096 (order: 3, 32768 byteói
Inode-cache hash table entries: 2048 (order: 2, 16384 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 byteói
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
POSIX conformance testing by UNIFIØ
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapä
Disabling the Out Of Memory Killer
JFFS version 1.0, (C) 1999, 2000  Axis Communications AÂ
LCD device HITACHI 0066 V1.0 initialized on GPIÏ 
CPM UART driver version 0.03
ttyS0 on SMC1 at 0x0280, BRG1

pty: 256 Unix98 ptys configõråd
block: 64 slots per queue, batãh=16
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blockóize
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
IDE phys mem : feff0000...feff0200 (size 0000020`Y
hda: probing with
STATUS(0x50) instead of ALTSTATUS(0xueYhda: ST340015A, ATA DISK drÉæÅhdb:
probing with STATUS(0x00) instead of ALTSTATUS(0xÁeYhdb: probing with
STATUS(0x00) instead of ALTSTATUS(0xÁeYide0 at
0xc3000010-0xc3000017,0xc3000020 on irq 12
hda: 78165360 sectors (40021 MB) w/2048KiB Cache, CHS=77545/16/63
Partition check:
`èda:
eth0: FEC ENET Version 0.2, FEC irq 3, MII irq 8, addr 00:a2:63:4c:5d:15
eth0: Phy @ 0x0, type LXT971 (0x001378Å2)
loop: loaded (max 8 devices)
init_icm_mtd: chip probing coõnt 0
 Amd/Fujitsu Extended Query Table v1.0 at 0x0040
number of CFI chips: 1
init_icm_mtd: bank1, name:ICM0, size:8388608bytes 
ICM flash0: Using Static image partition definiôion
Creating 3 MTD partitions on "ICÍ0":
0x00200000-0x00400000 : "icm-configs"
0x00400000-0x00440000 : "icm-pbx-grp-confégs"
0x00440000-0x004c0000 : "icm-pbx-ext-confiçs"
NET4: Linux TCP/IP 1.0 for NEÔ4.0
IP Protocols: ICMP, UDP, TCP, ‰GMÐ
IP: routing cache hash table of 512 buckets, 4Kbùtåó
TCP: Hash tables configured (established 2048 bind 409vi
eth0: config: auto-negotiation on, 100FDX, 100HDX, 10FDX, 10HDX.
IP-Config: Incomplete network configuration information.
NET4: Unix domain sockets 1.0/SMP for Linux NET4.p.
EXT2-fs warning: mounting unchecked fs, running e2fsck is recommeîded
VFS: Mounted root (ext2 filesyståm).
Freeing unused kernel memory: 56k énit
Kernel panic: No init found.  Try passing init= option to kernel.
 <0>Rebooting in 180 secoÎds.N
 
 
 
 
 
I am not a member of U-boot users,kindly put a cc to mail id
prabhu at signal-networks.com
 
Thanks and Regards,
V.Prabhu Swamy
Email :prabhu at signal-networks.com 
 
 





More information about the U-Boot mailing list