Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Apr 2015 10:55:37 +0100
From:      Tom Jones <jones@sdf.org>
To:        freebsd-arm@freebsd.org
Subject:   Re: help with coding a loadable kernel module
Message-ID:  <20150417095536.GA38091@gmail.com>
In-Reply-To: <9B835088-661C-456E-84A7-47BC1835C0CB@cs.huji.ac.il>
References:  <EDB591F5-E056-4E53-9ED2-2A2E571F319C@cs.huji.ac.il> <20150417080839.GO2743@home.opsec.eu> <9B835088-661C-456E-84A7-47BC1835C0CB@cs.huji.ac.il>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Apr 17, 2015 at 12:15:33PM +0300, Daniel Braniss wrote:
> 
> > On Apr 17, 2015, at 11:08 AM, Kurt Jaeger <lists@opsec.eu> wrote:
> > 
> > Hi!
> > 
> >> I know I'm embarking on a dangerous trip, but I want to use a Raspberry Pi
> >> and or a BeagleBone to read (and write) RFID cards.
> >> Since a driver is needed to use the spibus, I have 2 options while
> >> developing:
> > [...]
> >> So before I give up on option 2, is there some examples/help?
> > 
> > Are you aware of this book ?
> > 
> > http://www.nostarch.com/bsddrivers.htm <http://www.nostarch.com/bsddrivers.htm>;
> 
> no, but before I spend more money (this is getting expensive :-),
> does it explain how to write a loadable module that needs to to talk
> to a spibus? 

I don't think it does.

spibus is very simple, there is one interface call

SPIBUS_TRANSFER(device_t, device_t, strcut spi_command);

struct spi_command {
	void	*tx_cmd;
	uint32_t tx_cmd_sz;
	void	*rx_cmd;
	uint32_t rx_cmd_sz;
	void	*tx_data;
	uint32_t tx_data_sz;
	void	*rx_data;
	uint32_t rx_data_sz;
};

The rx and tx buffers need to be the same size.

I there isn't an interface for configuring spibuses, the bcm2835_spi driver
uses sysctl's directly to set clock speed and other configuration. I imagine
the other drivers are similar or don't offer config.

I can also assume you have hardware for the rfid. If not you might be able to
find a reader that is supported by libnfc[1] which supports the rfid tags you
need to use.

[0]: svnweb.freebsd.org/base/head/sys/dev/spibus
[1]: nfc-tools.org

-- 
Tom
@adventureloop
adventurist.me

#pragma summon cthulhu
:wq



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150417095536.GA38091>