All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Ludvig <mludvig-FYrFmKP0dZ69koe0gwxAeg@public.gmane.org>
To: spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: bitbanging driver for my gpio board
Date: Wed, 23 Sep 2009 09:52:02 +1200	[thread overview]
Message-ID: <4AB94702.2010608@logix.net.nz> (raw)

Hi all,

I've got a digital IO board sitting on a ISA bus in an industrial x86
computer. And I've got a simple driver with ioctl interface for toggling
the IO pins Hi and Low and it works fine.

Now I'm about to develop a bitbanging SPI driver with the help of
drivers/spi/spi_bitbang.c. Unfortunately I don't understand how to glue
it with my GPIO driver, more precisely - how to register a new SPI
driver.

The other modules in drivers/spi seem to use platform_driver_register()
or spi_register_driver() to get their blah_probe() called and then they
go from there. However, whatever I tried, my _probe() method never gets
called. The module is as simple as this (remove/exit methods omitted
from this email):

	static int inro_spi_probe(struct spi_device *dev)
	{
	    printk(KERN_INFO PFX "inro_spi_probe() called\n");
	    return -ENODEV;
	}
	static struct spi_driver inro_spi_drv = {
	    .probe   = inro_spi_probe,
	    .driver  = { .name   = "inro_spi", .owner  = THIS_MODULE, },
	};
	static int __init inro_spi_init(void)
	{
	    printk(KERN_INFO PFX "inro_spi_init() called\n");
	    return spi_register_driver(&inro_spi_drv);
	}
	module_init(inro_spi_init);

I tried spi_register_driver() as well as platform_driver_register() both
to no avail. I assume I would need some support in xxx_platform_data for
platform_driver_register() to work but since we're running an unmodified
Debian kernel on x86 I can't do that. What needs to be done for
spi_register_driver() to call my _probe() I have no idea.


So my question is how to register/init the module and make it available
to the SPI subsystem? I somehow can't figure it out :-(

Thanks for any hints!

Michal

------------------------------------------------------------------------------
Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
http://p.sf.net/sfu/devconf

             reply	other threads:[~2009-09-22 21:52 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-22 21:52 Michal Ludvig [this message]
     [not found] ` <4AB94702.2010608-FYrFmKP0dZ69koe0gwxAeg@public.gmane.org>
2009-09-22 22:07   ` bitbanging driver for my gpio board H Hartley Sweeten

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=4AB94702.2010608@logix.net.nz \
    --to=mludvig-fyrfmkp0dz69koe0gwxaeg@public.gmane.org \
    --cc=spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.