public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <gregkh@linuxfoundation.org>
To: Marcus Wolf <linux@wolf-entwicklungen.de>
Cc: grant.likely@linaro.org, robh+dt@kernel.org,
	linux-kernel@vger.kernel.org, devel@driverdev.osuosl.org,
	devicetree@vger.kernel.org
Subject: Re: Submit of a driver for Pi433 - a radio module for Raspberry Pi
Date: Wed, 12 Jul 2017 09:43:05 +0200	[thread overview]
Message-ID: <20170712074305.GA20198@kroah.com> (raw)
In-Reply-To: <281067739.16216.1499788929736@ox.hosteurope.de>

On Tue, Jul 11, 2017 at 06:02:09PM +0200, Marcus Wolf wrote:
> Hi folks,
> 
> I developed a radio shield for the 433MHz ISM band [0] for the Raspberry Pi.
> This shield is called Pi433 [1]. It can be used to communicate between two
> Raspberries or to control third party equipment e. g. cheap radio sockets [2].
> The base of this radio shield is a radio module from HopeRf - a rfm69cw-433s2.
>  
> In the beginning, I conrolled the rf69 chip by direct access via SPI, but I
> figured out, that several tasks were hard to handle. Especially the following
> points were annoying:
> * Just one process could open the SPI interface so just one process was
>   able to access the module
> * A simultaneous send and receive was very hard to implement
> 
> Therefore I started to implement a driver.
> The drivers features:
> * simple access/nice abstraction of spi registers via open, close,
>   read, write and ioctl
> * multiple applications can open
> * tx requests are queued, so every app can send a tx request at any time
> * first app asking for rx will block other apps, also asking for rx until one
> rx
>   cycle is complete
> * rx cycle means listening on the air until something appears
> * if an app wants to tx during the driver is waiting in rx cycle, rx will be
>   shortly interrupted to do the tx task
> * for each tx task a seperate configuration of the rf chip (bitrate,
> modulation, ...)
>   can be chosen
> * wrtten in modular architecture, allowing to extend for other products with
>   rf69 chip (e.g. rfm69hcw, ...) or even to support other HopeRf chips with
> similar
>   interface (e. g. rfm12, rfm95, ...)
>  
> In principle the driver was intended to be used by my project (Smarthome-Pi),
> only.
> But while having all this nice features, I was asked, whether I could offer the
> driver to the community. I never did that before, so I started reading about
> submitting drivers and figured out, that there is a lot of work to do, to meet
> all
> concepts and ideas of complying to kernel code. I spend some days and modified
> a lot, but still, a lot of things aren't perfect.
> Already known tasks are:
> 
> * coding style does not fully comply with the kernel style guide.
> * still TODOs, annotated in the code
> * currently the code introduces new IOCTLs. I'm afraid this is a bad idea.
>   Replace this with another interface, hints are welcome!
>  
> I tested the patch on Raspbian with Kernel v4.12 and applied the patch on
> mainline Linux v4.12
>  
> Is it posibble to integrate into the staging area to ease further development?

Sure, I'm always glad to take new drivers, but can you submit it as just
a single patch, and keep it self-contained (i.e. nothing outside of
drivers/staging/YOUR_DRIVER/)?

thanks,

greg k-h

       reply	other threads:[~2017-07-12  7:43 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <281067739.16216.1499788929736@ox.hosteurope.de>
2017-07-12  7:43 ` Greg KH [this message]
     [not found]   ` <197075499.65628.1500117344413@ox.hosteurope.de>
2017-07-15 11:24     ` Submit of a driver for Pi433 - a radio module for Raspberry Pi Greg KH
2017-07-15 12:59       ` Marcus Wolf
2017-07-15 13:02         ` Greg KH
2017-07-15 13:10           ` Marcus Wolf
2017-07-15 13:16             ` Greg KH
     [not found]               ` <1152815224.66246.1500126030682@ox.hosteurope.de>
2017-07-15 13:47                 ` Greg KH
2017-07-15 17:05                   ` Wolf Entwicklungen
2017-07-16  6:45                     ` Greg KH
2017-07-16  9:52                       ` [PATCH 1/1] drivers/staging/pi433: New driver Wolf Entwicklungen
2017-07-16 10:15                         ` Greg KH
2017-07-16 13:53                           ` Marcus Wolf
2017-07-16 14:47                             ` Greg KH
2017-07-17  6:18                         ` kbuild test robot
2017-07-17 13:26                         ` kbuild test robot
2017-07-20 11:23                           ` Marcus Wolf
2017-07-20 11:31                             ` Greg KH
2017-07-20 11:37                             ` Dan Carpenter
2017-07-20 12:27                               ` Geert Uytterhoeven
2017-07-20 15:56                                 ` [PATCH 1/1] staging: pi433: fix problem with division in rf69_set_deviation Marcus Wolf
2017-07-29  0:01                                   ` Greg KH
2017-07-29  8:51                                     ` Marcus Wolf
2017-07-29 22:21                                       ` Greg KH
2017-07-30 15:21                                         ` Marcus Wolf
2017-07-20 15:57                                 ` Test of " Marcus Wolf

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=20170712074305.GA20198@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=devel@driverdev.osuosl.org \
    --cc=devicetree@vger.kernel.org \
    --cc=grant.likely@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@wolf-entwicklungen.de \
    --cc=robh+dt@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