linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: Greg KH <greg@kroah.com>
Cc: linux-iio@vger.kernel.org, lars@metafoo.de,
	Jonathan Cameron <jic23@cam.ac.uk>
Subject: Re: [PATCH 3/5] staging:iio:core add in kernel interface mapping and getting IIO channels.
Date: Sat, 10 Dec 2011 17:08:21 +0000	[thread overview]
Message-ID: <4EE39205.6030109@kernel.org> (raw)
In-Reply-To: <20111208194057.GA28532@kroah.com>

...
> 
>> --- /dev/null
>> +++ b/drivers/staging/iio/inkern.c
>> @@ -0,0 +1,21 @@
>> +/* The industrial I/O core in kernel channel mapping
>> + *
>> + * Copyright (c) 2011 Jonathan Cameron
>> + *
>> + * This program is free software; you can redistribute it and/or modify it
>> + * under the terms of the GNU General Public License version 2 as published by
>> + * the Free Software Foundation.
>> + */
>> +#include "inkern.h"
>> +#include <linux/err.h>
>> +#include <linux/export.h>
>> +
>> +LIST_HEAD(iio_map_list);
>> +EXPORT_SYMBOL_GPL(iio_map_list);
>> +void iio_map_array_register(struct iio_map *map, int nummaps)
>> +{
>> +	int i;
>> +	for (i = 0; i < nummaps; i++)
>> +		list_add(&map[i].l, &iio_map_list);
>> +}
>> +EXPORT_SYMBOL(iio_map_array_register);
> 
> No _GPL here?
oops
> 
> If you have a register function, why do you need to export the list
> symbol as well?  Shouldn't you have accessor functions for the whole
> list?  And what is this list for?

The issue here is where the access functions reside.

The list registration stuff has to be built in (now optionally!) so that
it can be filled from board files if appropriate.

The list is then used by the iio-core in response to requests from
client drivers that want to get data from iio devices.  Short of
supplying access functions that are effectively the equivalent of
the standard list access functions I can't really see how else to
avoid exporting this.

I'd welcome any suggestions on this!

As for the other issues. I've added another kernel symbol (boolean)
as a top level for iio with the core underneath.  That means that
this bit is no longer always built in.   An additional header and
source file now contain the elements that were defined in inkern.h
and implemented in industrialio-core.c (inkern-consumer.h/.c).
Will repost for review once we've addressed this exported list question!

Jonathan

  parent reply	other threads:[~2011-12-10 17:08 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-05 21:55 [PATCH 0/5] staging:iio: inkern pull interfaces for staging tree Jonathan Cameron
2011-12-05 21:56 ` [PATCH 1/5] staging:iio: core: add datasheet_name to chan_spec Jonathan Cameron
2011-12-05 21:56 ` [PATCH 2/5] staging:iio:adc:max1363 add datasheet_name entries Jonathan Cameron
2011-12-05 21:56 ` [PATCH 3/5] staging:iio:core add in kernel interface mapping and getting IIO channels Jonathan Cameron
2011-12-08 19:40   ` Greg KH
2011-12-08 21:05     ` Jonathan Cameron
2011-12-10 17:08     ` Jonathan Cameron [this message]
2011-12-10 19:15       ` Greg KH
2011-12-16  8:50         ` archive
2011-12-16 16:24           ` Greg KH
2011-12-16 19:41             ` Jonathan Cameron
2011-12-16 22:23               ` Greg KH
2011-12-17 15:54                 ` Jonathan Cameron
2011-12-22 17:41                   ` Mark Brown
2011-12-05 21:56 ` [PATCH 4/5] staging:iio: move iio data return types into types.h for use by inkern Jonathan Cameron
2011-12-05 21:56 ` [PATCH 5/5] staging:iio::hwmon interface client driver Jonathan Cameron
  -- strict thread matches above, loose matches on Subject: below --
2011-11-27 13:13 [PATCH 0/5] IIO/staging inkernel pull interface Jonathan Cameron
2011-11-27 13:14 ` [PATCH 3/5] staging:iio:core add in kernel interface mapping and getting IIO channels Jonathan Cameron

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=4EE39205.6030109@kernel.org \
    --to=jic23@kernel.org \
    --cc=greg@kroah.com \
    --cc=jic23@cam.ac.uk \
    --cc=lars@metafoo.de \
    --cc=linux-iio@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).