Linux PARISC architecture development
 help / color / mirror / Atom feed
From: Gururaj Ananthateerta <gururaj@cup.hp.com>
Cc: parisc-linux@lists.parisc-linux.org
Subject: [parisc-linux] Call to IODC hangs.!!!!
Date: Mon, 18 Mar 2002 21:40:39 -0800	[thread overview]
Message-ID: <3C96CF57.CA169520@cup.hp.com> (raw)
In-Reply-To: 20020316132221.A2179@parcelfarce.linux.theplanet.co.uk


I am using the following code to write a page to the swap space
using the iodc calls.

The IODC call for writing a boot device in blocks is
ENTRY_IO  with a subfunction BOOT_BLK_DEV_WRITE  = 17.

The call never returns.
Is there anythin I need to do more...


-------------------------------PARTITION TABLE Start -----------------
This is the partition of my disk.

Disk /dev/sda: 67 heads, 62 sectors, 1009 cylinders
Units = sectors of 1 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/sda1            62     33231     16585   f0  Linux/PA-RISC boot
/dev/sda2         33232    531711    249240   82  Linux swap
/dev/sda3        531712   1030191    249240   83  Linux
/dev/sda4       1030192   4191385   1580597   83  Linux
-------------------------------------------PARTITION TABLE End-----------------

-------------------------CALL to Firmware.c-----------------------------
I am calling a pdc_iodc_bootout() as below.

err = pdc_iodc_bootout((unsigned long)17014784, dump_page_buf,
                                1, &count);

17014784  is the start of the swap space.
                     I got this number by doing this.
Start sector of the swap partition * 512
33232 * 512 = 17014784


-------------------------------------------------------------END calling
-------------


---------------------------------------Call to
IODC------------------------------
This is the call to IODC

int
pdc_iodc_bootout(unsigned devaddr, char *memaddr, unsigned size,
                 unsigned *count)
{
    int r;

    static int __attribute__((aligned(8)))   iodc_retbuf[32];
    static char __attribute__((aligned(64))) iodc_dbuf[4096];
    memcpy(iodc_dbuf, memaddr, size);

    if(!(PAGE0->mem_boot.iodc_io)) {
        return -1;
    }

    r = real32_call(PAGE0->mem_boot.iodc_io,
                    (unsigned long)PAGE0->mem_boot.hpa,
ENTRY_IO_BLK_BOOTOUT,
                    PAGE0->mem_boot.spa, __pa(PAGE0->mem_boot.dp.layers),
                    __pa(iodc_retbuf), devaddr, __pa(iodc_dbuf), size,
size);
    memcpy(count, iodc_retbuf, sizeof(*count));

    if (r == 3) /* EOF */
    {
        printk("pdc_iodc_bootin:EOF\n");
        return 0;                       /* count = 0 at EOF */
    }
    else if (r >= 0)
    {
        convert_to_wide(pdc_result);
        return pdc_result[0];           /* count */
    }
    return r;                           /* r < 0; error */
}

      parent reply	other threads:[~2002-03-19  5:40 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-14  6:54 [parisc-linux] TOC on B180L joel.soete
2002-03-14  7:29 ` Grant Grundler
2002-03-15 18:40 ` [parisc-linux] 0.93 installations on N-Class., Gururaj Ananthateerta
2002-03-15 19:00   ` Matthew Wilcox
2002-03-16  6:28     ` [parisc-linux] code to handle disk partitions Gururaj Ananthateerta
2002-03-16 13:22       ` Matthew Wilcox
2002-03-18 23:31         ` [parisc-linux] ftp Client Gururaj Ananthateerta
2002-03-19 13:27           ` Matthew Wilcox
2002-03-19  5:40         ` Gururaj Ananthateerta [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3C96CF57.CA169520@cup.hp.com \
    --to=gururaj@cup.hp.com \
    --cc=parisc-linux@lists.parisc-linux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox