linux-embedded.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Alexander Varnin <fenixk19@mail.ru>
To: linux-embedded@vger.kernel.org
Subject: Need help adding platform UIO devices to board
Date: Wed, 28 Nov 2012 22:53:23 +0400	[thread overview]
Message-ID: <50B65DA3.9000707@mail.ru> (raw)

Hello!
I'm trying to add UIO device to my system to handle interrupt. But i'm
facing following problem. Docs says, on reading device /dev/uio0 it will
block until interrupt occurs. I've made simple program for test. It
tries to write 1 to enable interrupts.

    #include <unistd.h>
    #include <errno.h>
    #include <fcntl.h>
    #include <stdio.h>

    int main()
    {
        int fd;
        char c = 1;
        fd = open("/dev/uio0", O_RDONLY);
        if (fd<0) {
            printf("open error: %d\n", errno);
             return 0;
        }
        printf("fd == %d\n", fd);
        int res = write(fd, &c, 1);
        if(res<0) {
            printf("write error: %d\n", errno);
        }
        return 0;
    }

And as the output i get

    fd ==
    3                                                                        

    write error: 9 

error 9 means "bad file descriptor". File /dev/uio0 is here.
/sys/class/uio/uio0 folder i also. Reading are fails the same way.

Here is how i add device to the system in board specific code

    static struct uio_info cross_uio_info = {
       .name = "uio_mcross",
       .version = "0.1",
       .irq = IRQ_EINT14,
       .irq_flags = 0,
    };

    static struct platform_device minipos_cross_device = {
        .name          = "uio_pdrv_genirq",
        .id          = -1,
        .dev              = {
          .platform_data = &cross_uio_info,
        }
    };

and then add platform device.
Please, help.

             reply	other threads:[~2012-11-28 18:53 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-28 18:53 Alexander Varnin [this message]
2012-11-28 19:03 ` Need help adding platform UIO devices to board Nicholas Mc Guire
2012-11-29  9:29   ` Alexander Varnin
2012-11-29  9:47     ` Alexander Varnin
     [not found] ` <008d01cdce0d$d6ea04d0$84be0e70$@iii.org.tw>
2012-11-29  9:38   ` Alexander Varnin

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=50B65DA3.9000707@mail.ru \
    --to=fenixk19@mail.ru \
    --cc=linux-embedded@vger.kernel.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;
as well as URLs for NNTP newsgroup(s).