2009-06-25 02:07:30     IDE to SATA requirement

Document created by Aaronwu Employee on Aug 15, 2013
Version 1Show Document
  • View in full screen mode

2009-06-25 02:07:30     IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76292   

 

I need the SATA support for BF531 uclinux

 

for example add an ide-to-sata bridge chip, now I use spif232A.

 

for my test, now it can detect the sata-hdd, but lost irq...

 

So I need your help, thanks a lot!

 

 

 

billyhhzh from China.

QuoteReplyEditDelete

 

 

2009-06-25 02:26:58     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76294   

 

At first, you need config interrupt right in arch/blackfin/mach-xxx/boards/xxx.c:

 

#define PATA_INT        IRQ_PF5  /* replace IRQ_PF5 by your irq */

static struct pata_platform_info bfin_pata_platform_data = {

        .ioport_shift = 1,

        .irq_flags = IRQF_TRIGGER_HIGH | IRQF_DISABLED,

};

 

static struct resource bfin_pata_resources[] = {

        ...

        {  

                .start = PATA_INT,

                .end = PATA_INT,

                .flags = IORESOURCE_IRQ,

        }, 

};

 

You should config kernel like:

 

x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x

  x x                             --- Serial ATA (prod) and Parallel ATA (experimental) drivers                                      x x

  x x                             [*]   SATA Port Multiplier support                                                                 x x

  x x                             [*]   ATA SFF support                                                                              x x

  x x                             < >     Marvell SATA support (HIGHLY EXPERIMENTAL)                                                 x x

  x x                             <*>     Generic platform device PATA support                                                       x x

 

 

To solve the "irq xx: nobody cared (try booting with the "irqpoll" option)" issue, in my test board, I made the following change to make SATA work normally:

 

Index: libata-core.c

===================================================================

--- libata-core.c    (revision 6835)

+++ libata-core.c    (working copy)

@@ -6128,9 +6128,9 @@

     }

 

     /* enable irq after probe if it is asked to be disabled when request */

-    if (host->irq_flags & IRQF_DISABLED)

+/*    if (host->irq_flags & IRQF_DISABLED)

         enable_irq(host->irq);

-

+*/

     /* perform each probe asynchronously */

     for (i = 0; i < host->n_ports; i++) {

         struct ata_port *ap = host->ports[i];

Index: libata-sff.c

===================================================================

--- libata-sff.c    (revision 6835)

+++ libata-sff.c    (working copy)

@@ -1156,6 +1156,7 @@

             if (qc) {

                 if (likely(!(qc->err_mask & AC_ERR_HSM))) {

                     ap->ops->sff_irq_on(ap);

+                    enable_irq(ap->host->irq);

                     ata_qc_complete(qc);

                 } else

                     ata_port_freeze(ap);

 

I don't know whether this change can help you since I don't know your release version. Can you tell me the source codes version you are using, and can you post your log too?  Thanks!

 

 

 

--Barry

QuoteReplyEditDelete

 

 

2009-06-25 03:27:50     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76299   

 

Thanks to Barry Song!

 

I use uClinux-2007RC3, this is my boot info:

 

U-Boot-1.1.3-ADI-2005R4 (Sep 11 2007 - 20:48:49)

ADI BF53x/561 U-Boot support by HH Tech China.

Serial Port initialized with Baud rate = 115200

CPU:    ADSP BF531 Rev 0.5

Board:  HHBF531 board (  www.hhcn.org)

Clock:  VCO: 378 MHz, Core: 378 MHz, System: 63 MHz

SDRAM Memory Map: 0x00000000 - 0x01FFFFFF (32 MiB)

        tRCD: 3, tRP: 3, tRAS: 6, tWR: 2, CAS Latency: 3 (SCLK cycles)

Flash Primary  A: 0x20000000 - 0x200FFFFF ( 1 MiB)

Flash Primary  B: 0x20100000 - 0x201FFFFF ( 1 MiB)

        Device ID: 0x49

        (type `flinfo' for information on sectors)

In:    serial

Out:   serial

Err:   serial

I2C:   ready

Autobooting in 2 seconds, press " " to stop

## Booting image at 20040000 ...

   Image Name:   uClinux Kernel and ext2

   Created:      2008-06-22   5:47:55 UTC

   Image Type:   Blackfin Linux Kernel Image (gzip compressed)

   Data Size:    1748853 Bytes =  1.7 MB

   Load Address: 00001000

   Entry Point:  00001000

   Verifying Checksum ... OK

   Uncompressing Kernel Image ... OK

Starting Kernel at 0x1000

Linux version 2.6.19.3-ADI-2007R1.1-ShenOu-svn (hhzhou@zhouhaohao) (gcc �..�.� 4.1.1 (ADI 07R1)) #208 Sun Jun 22 08:28:41 CST 2008

Blackfin support (C) 2004-2007 Analog Devices, Inc.

Compiled for ADSP-BF531 Rev 0.5

Blackfin Linux support by   blackfin.uclinux.org/

Processor Speed: 378 MHz core clock and 63 Mhz System Clock

Board Memory: 32MB

Kernel Managed Memory: 32MB

Memory map:

  text      = 0x00001000-0x0013f408

  init      = 0x00140000-0x0014b0dc

  data      = 0x0014d190-0x0018eadc

  stack     = 0x0014e000-0x00150000

  bss       = 0x0018eae0-0x001a2444

  available = 0x001a2444-0x01500000

  rootfs    = 0x01500000-0x01f00000

  DMA Zone  = 0x01f00000-0x02000000

Instruction Cache Enabled

Data Cache Enabled (write-through)

Hardware Trace Enabled

Built 1 zonelists.  Total pages: 5334

Kernel command line: root=/dev/mtdblock0 rw console=ttyBF0,115200n8 lpj=1613824

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 128 (order: 7, 512 bytes)

Console: colour dummy device 80x25

Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Physical pages: 1500

Memory available: 19528k/31435k RAM, (44k init code, 1273k kernel code, 78k data, 1024k dma)

Blackfin Scratchpad data SRAM: 4 KB

Blackfin Instruction SRAM: 16 KB

Calibrating delay loop (skipped)... 806.91 BogoMIPS preset

Mount-cache hash table entries: 512

NET: Registered protocol family 16

Blackfin GPIO Controller

Blackfin DMA Controller

stamp_init(): registering device resources

NET: Registered protocol family 2

IP route cache hash table entries: 256 (order: -2, 1024 bytes)

TCP established hash table entries: 1024 (order: 0, 4096 bytes)

TCP bind hash table entries: 512 (order: -1, 2048 bytes)

TCP: Hash tables configured (established 1024 bind 512)

TCP reno registered

io scheduler noop registered

io scheduler anticipatory registered (default)

io scheduler cfq registered

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 21) is a BFIN-UART

dm9000 Ethernet Driver

eth%d: Invalid ethernet MAC address.  Please set using ifconfig

eth0: dm9000 at 20300000,20300004 IRQ 37 MAC: 00:00:00:00:00:00

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2

ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx

ide0: Blackfin generic IDE interface

hda: Hitachi HTS543216L9A300, ATA DISK drive

ide0 at 0x20200020-0x20200027,0x2020001c on irq 38

hda: max request size: 512KiB

hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: 0x27

hda: drive not ready for command

hda: 0 sectors (0 MB) w/7114KiB Cache, CHS=16383/255/63

hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: 0xef

hda: drive not ready for command

hda: cache flushes supported

uclinux[mtd]: RAM probe address=0x1500000 size=0xa00000

Creating 1 MTD partitions on "RAM":

0x00000000-0x00a00000 : "ROMfs"

uclinux[mtd]: set ROMfs:EXT2  to be root filesystem

TCP cubic registered

NET: Registered protocol family 1

VFS: Mounted root (ext2 filesystem).

Freeing unused kernel memory: 44k freed (0x140000 - 0x14a000)

dma_alloc_init: dma_page @ 0x01449000 - 256 pages at 0x01f00000

hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: unknown

hda: drive not ready for command

hda: irq timeout: status=0xd0 { Busy }

ide: failed opcode was: unknown

irq 38: nobody cared (try booting with the "irqpoll" option)

Hardware Trace:

0 Target : <0x000043f0> { _dump_stack + 0x0 }

   Source : <0x0001fcc4> { ___report_bad_irq + 0x2c }

1 Target : <0x0001fcc4> { ___report_bad_irq + 0x2c }

   Source : <0x0000b8f6> { _printk + 0x16 }

2 Target : <0x0000b8f2> { _printk + 0x12 }

   Source : <0x0000b8dc> { _vprintk + 0x2d4 }

3 Target : <0x0000b8d0> { _vprintk + 0x2c8 }

   Source : <0x0000b89a> { _vprintk + 0x292 }

4 Target : <0x0000b896> { _vprintk + 0x28e }

   Source : <0x0000b24c> { _release_console_sem + 0x1f4 }

5 Target : <0x0000b246> { _release_console_sem + 0x1ee }

   Source : <0x0000b236> { _release_console_sem + 0x1de }

6 Target : <0x0000b218> { _release_console_sem + 0x1c0 }

   Source : <0x0000b20a> { _release_console_sem + 0x1b2 }

7 Target : <0x0000b206> { _release_console_sem + 0x1ae }

   Source : <0x0000b1fe> { _release_console_sem + 0x1a6 }

8 Target : <0x0000b1fc> { _release_console_sem + 0x1a4 }

   Source : <0x0000b1ee> { _release_console_sem + 0x196 }

9 Target : <0x0000b1ce> { _release_console_sem + 0x176 }

   Source : <0x0000b0d2> { _release_console_sem + 0x7a }

10 Target : <0x0000b0ac> { _release_console_sem + 0x54 }

   Source : <0x0000b1ba> { _release_console_sem + 0x162 }

11 Target : <0x0000b1b6> { _release_console_sem + 0x15e }

   Source : <0x0000af60> { __call_console_drivers + 0x64 }

12 Target : <0x0000af5a> { __call_console_drivers + 0x5e }

   Source : <0x0000af24> { __call_console_drivers + 0x28 }

13 Target : <0x0000aefc> { __call_console_drivers + 0x0 }

   Source : <0x0000b1b2> { _release_console_sem + 0x15a }

14 Target : <0x0000b1a4> { _release_console_sem + 0x14c }

   Source : <0x0000b1cc> { _release_console_sem + 0x174 }

15 Target : <0x0000b1ca> { _release_console_sem + 0x172 }

   Source : <0x0000b182> { _release_console_sem + 0x12a }

Stack from 0014fd28:

        00000000 0001fcc8 001548e0 00000001 00011c2e 00000026 00000000 0001fe2a

        001548e0 014408a8 00000026 001a2444 00000000 00150000 0002053e 001548e0

        00000026 001a2444 00000001 00000021 00000000 00000026 00150000 000204a8

        001542e0 00007870 001548e0 00000000 0000000a 00000000 00000000 ffa0850a

        ffc00014 0014fef4 0000000a 00000000 00000000 00000000 00000000 00000000

        ffa09112 00000002 00000000 00000001 00000001 0000eadc 0014e000 00000000

Call Trace:

[<0000eadc>] ___do_softirq+0x3c/0xa0

[<0000ffe0>] ___do_proc_dointvec+0x1cc/0x27c

[<0000ffe0>] ___do_proc_dointvec+0x1cc/0x27c

[<00008050>] _set_load_weight+0xc/0x68

[<0000ffe0>] ___do_proc_dointvec+0x1cc/0x27c

[<00140560>] _start_kernel+0x1cc/0x1d4

[<00140160>] _unknown_bootoption+0x0/0x1d8

[<000011e2>] _real_start+0x92/0x94

 

handlers:

[<000b1ea0>] (_ide_intr+0x0/0x188)

Disabling IRQ #38

ide0: reset: success

hda: lost interrupt

QuoteReplyEditDelete

 

 

2009-06-25 03:35:00     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76300   

 

it looks much diff with my uClinux-2007RC3,

 

my's seems as below:

  x x                             --- Serial ATA (prod) and Parallel ATA (experimental) drivers                                      x x

  x x                             <*> ATA device support                                                                 x x

 

 

and make get error:

 

/uClinux-2007RC3$ make

make ARCH=blackfin CROSS_COMPILE=bfin-uclinux- -j4 -C linux-2.6.x  || exit 1

make[1]: Entering directory `/uClinux-2007RC3/linux-2.6.x'

  CHK     include/linux/version.h

  CHK     include/linux/utsrelease.h

  CHK     include/linux/compile.h

dnsdomainname: Unknown host

  UPD     include/linux/compile.h

  CC      init/version.o

  LD      init/built-in.o

  GEN     .version

  CHK     include/linux/compile.h

dnsdomainname: Unknown host

  UPD     include/linux/compile.h

  CC      init/version.o

  LD      init/built-in.o

  LD      .tmp_vmlinux1

drivers/built-in.o: In function `ata_qc_issue':

(.text+0x2b5a0): undefined reference to `dma_mapping_error'

make[1]: *** [.tmp_vmlinux1] Error 1

make[1]: Leaving directory `/uClinux-2007RC3/linux-2.6.x'

make: *** [linux] Error 1

/uClinux-2007RC3$

QuoteReplyEditDelete

 

 

2009-06-25 04:33:55     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76315   

 

Yes, the version is much different. But the fault is same:

 

irq xx: nobody cared (try booting with the "irqpoll" option)

 

I knew the reason causing the problem.

 

Let me get your version to make SATA work.

 

--Barry

QuoteReplyEditDelete

 

 

2009-06-25 07:01:03     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76322   

 

Thanks!

 

Wiating for your good news!

QuoteReplyEditDelete

 

 

2009-06-25 09:43:21     Re: IDE to SATA requirement

Mike Frysinger (UNITED STATES)

Message: 76328   

 

no, he should upgrade to the latest release

QuoteReplyEditDelete

 

 

2009-06-25 12:11:22     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76335   

 

Do you mean I should use the uClinux-dist2008R1.5-RC3 ?

 

And the toolchain need the blackfin-toolchain-uclibc-full-08r1.5-14.i386.tar.bz2?

QuoteReplyEditDelete

 

 

2009-06-25 14:21:21     Re: IDE to SATA requirement

Mike Frysinger (UNITED STATES)

Message: 76338   

 

correct

QuoteReplyEditDelete

 

 

2009-06-25 21:12:16     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76344   

 

now I use 2008R1.5-RC3, still seems some different

 

                         --- Serial ATA (prod) and Parallel ATA (experimental) drivers                                              

                                    <*>   Generic platform device PATA support

 

and make get error:

 

/uClinux-dist-2008R1.5-RC3$ make

rm -f linux-2.6.x/usr/initramfs_data.cpio.gz

make ARCH=blackfin   CROSS_COMPILE=bfin-uclinux- -j4 -C linux-2.6.x  || exit 1

make[1]: Entering directory `/uClinux-dist-2008R1.5-RC3/linux-2.6.x'

scripts/kconfig/conf -s arch/blackfin/Kconfig

make[1]: Leaving directory `/uClinux-dist-2008R1.5-RC3/linux-2.6.x'

make[1]: Entering directory `/uClinux-dist-2008R1.5-RC3/linux-2.6.x'

  SYMLINK include/asm-blackfin/mach-bf533 -> include/asm-blackfin/mach

  CHK     include/linux/version.h

  CHK     include/linux/utsrelease.h

  CALL    scripts/checksyscalls.sh

  CHK     include/linux/compile.h

  CC      arch/blackfin/mach-bf533/boards/stamp.o

dnsdomainname: Unknown host

arch/blackfin/mach-bf533/boards/stamp.c:407: error: unknown field 'irq_type' specified in initializer

make[2]: *** [arch/blackfin/mach-bf533/boards/stamp.o] Error 1

make[1]: *** [arch/blackfin/mach-bf533/boards] Error 2

make[1]: *** Waiting for unfinished jobs....

  GZIP    kernel/config_data.gz

  IKCFG   kernel/config_data.h

  CC      kernel/configs.o

  LD      kernel/built-in.o

make[1]: *** wait: No child processes.  Stop.

make: *** [linux] Error 1

QuoteReplyEditDelete

 

 

2009-06-25 21:41:06     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76345   

 

I solve this make problem by change arch/blackfin/mach-bf533/boards/stamp.c:407 irq_type -> irq_flags.

 

now , make success. but run seems to be the same result.

 

and I find out these are some different with my 2008R1.5-RC3,

 

libata-core.c

line 6433-6437 as below:

    if (rc)

        devm_free_irq(host->dev, irq, host);

    /* enable irq after probe if it is asked to be disabled when request*/

    else if (irq_flags & IRQF_DISABLED)

        enable_irq(irq);

 

libata-sff.c

 

can't find these line...

                                if (qc) {

                 if (likely(!(qc->err_mask & AC_ERR_HSM))) {

                     ap->ops->sff_irq_on(ap);

+                    enable_irq(ap->host->irq);

                     ata_qc_complete(qc);

                 } else

                     ata_port_freeze(ap);

 

 

QuoteReplyEditDelete

 

 

2009-06-25 21:55:14     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76347   

 

it seems a little different with the 2007RC3 error:

 

boot info as below:

 

 

 

Starting Kernel at 0x19c000

Linux version 2.6.22.19-ADI-2008R1.5-ShenOu-svn (hhzhou@hhzhou) (gcc version 4.1.2 (ADI svn)) #6 Fri Jun 26 09:46:44 CST 2009

Hardware Trace Active and Enabled

Blackfin support (C) 2004-2007 Analog Devices, Inc.

Compiled for ADSP-BF531 Rev 0.5

Blackfin Linux support by   blackfin.uclinux.org/

Processor Speed: 378 MHz core clock and 94 MHz System Clock

Board Memory: 32MB

Kernel Managed Memory: 32MB

Memory map:

  text      = 0x00001000-0x0012a330

  rodata    = 0x0012b000-0x0018492c

  data      = 0x00185000-0x0019c000

    stack   = 0x00186000-0x00188000

  init      = 0x0019c000-0x001a9000

  bss       = 0x001a9000-0x001bd310

  available = 0x001bd310-0x01700000

  rootfs    = 0x01700000-0x01f00000

  DMA Zone  = 0x01f00000-0x02000000

Built 1 zonelists.  Total pages: 5842

Kernel command line: root=/dev/mtdblock0 rw lpj=5931008 mem=32m console=ttyBF0,115200n8 hdb=noprobe ide0=noprobe

ide_setup: hdb=noprobe

ide_setup: ide0=noprobe

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 128 (order: 7, 512 bytes)

Console: colour dummy device 80x25

Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory available: 21468k/32768k RAM, (52k init code, 1188k kernel code, 536k data, 1024k dma, 308k reserved)

Blackfin Scratchpad data SRAM: 4 KB

Blackfin Data A SRAM: 16 KB (16 KB free)

Blackfin Instruction SRAM: 16 KB (8 KB free)

Calibrating delay loop (skipped)... 2965.50 BogoMIPS preset

Mount-cache hash table entries: 512

NET: Registered protocol family 16

Blackfin GPIO Controller

Blackfin DMA Controller

stamp_init(): registering device resources

Generic PHY: Registered new driver

SCSI subsystem initialized

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

TCP reno registered

io scheduler noop registered

io scheduler anticipatory registered

io scheduler deadline registered (default)

io scheduler cfq registered

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 21) is a BFIN-UART

Davicom DM9161E: Registered new driver

Davicom DM9161A: Registered new driver

Davicom DM9131: Registered new driver

dm9000 Ethernet Driver

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2

ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx

ide0: Blackfin generic IDE interface

hda: Hitachi HTS543216L9A300, ATA DISK drive

ide0 at 0x20200020-0x20200027,0x2020001c on irq 38

hda: max request size: 128KiB

hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: 0xf8

hda: drive not ready for command

hda: 268435455 sectors (137438 MB) w/7114KiB Cache, CHS=65535/16/63

hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: 0xef

hda: drive not ready for command

hda: cache flushes supported

hda:hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: unknown

hda: drive not ready for command

ide0: reset: success

hda: lost interrupt

hda: lost interrupt

hda: lost interrupt

hda: lost interrupt

hda: lost interrupt

hda: lost interrupt

hda: lost interrupt

hda: lost interrupt

hda: lost interrupt

hda: lost interrupt

 

hda: lost interrupt

pata_platform: probe of pata_platform failed with error -16

uclinux[mtd]: RAM probe address=0x1700000 size=0x800000

Creating 1 MTD partitions on "RAM":

0x00000000-0x00800000 : "ROMfs"

TCP cubic registered

NET: Registered protocol family 1

VFS: Mounted root (ext2 filesystem).

Freeing unused kernel memory: 52k freed

dma_alloc_init: dma_page @ 0x002a2000 - 256 pages at 0x01f00000

 

grep: not found

                           _____________________________________

        a8888b.           / Welcome to the uClinux distribution \

       d888888b.         /       _     _                         \

       8P"YP"Y88        /       | |   |_|            __  __ (TM)  |

       8|o||o|88  _____/        | |    _ ____  _   _ \ \/ /       |

       8'    .88       \        | |   | |  _ \| | | | \  /        |

       8`._.' Y8.       \       | |__ | | | | | |_| | /  \        |

      d/      `8b.       \      \____||_|_| |_|\____|/_/\_\       |

     dP   .    Y8b.       \   For embedded processors including   |

    d8:'  "  `::88b        \    the Analog Devices Blackfin      /

   d8"         'Y88b        \___________________________________/

  :8P    '      :888

   8a.   :     _a88P         For further information, check out:

._/"Yaa_:   .| 88P|            -   blackfin.uclinux.org/

\    YP"    `| 8P  `.          -   docs.blackfin.uclinux.org/

/     \.___.d|    .'           -   www.uclinux.org/

`--..__)8888P`._.'  jgs/a:f    -   www.analog.com/blackfin

 

Have a lot of fun...

 

 

BusyBox v1.4.1 (2009-06-26 08:31:58 CST) Built-in shell (msh)

Enter 'help' for a list of built-in commands.

 

root:/>

root:/>

QuoteReplyEditDelete

 

 

2009-06-26 01:11:12     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76355   

 

For the 2008 release you are uing, pls make the following changes to make SATA work:

 

Index: libata-core.c

===================================================================

--- libata-core.c       (revision 6858)

+++ libata-core.c       (working copy)

@@ -6433,9 +6433,9 @@

        if (rc)

                devm_free_irq(host->dev, irq, host);

        /* enable irq after probe if it is asked to be disabled when request*/

-       else if (irq_flags & IRQF_DISABLED)

+/*     else if (irq_flags & IRQF_DISABLED)

                enable_irq(irq);

-

+*/

        return rc;

}

 

Index: libata-sff.c

===================================================================

--- libata-sff.c        (revision 6858)

+++ libata-sff.c        (working copy)

@@ -52,7 +52,7 @@

{

        struct ata_ioports *ioaddr = &ap->ioaddr;

        u8 tmp;

-

+       static int flag = 0;

        ap->ctl &= ~ATA_NIEN;

        ap->last_ctl = ap->ctl;

 

@@ -60,7 +60,9 @@

        tmp = ata_wait_idle(ap);

 

        ap->ops->irq_clear(ap);

-

+

+       if(flag++ == 1)

+               enable_irq(ap->host->irq);

        return tmp;

}

 

 

Index: stamp.c

===================================================================

--- stamp.c     (revision 6858)

+++ stamp.c     (working copy)

@@ -404,7 +404,7 @@

 

static struct pata_platform_info bfin_pata_platform_data = {

        .ioport_shift = 1,

-       .irq_type = IRQF_TRIGGER_HIGH | IRQF_DISABLED,

+       .irq_flags = IRQF_TRIGGER_HIGH | IRQF_DISABLED,

};

 

static struct resource bfin_pata_resources[] = {

 

 

 

 

And if you upgrade your kernel to 2009R1, you can change a line to get a reliable SATA:

 

Index: stamp.c

===================================================================

--- stamp.c     (revision 6779)

+++ stamp.c     (working copy)

@@ -1331,7 +1331,7 @@

/* #define CF_IDE_NAND_CARD_USE_CF_IN_COMMON_MEMORY_MODE */

 

#ifdef CF_IDE_NAND_CARD_USE_HDD_INTERFACE

-#define PATA_INT       IRQ_...

+#define PATA_INT       0//IRQ_...

static struct pata_platform_info bfin_pata_platform_data = {

        .ioport_shift = 1,

        .irq_flags = IRQF_TRIGGER_HIGH | IRQF_DISABLED,

 

 

 

 

Make sure don't select

 

< > Serial ATA (prod) and Parallel ATA (experimental) drivers  --->

 

and

 

< > ATA/ATAPI/MFM/RLL support  --->

 

at the same time.

 

You only need to select Serial ATA (prod) and Parallel ATA (experimental) drivers. We use the generic PATA_PLATFORM driver, so pls make sure CONFIG_PATA_PLATFORM is set to Y or M.

QuoteReplyEditDelete

 

 

2009-06-26 03:32:07     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76358   

 

boot info as below,

 

df print out nothing??

 

and /dev/ not find hda device...

 

 

 

I use <*> ATA/ATAPI/MFM/RLL support  --->

 

 

 

 

 

Starting Kernel at 0x18a000

Linux version 2.6.22.19-ADI-2008R1.5-ShenOu-svn (hhzhou@hhzhou) (gcc version 4.1.2 (ADI svn)) #8 Fri Jun 26 14:54:56 CST 2009

Hardware Trace Active and Enabled

Blackfin support (C) 2004-2007 Analog Devices, Inc.

Compiled for ADSP-BF531 Rev 0.5

Blackfin Linux support by   blackfin.uclinux.org/

Processor Speed: 378 MHz core clock and 94 MHz System Clock

Board Memory: 32MB

Kernel Managed Memory: 32MB

Memory map:

  text      = 0x00001000-0x0011e820

  rodata    = 0x0011f000-0x00174a8c

  data      = 0x00175000-0x0018a000

    stack   = 0x00176000-0x00178000

  init      = 0x0018a000-0x00196000

  bss       = 0x00196000-0x001a8150

  available = 0x001a8150-0x01700000

  rootfs    = 0x01700000-0x01f00000

  DMA Zone  = 0x01f00000-0x02000000

Built 1 zonelists.  Total pages: 5842

Kernel command line: root=/dev/mtdblock0 rw lpj=5931008 mem=32m console=ttyBF0,115200n8 hdb=noprobe ide0=noprobe

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 128 (order: 7, 512 bytes)

Console: colour dummy device 80x25

Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory available: 21552k/32768k RAM, (48k init code, 1142k kernel code, 502k data, 1024k dma, 308k reserved)

Blackfin Scratchpad data SRAM: 4 KB

Blackfin Data A SRAM: 16 KB (16 KB free)

Blackfin Instruction SRAM: 16 KB (8 KB free)

Calibrating delay loop (skipped)... 2965.50 BogoMIPS preset

Mount-cache hash table entries: 512

NET: Registered protocol family 16

Blackfin GPIO Controller

Blackfin DMA Controller

stamp_init(): registering device resources

SCSI subsystem initialized

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

TCP reno registered

io scheduler noop registered

io scheduler anticipatory registered

io scheduler deadline registered (default)

io scheduler cfq registered

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 21) is a BFIN-UART

scsi0 : pata_platform

ata1: PATA max PIO0 cmd 0x20314020 ctl 0x2031401c bmdma 0x00000000 irq 38

uclinux[mtd]: RAM probe address=0x1700000 size=0x800000

Creating 1 MTD partitions on "RAM":

0x00000000-0x00800000 : "ROMfs"

TCP cubic registered

NET: Registered protocol family 1

VFS: Mounted root (ext2 filesystem).

Freeing unused kernel memory: 48k freed

dma_alloc_init: dma_page @ 0x01686000 - 256 pages at 0x01f00000

grep: not found

                           _____________________________________

        a8888b.           / Welcome to the uClinux distribution \

       d888888b.         /       _     _                         \

       8P"YP"Y88        /       | |   |_|            __  __ (TM)  |

       8|o||o|88  _____/        | |    _ ____  _   _ \ \/ /       |

       8'    .88       \        | |   | |  _ \| | | | \  /        |

       8`._.' Y8.       \       | |__ | | | | | |_| | /  \        |

      d/      `8b.       \      \____||_|_| |_|\____|/_/\_\       |

     dP   .    Y8b.       \   For embedded processors including   |

    d8:'  "  `::88b        \    the Analog Devices Blackfin      /

   d8"         'Y88b        \___________________________________/

  :8P    '      :888

   8a.   :     _a88P         For further information, check out:

._/"Yaa_:   .| 88P|            -   blackfin.uclinux.org/

\    YP"    `| 8P  `.          -   docs.blackfin.uclinux.org/

/     \.___.d|    .'           -   www.uclinux.org/

`--..__)8888P`._.'  jgs/a:f    -   www.analog.com/blackfin

 

Have a lot of fun...

 

 

BusyBox v1.4.1 (2009-06-26 08:31:58 CST) Built-in shell (msh)

Enter 'help' for a list of built-in commands.

 

root:/> df

Filesystem           1k-blocks      Used Available Use% Mounted on

root:/> /dev/

/dev/console  /dev/log      /dev/null     /dev/pts/     /dev/zero

root:/> /dev/

QuoteReplyEditDelete

 

 

2009-06-26 03:33:14     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76359   

 

sorry, write wrong..

 

I use

 

<*> Serial ATA (prod) and Parallel ATA (experimental) drivers  --->

 

not < > ATA/ATAPI/MFM/RLL support  --->

QuoteReplyEditDelete

 

 

2009-06-26 03:45:07     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76360   

 

Was your hardware connection right?  Did you provide power to convert board right? I got same log with you if I didn't connect hardwares right.

QuoteReplyEditDelete

 

 

2009-06-26 03:50:56     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76361   

 

And if you connect right, you will get information like:

 

scsi0 : pata_platform

ata1: PATA max PIO0 cmd 0x20314020 ctl 0x2031401c bmdma 0x00000000 irq 55

ata1.00: ATA-7: Hitachi HTS541616J9SA00, SB4OC7KP, max UDMA/100

ata1.00: 312581808 sectors, multi 0: LBA48 NCQ (depth 0/1)

ata1.00: configured for PIO

scsi 0:0:0:0: Direct-Access     ATA      Hitachi HTS54161 SB4O PQ: 0 ANSI: 5

sd 0:0:0:0: [sda] 312581808 512-byte hardware sectors (160042 MB)

sd 0:0:0:0: [sda] Write Protect is off

sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA

sd 0:0:0:0: [sda] 312581808 512-byte hardware sectors (160042 MB)

sd 0:0:0:0: [sda] Write Protect is off

sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA

sda: sda1 sda2

sd 0:0:0:0: [sda] Attached SCSI disk

sd 0:0:0:0: Attached scsi generic sg0 type 0

bfin-spi bfin-spi.0: Blackfin BF5xx on-chip SPI Contoller Driver, Version 1.0, regs_base@ffc00500, dma channel@7

rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0

 

 

BTW, the device node built is /dev/sda* not /dev/hda*.

QuoteReplyEditDelete

 

 

2009-06-26 04:17:09     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76374   

 

my connect is right, when I use

 

< * > ATA/ATAPI/MFM/RLL support  --->

 

it can detect the HDD

 

so, it may be another error in my configure...

 

can you help , what may I confiure error?

 

my confiure file as attach file

 

aaa

QuoteReplyEditDelete

 

 

2009-06-26 04:44:17     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76375   

 

Pls select necessary SCSI items:

 

  x x                             --- SCSI support type (disk, tape, CD-ROM)                                                         x x

  x x                             <*> SCSI disk support                                                                              x x

  x x                             < > SCSI tape support                                                                              x x

  x x                             < > SCSI OnStream SC-x0 tape support                                                               x x

  x x                             <*> SCSI CDROM support                                                                             x x

  x x                             [ ]   Enable vendor-specific extensions (for SCSI CDROM)                                           x x

  x x                             <*> SCSI generic support                                                                           x x

  x x                             < > SCSI media changer support                                                                     x x

  x x                             --- Some SCSI devices (e.g. CD jukebox) support multiple LUNs         

QuoteReplyEditDelete

 

 

2009-06-26 04:58:24     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76376   

 

I add these functions,

 

but make get error...

 

 

 

 

 

/uClinux-dist-2008R1.5-RC3$ make

rm -f linux-2.6.x/usr/initramfs_data.cpio.gz

make ARCH=blackfin   CROSS_COMPILE=bfin-uclinux- -j4 -C linux-2.6.x  || exit 1

make[1]: Entering directory `/uClinux-dist-2008R1.5-RC3/linux-2.6.x'

scripts/kconfig/conf -s arch/blackfin/Kconfig

make[1]: Leaving directory `/uClinux-dist-2008R1.5-RC3/linux-2.6.x'

make[1]: Entering directory `/uClinux-dist-2008R1.5-RC3/linux-2.6.x'

  SYMLINK include/asm-blackfin/mach-bf533 -> include/asm-blackfin/mach

  CHK     include/linux/version.h

  CHK     include/linux/utsrelease.h

  CALL    scripts/checksyscalls.sh

  CHK     include/linux/compile.h

dnsdomainname: Unknown host

  GZIP    kernel/config_data.gz

  IKCFG   kernel/config_data.h

  CC      kernel/configs.o

  LD      kernel/built-in.o

  CC      drivers/scsi/scsi.o

  CC      drivers/scsi/hosts.o

  CC      drivers/scsi/scsi_error.o

  CC      drivers/scsi/scsi_lib.o

  CC      drivers/scsi/scsi_scan.o

  CC      drivers/scsi/scsi_sysfs.o

  CC      drivers/scsi/scsi_devinfo.o

  CC      drivers/scsi/sg.o

  CC [M]  drivers/scsi/scsi_wait_scan.o

  LD      drivers/scsi/scsi_mod.o

  LD      drivers/scsi/sd_mod.o

  LD      drivers/scsi/sr_mod.o

drivers/scsi/sg.c: In function 'sg_write':

drivers/scsi/sg.c:523: warning: 'opcode' may be used uninitialized in this function

  LD      drivers/scsi/built-in.o

  LD      drivers/built-in.o

  GEN     .version

  CHK     include/linux/compile.h

dnsdomainname: Unknown host

  UPD     include/linux/compile.h

  CC      init/version.o

  LD      init/built-in.o

  LD      .tmp_vmlinux1

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

`.exit.text' referenced in section `.rodata' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

make[1]: *** [.tmp_vmlinux1] Error 1

make[1]: Leaving directory `/uClinux-dist-2008R1.5-RC3/linux-2.6.x'

make: *** [linux] Error 1

QuoteReplyEditDelete

 

 

2009-06-26 05:15:04     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76377   

 

I didn't see this error. Attached my kconfig

 

kconfig

QuoteReplyEditDelete

 

 

2009-06-26 06:35:43     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76382   

 

Now I have use your kconfig , make successfully,

 

but sata not work normally.

 

it should be another problem, may be hardware connect error?

 

I didn't connect two dma pin, do you use them?

 

 

 

Starting Kernel at 0x17c000

Linux version 2.6.22.19-ADI-2008R1.5-svn (hhzhou@hhzhou) (gcc version 4.1.2 (ADI svn)) #25 Fri Jun 26 18:27:58 CST 2009

Hardware Trace Active and Enabled

Blackfin support (C) 2004-2007 Analog Devices, Inc.

Compiled for ADSP-BF533 Rev 0.5

Blackfin Linux support by   blackfin.uclinux.org/

Processor Speed: 378 MHz core clock and 63 MHz System Clock

Board Memory: 32MB

Kernel Managed Memory: 32MB

Memory map:

  text      = 0x00001000-0x00119eb0

  rodata    = 0x0011a000-0x0016ae30

  data      = 0x0016b000-0x0017c000

    stack   = 0x0016c000-0x0016e000

  init      = 0x0017c000-0x005a5000

  bss       = 0x005a5000-0x005b3d90

  available = 0x005b3d90-0x01eff000

  DMA Zone  = 0x01f00000-0x02000000

NOMPU: setting up cplb tables for global access

Instruction Cache Enabled

Data Cache Enabled (write-through)

Built 1 zonelists.  Total pages: 7874

Kernel command line: root=/dev/mtdblock0 rw lpj=5931008 mem=32m console=ttyBF0,115200n8 hdb=noprobe ide0=noprobe

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 128 (order: 7, 512 bytes)

Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory available: 25604k/32768k RAM, (4260k init code, 1123k kernel code, 452k data, 1024k dma, 304k reserved)

Blackfin Scratchpad data SRAM: 4 KB

Blackfin Data A SRAM: 16 KB (15 KB free)

Blackfin Data B SRAM: 16 KB (16 KB free)

Blackfin Instruction SRAM: 64 KB (56 KB free)

Calibrating delay loop (skipped)... 2965.50 BogoMIPS preset

Security Framework v1.0.0 initialized

Mount-cache hash table entries: 512

NET: Registered protocol family 16

Blackfin GPIO Controller

Blackfin DMA Controller

stamp_init(): registering device resources

Generic PHY: Registered new driver

SCSI subsystem initialized

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

TCP reno registered

io scheduler noop registered

io scheduler anticipatory registered (default)

io scheduler cfq registered

bfin-wdt: initialized: timeout=20 sec (nowayout=0)

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 21) is a BFIN-UART

RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize

SMSC LAN83C185: Registered new driver

scsi0 : pata_platform

ata1: PATA max PIO0 cmd 0x20314020 ctl 0x2031401c bmdma 0x00000000 irq 38

bfin-spi bfin-spi.0: Blackfin BF5xx on-chip SPI Contoller Driver, Version 1.0, regs_base@ffc00500, dma channel@5

rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0

TCP cubic registered

NET: Registered protocol family 1

NET: Registered protocol family 17

rtc-bfin rtc-bfin: setting the system clock to 2036-12-07 16:23:40 (2112279820)

Freeing unused kernel memory: 4260k freed

dma_alloc_init: dma_page @ 0x005a1000 - 256 pages at 0x01f00000

grep: not found

                           _____________________________________

        a8888b.           / Welcome to the uClinux distribution \

       d888888b.         /       _     _                         \

       8P"YP"Y88        /       | |   |_|            __  __ (TM)  |

       8|o||o|88  _____/        | |    _ ____  _   _ \ \/ /       |

       8'    .88       \        | |   | |  _ \| | | | \  /        |

       8`._.' Y8.       \       | |__ | | | | | |_| | /  \        |

      d/      `8b.       \      \____||_|_| |_|\____|/_/\_\       |

     dP   .    Y8b.       \   For embedded processors including   |

    d8:'  "  `::88b        \    the Analog Devices Blackfin      /

   d8"         'Y88b        \___________________________________/

  :8P    '      :888

   8a.   :     _a88P         For further information, check out:

._/"Yaa_:   .| 88P|            -   blackfin.uclinux.org/

\    YP"    `| 8P  `.          -   docs.blackfin.uclinux.org/

/     \.___.d|    .'           -   www.uclinux.org/

`--..__)8888P`._.'  jgs/a:f    -   www.analog.com/blackfin

 

Have a lot of fun...

 

 

BusyBox v1.4.1 (2009-06-26 08:31:58 CST) Built-in shell (msh)

Enter 'help' for a list of built-in commands.

 

root:/> df

Filesystem           1k-blocks      Used Available Use% Mounted on

root:/>

root:/>

root:/> ls /dev/

console  log      null     pts      zero

root:/>

QuoteReplyEditDelete

 

 

2009-06-26 06:50:04     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76383   

 

now I change arch/blackfin/mach-bf533/boards/stamp.c

 

static struct resource bfin_pata_resources[] = {

    {

-        //.start = 0x20314020,

-        //.end = 0x2031403F,

+        .start = 0x20200020,

+        .end = 0x2020003F,

        .flags = IORESOURCE_MEM,

    },

    {

-        //.start = 0x2031401C,

-        //.end = 0x2031401F,

+      .start = 0x2020001C,

+      .end = 0x2020001F,

        .flags = IORESOURCE_MEM,

    },

    {

        .start = PATA_INT,

        .end = PATA_INT,

        .flags = IORESOURCE_IRQ,

    },

};

 

 

get progress, boot info as below:

 

 

 

Starting Kernel at 0x17c000

Linux version 2.6.22.19-ADI-2008R1.5-svn (hhzhou@hhzhou) (gcc version 4.1.2 (ADI svn)) #28 Fri Jun 26 18:42:37 CST 2009

Hardware Trace Active and Enabled

Blackfin support (C) 2004-2007 Analog Devices, Inc.

Compiled for ADSP-BF533 Rev 0.5

Blackfin Linux support by   blackfin.uclinux.org/

Processor Speed: 378 MHz core clock and 63 MHz System Clock

Board Memory: 32MB

Kernel Managed Memory: 32MB

Memory map:

  text      = 0x00001000-0x00119eb0

  rodata    = 0x0011a000-0x0016ae30

  data      = 0x0016b000-0x0017c000

    stack   = 0x0016c000-0x0016e000

  init      = 0x0017c000-0x005a5000

  bss       = 0x005a5000-0x005b3d90

  available = 0x005b3d90-0x01eff000

  DMA Zone  = 0x01f00000-0x02000000

NOMPU: setting up cplb tables for global access

Instruction Cache Enabled

Data Cache Enabled (write-through)

Built 1 zonelists.  Total pages: 7874

Kernel command line: root=/dev/mtdblock0 rw lpj=5931008 mem=32m console=ttyBF0,115200n8 hdb=noprobe ide0=noprobe

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 128 (order: 7, 512 bytes)

Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory available: 25604k/32768k RAM, (4260k init code, 1123k kernel code, 452k data, 1024k dma, 304k reserved)

Blackfin Scratchpad data SRAM: 4 KB

Blackfin Data A SRAM: 16 KB (15 KB free)

Blackfin Data B SRAM: 16 KB (16 KB free)

Blackfin Instruction SRAM: 64 KB (56 KB free)

Calibrating delay loop (skipped)... 2965.50 BogoMIPS preset

Security Framework v1.0.0 initialized

Mount-cache hash table entries: 512

NET: Registered protocol family 16

Blackfin GPIO Controller

Blackfin DMA Controller

stamp_init(): registering device resources

Generic PHY: Registered new driver

SCSI subsystem initialized

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

TCP reno registered

io scheduler noop registered

io scheduler anticipatory registered (default)

io scheduler cfq registered

bfin-wdt: initialized: timeout=20 sec (nowayout=0)

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 21) is a BFIN-UART

RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize

SMSC LAN83C185: Registered new driver

scsi0 : pata_platform

ata1: PATA max PIO0 cmd 0x20200020 ctl 0x2020001c bmdma 0x00000000 irq 38

ata1.00: failed to IDENTIFY (I/O error, err_mask=0x2)

irq 38: nobody cared (try booting with the "irqpoll" option)

Hardware Trace:

   0 Target : <0x0000479c> { _dump_stack + 0x0 }

     Source : <0x0002878c> { ___report_bad_irq + 0x1c }

   1 Target : <0x0002878c> { ___report_bad_irq + 0x1c }

     Source : <0x000287e8> { ___report_bad_irq + 0x78 }

   2 Target : <0x000287e8> { ___report_bad_irq + 0x78 }

     Source : <0x0000d5ba> { _printk + 0x16 }

   3 Target : <0x0000d5b6> { _printk + 0x12 }

     Source : <0x0000d46c> { _vprintk + 0x1b8 }

   4 Target : <0x0000d460> { _vprintk + 0x1ac }

     Source : <0x0000d452> { _vprintk + 0x19e }

   5 Target : <0x0000d44e> { _vprintk + 0x19a }

     Source : <0x0000d29c> { _wake_up_klogd + 0x24 }

   6 Target : <0x0000d278> { _wake_up_klogd + 0x0 }

     Source : <0x0000d9a4> { _release_console_sem + 0x1f4 }

   7 Target : <0x0000d996> { _release_console_sem + 0x1e6 }

     Source : <0x0000d988> { _release_console_sem + 0x1d8 }

   8 Target : <0x0000d97e> { _release_console_sem + 0x1ce }

     Source : <0x0000d970> { _release_console_sem + 0x1c0 }

   9 Target : <0x0000d950> { _release_console_sem + 0x1a0 }

     Source : <0x0000d836> { _release_console_sem + 0x86 }

  10 Target : <0x0000d806> { _release_console_sem + 0x56 }

     Source : <0x0000d932> { _release_console_sem + 0x182 }

  11 Target : <0x0000d92c> { _release_console_sem + 0x17c }

     Source : <0x0000d172> { __call_console_drivers + 0x7e }

  12 Target : <0x0000d16c> { __call_console_drivers + 0x78 }

     Source : <0x0000d12e> { __call_console_drivers + 0x3a }

  13 Target : <0x0000d11e> { __call_console_drivers + 0x2a }

     Source : <0x0000d10e> { __call_console_drivers + 0x1a }

  14 Target : <0x0000d0f4> { __call_console_drivers + 0x0 }

     Source : <0x0000d928> { _release_console_sem + 0x178 }

  15 Target : <0x0000d91e> { _release_console_sem + 0x16e }

     Source : <0x0000d8bc> { _release_console_sem + 0x10c }

Stack from 01837b38:

        000099d6 00028790 00172d60 00000000 00170574 00000026 00000000 00028958

        00172d60 00000000 00000000 00000026 00170574 00029270 00172d60 00000026

        005a6360 00000000 00000020 00000000 00000000 0000aca4 00027f70 00000000

        00008a86 00172d60 00000026 005afa20 01837d34 0000000a 00000001 ffa003b6

        0000001a 00172af0 005afa20 01837d34 0000000a 00000001 0001177c 005abb84

        005abb40 ffa00c60 ffc00014 005abb40 005ad610 00000002 005afa20 00000000

 

Call Trace:

[<0001175e>] ___do_softirq+0x42/0xac

[<0001175e>] ___do_softirq+0x42/0xac

[<00002000>] _get_cclk+0x30/0x68

[<00083886>] _number+0x12e/0x2a0

[<00083878>] _number+0x120/0x2a0

[<0000ffff>] _do_exit+0x6c3/0x760

[<0000ffff>] _do_exit+0x6c3/0x760

[<000ad6ec>] _ata_std_softreset+0x0/0xd4

[<0000ffff>] _do_exit+0x6c3/0x760

[<000b4fdc>] _ata_eh_thaw_port+0x3c/0x44

[<00008050>] __l1_sram_free+0x68/0xb4

[<000b4fdc>] _ata_eh_thaw_port+0x3c/0x44

[<000b4fca>] _ata_eh_thaw_port+0x2a/0x44

[<00003004>] _do_signal+0x330/0xd74

[<00083886>] _number+0x12e/0x2a0

[<00083878>] _number+0x120/0x2a0

[<0000ffff>] _do_exit+0x6c3/0x760

[<000ad6ec>] _ata_std_softreset+0x0/0xd4

[<0000ffff>] _do_exit+0x6c3/0x760

[<0000ffff>] _do_exit+0x6c3/0x760

[<000b5c96>] _ata_do_eh+0x876/0x11e8

[<000b5ac0>] _ata_do_eh+0x6a0/0x11e8

[<0001177c>] ___do_softirq+0x60/0xac

[<0001177c>] ___do_softirq+0x60/0xac

[<0003508e>] _kmem_cache_zalloc+0x5a/0x68

[<0000fe40>] _do_exit+0x504/0x760

[<00008050>] __l1_sram_free+0x68/0xb4

[<0000ffe4>] _do_exit+0x6a8/0x760

[<00003065>] _do_signal+0x391/0xd74

[<0001a5a4>] _wait_on_work+0xc/0x58

[<00083878>] _number+0x120/0x2a0

[<000b4936>] _ata_bmdma_drive_eh+0x66/0xe4

[<000b49f0>] _ata_bmdma_error_handler+0x3c/0x44

[<000b1484>] _ata_std_prereset+0x0/0xc0

[<000ad6ec>] _ata_std_softreset+0x0/0xd4

[<000ac694>] _ata_std_postreset+0x0/0xa0

[<000b6bb4>] _ata_scsi_error+0x1a4/0x454

[<0000ffff>] _do_exit+0x6c3/0x760

[<0009fd8a>] _scsi_error_handler+0x86/0x28c

[<0009fd04>] _scsi_error_handler+0x0/0x28c

[<0000960c>] _complete+0x20/0x3c

[<0009fd04>] _scsi_error_handler+0x0/0x28c

[<0001cee2>] _kthread+0x26/0x64

[<0009fd04>] _scsi_error_handler+0x0/0x28c

[<0001cf0c>] _kthread+0x50/0x64

[<0009fd04>] _scsi_error_handler+0x0/0x28c

[<00001686>] _kernel_thread_helper+0x6/0xc

 

handlers:

[<000b19b0>] (_ata_interrupt+0x0/0x1c8)

Disabling IRQ #38

ata1.00: failed to IDENTIFY (I/O error, err_mask=0x2)

ata1.00: limiting speed to UDMA7:PIO5

ata1.00: failed to IDENTIFY (I/O error, err_mask=0x2)

irq 38: nobody cared (try booting with the "irqpoll" option)

Hardware Trace:

   0 Target : <0x0000479c> { _dump_stack + 0x0 }

     Source : <0x0002878c> { ___report_bad_irq + 0x1c }

   1 Target : <0x0002878c> { ___report_bad_irq + 0x1c }

     Source : <0x000287e8> { ___report_bad_irq + 0x78 }

   2 Target : <0x000287e8> { ___report_bad_irq + 0x78 }

     Source : <0x0000d5ba> { _printk + 0x16 }

   3 Target : <0x0000d5b6> { _printk + 0x12 }

     Source : <0x0000d46c> { _vprintk + 0x1b8 }

   4 Target : <0x0000d460> { _vprintk + 0x1ac }

     Source : <0x0000d452> { _vprintk + 0x19e }

   5 Target : <0x0000d44e> { _vprintk + 0x19a }

     Source : <0x0000d29c> { _wake_up_klogd + 0x24 }

   6 Target : <0x0000d278> { _wake_up_klogd + 0x0 }

     Source : <0x0000d9a4> { _release_console_sem + 0x1f4 }

   7 Target : <0x0000d996> { _release_console_sem + 0x1e6 }

     Source : <0x0000d988> { _release_console_sem + 0x1d8 }

   8 Target : <0x0000d97e> { _release_console_sem + 0x1ce }

     Source : <0x0000d970> { _release_console_sem + 0x1c0 }

   9 Target : <0x0000d950> { _release_console_sem + 0x1a0 }

     Source : <0x0000d836> { _release_console_sem + 0x86 }

  10 Target : <0x0000d806> { _release_console_sem + 0x56 }

     Source : <0x0000d932> { _release_console_sem + 0x182 }

  11 Target : <0x0000d92c> { _release_console_sem + 0x17c }

     Source : <0x0000d172> { __call_console_drivers + 0x7e }

  12 Target : <0x0000d16c> { __call_console_drivers + 0x78 }

     Source : <0x0000d12e> { __call_console_drivers + 0x3a }

  13 Target : <0x0000d11e> { __call_console_drivers + 0x2a }

     Source : <0x0000d10e> { __call_console_drivers + 0x1a }

  14 Target : <0x0000d0f4> { __call_console_drivers + 0x0 }

     Source : <0x0000d928> { _release_console_sem + 0x178 }

  15 Target : <0x0000d91e> { _release_console_sem + 0x16e }

     Source : <0x0000d8bc> { _release_console_sem + 0x10c }

Stack from 01ee9b8c:

        003d0900 00028790 00172d60 00000000 00170574 00000026 00000000 00028958

        00172d60 00000000 00000000 00000026 00170574 00029270 00172d60 00000026

        005a6360 00000000 00000020 00000000 00000000 01ee7cc0 00027f70 00000000

        00008a86 00172d60 00000026 005afa20 01ee9d88 0000000a 00000001 ffa003b6

        0000001a 00172af0 005afa20 01ee9d88 0000000a 00000001 00000000 00011864

        005abb64 ffa00c60 ffc00014 005abb40 005ad610 00000002 0001177c 005abb84

 

Call Trace:

[<0001177c>] ___do_softirq+0x60/0xac

[<0001175e>] ___do_softirq+0x42/0xac

[<0001175e>] ___do_softirq+0x42/0xac

[<00083886>] _number+0x12e/0x2a0

[<00083878>] _number+0x120/0x2a0

[<0000ffff>] _do_exit+0x6c3/0x760

[<0000ffff>] _do_exit+0x6c3/0x760

[<000b19b0>] _ata_interrupt+0x0/0x1c8

[<0000ffff>] _do_exit+0x6c3/0x760

[<000286fa>] _enable_irq+0x3e/0x90

[<00008050>] __l1_sram_free+0x68/0xb4

[<000286fa>] _enable_irq+0x3e/0x90

[<00028748>] _enable_irq+0x8c/0x90

[<00083886>] _number+0x12e/0x2a0

[<00083878>] _number+0x120/0x2a0

[<0000ffff>] _do_exit+0x6c3/0x760

[<000b19b0>] _ata_interrupt+0x0/0x1c8

[<0000ffff>] _do_exit+0x6c3/0x760

[<0000ffff>] _do_exit+0x6c3/0x760

[<000b1150>] _ata_host_activate+0x64/0x74

[<00098caa>] _devres_add+0xe/0x28

[<00085110>] _devm_ioremap+0x1c/0x54

[<000b7026>] _pata_platform_probe+0x142/0x210

[<00096508>] _driver_sysfs_add+0x44/0x64

[<00096606>] _driver_probe_device+0x7a/0x17c

[<00080f5e>] _kobject_uevent_env+0x30e/0x398

[<00118300>] _klist_next+0x1c/0x60

[<0011831a>] _klist_next+0x36/0x60

[<000968e2>] ___driver_attach+0x102/0x10c

[<00095abe>] _bus_for_each_dev+0x36/0x64

[<000967e0>] ___driver_attach+0x0/0x10c

[<000809be>] _kobject_register+0x2e/0x44

[<000964be>] _driver_attach+0x1a/0x20

[<00095dea>] _bus_add_driver+0x4e/0x164

[<000967e0>] ___driver_attach+0x0/0x10c

[<00095e00>] _bus_add_driver+0x64/0x164

[<0017c668>] _kernel_init+0x88/0x234

[<0017c5e0>] _kernel_init+0x0/0x234

[<00001686>] _kernel_thread_helper+0x6/0xc

 

handlers:

[<000b19b0>] (_ata_interrupt+0x0/0x1c8)

Disabling IRQ #38

bfin-spi bfin-spi.0: Blackfin BF5xx on-chip SPI Contoller Driver, Version 1.0, regs_base@ffc00500, dma channel@5

rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0

TCP cubic registered

NET: Registered protocol family 1

NET: Registered protocol family 17

rtc-bfin rtc-bfin: setting the system clock to 2036-12-07 16:30:10 (2112280210)

Freeing unused kernel memory: 4260k freed

dma_alloc_init: dma_page @ 0x005a1000 - 256 pages at 0x01f00000

grep: not found

                           _____________________________________

        a8888b.           / Welcome to the uClinux distribution \

       d888888b.         /       _     _                         \

       8P"YP"Y88        /       | |   |_|            __  __ (TM)  |

       8|o||o|88  _____/        | |    _ ____  _   _ \ \/ /       |

       8'    .88       \        | |   | |  _ \| | | | \  /        |

       8`._.' Y8.       \       | |__ | | | | | |_| | /  \        |

      d/      `8b.       \      \____||_|_| |_|\____|/_/\_\       |

     dP   .    Y8b.       \   For embedded processors including   |

    d8:'  "  `::88b        \    the Analog Devices Blackfin      /

   d8"         'Y88b        \___________________________________/

  :8P    '      :888

   8a.   :     _a88P         For further information, check out:

._/"Yaa_:   .| 88P|            -   blackfin.uclinux.org/

\    YP"    `| 8P  `.          -   docs.blackfin.uclinux.org/

/     \.___.d|    .'           -   www.uclinux.org/

`--..__)8888P`._.'  jgs/a:f    -   www.analog.com/blackfin

 

Have a lot of fun...

 

 

BusyBox v1.4.1 (2009-06-26 08:31:58 CST) Built-in shell (msh)

Enter 'help' for a list of built-in commands.

 

root:/>

QuoteReplyEditDelete

 

 

2009-06-26 12:26:37     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76397   

 

I guess there are some connection problems or address setting issues.

 

You can use 2009R1 release to verify your hardware connection and start/end address set.

 

Remember to define PATA_INT as 0 in stamp.c. That will let ATA driver uses polling way to access disks. Drivers in 2008 release don't support the polling. As I know, it's sure that the polling way can work normally if the setting of HW and SW is right.

 

For interrupt way, you need to use my patch.

QuoteReplyEditDelete

 

 

2009-06-27 19:53:10     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76435   

 

Thanks Barry.

 

I will try the 2009R1 release..

 

one question:

 

where I can download the 2009R1 release? svn uClinux-dist? trunk or 2009 branch?

QuoteReplyEditDelete

 

 

2009-06-30 00:52:37     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76486   

 

I have tested for uclinux-dist-trunk-svn-8367

 

it seems the same error with 2008R1.5-RC3

 

can you help me with my hardware connect?

 

 

 

boot info:

 

Starting Kernel at 0x18e000

Linux version 2.6.22.19-ADI-2008R1.5-ShenOu-svn (hhzhou@hhzhou) (gcc version 4.1.2 (ADI svn)) #36 Fri Jun 26 20:03:27 CST 2009

Hardware Trace Active and Enabled

Blackfin support (C) 2004-2007 Analog Devices, Inc.

Compiled for ADSP-BF531 Rev 0.5

Blackfin Linux support by   blackfin.uclinux.org/

Processor Speed: 378 MHz core clock and 94 MHz System Clock

Board Memory: 32MB

Kernel Managed Memory: 32MB

Memory map:

  text      = 0x00001000-0x00121e50

  rodata    = 0x00122000-0x00178218

  data      = 0x00179000-0x0018e000

    stack   = 0x0017a000-0x0017c000

  init      = 0x0018e000-0x0019b000

  bss       = 0x0019b000-0x001ad150

  available = 0x001ad150-0x01700000

  rootfs    = 0x01700000-0x01f00000

  DMA Zone  = 0x01f00000-0x02000000

Built 1 zonelists.  Total pages: 5842

Kernel command line: root=/dev/mtdblock0 rw lpj=5931008 mem=32m console=ttyBF0,115200n8 hdb=noprobe ide0=noprobe

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 128 (order: 7, 512 bytes)

Console: colour dummy device 80x25

Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory available: 21532k/32768k RAM, (52k init code, 1155k kernel code, 505k data, 1024k dma, 308k reserved)

Blackfin Scratchpad data SRAM: 4 KB

Blackfin Data A SRAM: 16 KB (16 KB free)

Blackfin Instruction SRAM: 16 KB (8 KB free)

Calibrating delay loop (skipped)... 2965.50 BogoMIPS preset

Mount-cache hash table entries: 512

NET: Registered protocol family 16

Blackfin GPIO Controller

Blackfin DMA Controller

stamp_init(): registering device resources

SCSI subsystem initialized

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

TCP reno registered

io scheduler noop registered

io scheduler anticipatory registered

io scheduler deadline registered (default)

io scheduler cfq registered

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 21) is a BFIN-UART

dm9000 Ethernet Driver

scsi0 : pata_platform

ata1: PATA max PIO0 cmd 0x20200020 ctl 0x2020001c bmdma 0x00000000 irq 38

ata1.00: failed to IDENTIFY (I/O error, err_mask=0x2)

irq 38: nobody cared (try booting with the "irqpoll" option)

Hardware Trace:

   0 Target : <0x000043e0> { _dump_stack + 0x0 }

     Source : <0x000203dc> { ___report_bad_irq + 0x2c }

   1 Target : <0x000203dc> { ___report_bad_irq + 0x2c }

     Source : <0x0000b76a> { _printk + 0x16 }

   2 Target : <0x0000b766> { _printk + 0x12 }

     Source : <0x0000b752> { _vprintk + 0x2b2 }

   3 Target : <0x0000b746> { _vprintk + 0x2a6 }

     Source : <0x0000b712> { _vprintk + 0x272 }

   4 Target : <0x0000b70e> { _vprintk + 0x26e }

     Source : <0x0000b098> { _wake_up_klogd + 0x30 }

   5 Target : <0x0000b094> { _wake_up_klogd + 0x2c }

     Source : <0x0000b086> { _wake_up_klogd + 0x1e }

   6 Target : <0x0000b068> { _wake_up_klogd + 0x0 }

     Source : <0x0000b264> { _release_console_sem + 0x1c8 }

   7 Target : <0x0000b25a> { _release_console_sem + 0x1be }

     Source : <0x0000b24c> { _release_console_sem + 0x1b0 }

   8 Target : <0x0000b248> { _release_console_sem + 0x1ac }

     Source : <0x0000b240> { _release_console_sem + 0x1a4 }

   9 Target : <0x0000b23e> { _release_console_sem + 0x1a2 }

     Source : <0x0000b230> { _release_console_sem + 0x194 }

  10 Target : <0x0000b210> { _release_console_sem + 0x174 }

     Source : <0x0000b114> { _release_console_sem + 0x78 }

  11 Target : <0x0000b0ee> { _release_console_sem + 0x52 }

     Source : <0x0000b1fc> { _release_console_sem + 0x160 }

  12 Target : <0x0000b1f8> { _release_console_sem + 0x15c }

     Source : <0x0000af72> { __call_console_drivers + 0x72 }

  13 Target : <0x0000af6c> { __call_console_drivers + 0x6c }

     Source : <0x0000af36> { __call_console_drivers + 0x36 }

  14 Target : <0x0000af26> { __call_console_drivers + 0x26 }

     Source : <0x0000af16> { __call_console_drivers + 0x16 }

  15 Target : <0x0000af00> { __call_console_drivers + 0x0 }

     Source : <0x0000b1f4> { _release_console_sem + 0x158 }

Stack from 01671b64:

        00009296 000203e0 00180660 00000000 0017cec4 00000026 00000000 00020546

        00180660 016840f8 00000000 00000000 00000026 00000002 00020cfe 00180660

        00000026 016840f8 00000001 00000020 00000000 00000026 00000002 00020c7e

        0017ffe0 000077f2 00180660 01684174 01671d40 000c14c8 01684000 ffa08454

        001803f0 0000001a 01671d40 000c14c8 01684000 01671bf4 0000ea6a 001a1044

        ffa08d08 ffc00014 00000002 0000000a 01671c14 01671c14 ffa0848a 0000ea58

 

Call Trace:

[<0000ea58>] ___do_softirq+0x3c/0xa0

[<000c14c8>] _ata_std_softreset+0x0/0xc4

[<0000ffff>] _proc_dointvec_bset+0x1b/0x68

[<0000ffff>] _proc_dointvec_bset+0x1b/0x68

[<0000ffff>] _proc_dointvec_bset+0x1b/0x68

[<000c4630>] _ata_eh_thaw_port+0x38/0x40

[<00008050>] _nr_uninterruptible+0x0/0x1c

[<000c4630>] _ata_eh_thaw_port+0x38/0x40

[<000c461e>] _ata_eh_thaw_port+0x26/0x40

[<0000ffff>] _proc_dointvec_bset+0x1b/0x68

[<000c14c8>] _ata_std_softreset+0x0/0xc4

[<0000ffff>] _proc_dointvec_bset+0x1b/0x68

[<0000ffff>] _proc_dointvec_bset+0x1b/0x68

[<000c5508>] _ata_do_eh+0xb7c/0x10ac

[<000c56f0>] _ata_do_eh+0xd64/0x10ac

[<000c5736>] _ata_do_eh+0xdaa/0x10ac

[<0000eb6a>] _tasklet_action+0x4e/0x88

[<00096248>] _number+0x100/0x250

[<00028830>] ___kzalloc+0xc/0x24

[<00008088>] ___activate_task+0x1c/0x34

[<00096736>] _vsnprintf+0x39e/0x3f4

[<00037d78>] _d_lookup+0x1c/0x3c

[<000c4068>] _ata_bmdma_drive_eh+0x8c/0xd4

[<000c40ec>] _ata_bmdma_error_handler+0x3c/0x44

[<0000ffff>] _proc_dointvec_bset+0x1b/0x68

[<000c0fa0>] _ata_std_prereset+0x0/0xac

[<000c14c8>] _ata_std_softreset+0x0/0xc4

[<000bcfd4>] _ata_std_postreset+0x0/0x84

[<000c5dce>] _ata_scsi_error+0x106/0x21c

[<000b55a4>] _scsi_error_handler+0x38/0x22c

[<000b55c2>] _scsi_error_handler+0x56/0x22c

[<000b556c>] _scsi_error_handler+0x0/0x22c

[<00007ebc>] _complete+0x20/0x3c

[<000b556c>] _scsi_error_handler+0x0/0x22c

[<00018856>] _kthread+0x26/0x5c

[<000b556c>] _scsi_error_handler+0x0/0x22c

[<00018866>] _kthread+0x36/0x5c

[<000b556c>] _scsi_error_handler+0x0/0x22c

[<00001616>] _kernel_thread_helper+0x6/0xc

 

handlers:

[<000c1354>] (_ata_interrupt+0x0/0x174)

Disabling IRQ #38

ata1.00: failed to IDENTIFY (I/O error, err_mask=0x2)

ata1.00: limiting speed to UDMA7:PIO5

ata1.00: failed to IDENTIFY (I/O error, err_mask=0x2)

uclinux[mtd]: RAM probe address=0x1700000 size=0x800000

Creating 1 MTD partitions on "RAM":

0x00000000-0x00800000 : "ROMfs"

TCP cubic registered

NET: Registered protocol family 1

VFS: Mounted root (ext2 filesystem).

Freeing unused kernel memory: 52k freed

dma_alloc_init: dma_page @ 0x0168d000 - 256 pages at 0x01f00000

grep: not found

                           _____________________________________

        a8888b.           / Welcome to the uClinux distribution \

       d888888b.         /       _     _                         \

       8P"YP"Y88        /       | |   |_|            __  __ (TM)  |

       8|o||o|88  _____/        | |    _ ____  _   _ \ \/ /       |

       8'    .88       \        | |   | |  _ \| | | | \  /        |

       8`._.' Y8.       \       | |__ | | | | | |_| | /  \        |

      d/      `8b.       \      \____||_|_| |_|\____|/_/\_\       |

     dP   .    Y8b.       \   For embedded processors including   |

    d8:'  "  `::88b        \    the Analog Devices Blackfin      /

   d8"         'Y88b        \___________________________________/

  :8P    '      :888

   8a.   :     _a88P         For further information, check out:

._/"Yaa_:   .| 88P|            -   blackfin.uclinux.org/

\    YP"    `| 8P  `.          -   docs.blackfin.uclinux.org/

/     \.___.d|    .'           -   www.uclinux.org/

`--..__)8888P`._.'  jgs/a:f    -   www.analog.com/blackfin

 

Have a lot of fun...

 

 

BusyBox v1.4.1 (2009-06-26 08:31:58 CST) Built-in shell (msh)

Enter 'help' for a list of built-in commands.

 

root:/>

QuoteReplyEditDelete

 

 

2009-06-30 01:03:34     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76487   

 

my download seems a little different,

 

I can't find this line in uclinux-dist-trunk-svn-8367/linux-2.6.x/arch/blackfin/mach-bf533/boards/stamp.c

 

#define PATA_INT       IRQ_...

 

so I can't change it to #define PATA_INT       0//...

 

is this a promblem?

QuoteReplyEditDelete

 

 

2009-06-30 02:11:32     Re: IDE to SATA requirement

billy zhou (UNITED STATES)

Message: 76492   

 

paste wrong...

 

seems not detect sda,

 

boot info as below:

 

 

 

Starting Kernel at 0x1ba14c

Linux version 2.6.30-ADI-2010R1-pre (hhzhou@hhzhou) (gcc version 4.1.2 (ADI svn)) #13 Tue Jun 30 13:47:44 CST 2009

Board Memory: 32MB

Kernel Managed Memory: 32MB

Memory map:

  fixedcode = 0x00000400-0x00000490

  text      = 0x00001000-0x0012a600

  rodata    = 0x0012a600-0x0018f350

  bss       = 0x00190000-0x001a1fac

  data      = 0x001a1fac-0x001b2000

    stack   = 0x001b0000-0x001b2000

  init      = 0x001b2000-0x005a3000

  available = 0x005a3000-0x01eff000

  DMA Zone  = 0x01f00000-0x02000000

Hardware Trace Active and Enabled

Boot Mode: 0

Blackfin support (C) 2004-2009 Analog Devices, Inc.

Compiled for ADSP-BF533 Rev 0.5

Blackfin Linux support by   blackfin.uclinux.org/

Processor Speed: 378 MHz core clock and 63 MHz System Clock

NOMPU: setting up cplb tables

Instruction Cache Enabled for CPU0

  External memory: cacheable in instruction cache

Data Cache Enabled for CPU0

  External memory: cacheable (write-back) in data cache

Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 7873

Kernel command line: root=/dev/mtdblock0 rw lpj=5931008 mem=32m console=ttyBF0,115200n8 hdb=noprobe ide0=noprobe

NR_IRQS:49

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 128 (order: 7, 512 bytes)

console [ttyBF0] enabled

Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory available: 25680k/32768k RAM, (4036k init code, 1189k kernel code, 543k data, 1024k dma, 292k reserved)

Calibrating delay loop (skipped) preset value.. 2965.50 BogoMIPS (lpj=5931008)

Security Framework initialized

Mount-cache hash table entries: 512

Blackfin Scratchpad data SRAM: 4 KB

Blackfin L1 Data A SRAM: 16 KB (16 KB free)

Blackfin L1 Data B SRAM: 16 KB (16 KB free)

Blackfin L1 Instruction SRAM: 64 KB (53 KB free)

net_namespace: 296 bytes

NET: Registered protocol family 16

Blackfin DMA Controller

stamp_init(): registering device resources

bio: create slab <bio-0> at 0

SCSI subsystem initialized

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

TCP reno registered

NET: Registered protocol family 1

msgmni has been set to 50

io scheduler noop registered

io scheduler anticipatory registered (default)

io scheduler cfq registered

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 21) is a BFIN-UART

brd: module loaded

Driver 'sd' needs updating - please use bus_type methods

Driver 'sr' needs updating - please use bus_type methods

smc91x: not found (-19).

bfin-spi bfin-spi.0: Blackfin on-chip SPI Controller Driver, Version 1.0, regs_base@ffc00500, dma channel@5

rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0

bfin-wdt: initialized: timeout=20 sec (nowayout=0)

TCP cubic registered

NET: Registered protocol family 17

rtc-bfin rtc-bfin: setting system clock to 1970-01-01 00:37:46 UTC (2266)

Freeing unused kernel memory: 4036k freed

dma_alloc_init: dma_page @ 0x005a1000 - 256 pages at 0x01f00000

grep: not found

                           _____________________________________

        a8888b.           / Welcome to the uClinux distribution \

       d888888b.         /       _     _                         \

       8P"YP"Y88        /       | |   |_|            __  __ (TM)  |

       8|o||o|88  _____/        | |    _ ____  _   _ \ \/ /       |

       8'    .88       \        | |   | |  _ \| | | | \  /        |

       8`._.' Y8.       \       | |__ | | | | | |_| | /  \        |

      d/      `8b.       \      \____||_|_| |_|\____|/_/\_\       |

     dP   .    Y8b.       \   For embedded processors including   |

    d8:'  "  `::88b        \    the Analog Devices Blackfin      /

   d8"         'Y88b        \___________________________________/

  :8P    '      :888

   8a.   :     _a88P         For further information, check out:

._/"Yaa_:   .| 88P|            -   blackfin.uclinux.org/

\    YP"    `| 8P  `.          -   docs.blackfin.uclinux.org/

/     \.___.d|    .'           -   www.uclinux.org/

`--..__)8888P`._.'  jgs/a:f    -   www.analog.com/blackfin

 

Have a lot of fun...

 

 

BusyBox v1.14.2 (2009-06-30 12:43:16 CST) built-in shell (msh)

Enter 'help' for a list of built-in commands.

 

\u:\w>

QuoteReplyEditDelete

 

 

2009-06-30 04:27:52     Re: IDE to SATA requirement

Barry Song (CHINA)

Message: 76516   

 

Billy,

 

you need increase platform device according to your board in stamp.c if it doesn't exist in common codes like

 

#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)

 

#define PATA_INT        0

static struct pata_platform_info bfin_pata_platform_data = {

        .ioport_shift = 1,

        .irq_flags = IRQF_TRIGGER_HIGH | IRQF_DISABLED,

};

 

static struct resource bfin_pata_resources[] = {

        {  

                .start = 0x...,

                .end = 0x...,

                .flags = IORESOURCE_MEM,

        }, 

        {  

                .start = 0x...,

                .end = 0x...,

                .flags = IORESOURCE_MEM,

        }, 

        {  

                .start = PATA_INT,

                .end = PATA_INT,

                .flags = IORESOURCE_IRQ,

        }, 

};

 

static struct platform_device bfin_pata_device = {

        .name = "pata_platform",

        .id = -1,

        .num_resources = ARRAY_SIZE(bfin_pata_resources),

        .resource = bfin_pata_resources,

        .dev = {

                .platform_data = &bfin_pata_platform_data,

        }

};

#endif

 

static struct platform_device *stamp_devices[] __initdata = {

 

...

#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)

        &bfin_pata_device,

#endif

...

 

}

 

Otherwise, there will be no any detection operation at all.

 

After you make sure the polling is ok, you can change PATA_INT to real IRQ number. Codes in 2009r1 and trunk head of svn are all ok in interrupt mode now.

 

-Barry

Attachments

Outcomes