All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: Arnaud Pouliquen <arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
Cc: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	Hartmut Knaack <knaack.h-Mmb7MZpHnFY@public.gmane.org>,
	Lars-Peter Clausen <lars-Qo5EllUWu/uELgA04lAiVw@public.gmane.org>,
	Peter Meerwald-Stadler
	<pmeerw-jW+XmwGofnusTnJN9+BGXg@public.gmane.org>,
	Jaroslav Kysela <perex-/Fr2/VpizcU@public.gmane.org>,
	Takashi Iwai <tiwai-IBi9RG/b67k@public.gmane.org>,
	Liam Girdwood <lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Mark Brown <broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	linux-iio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org,
	Maxime Coquelin
	<mcoquelin.stm32-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Alexandre Torgue <alexandre.torgue-qxv4g6HH51o@public.gmane.org>
Subject: Re: [PATCH v4 02/12] docs: driver-api: add iio hw consumer section
Date: Sun, 19 Nov 2017 12:31:15 +0000	[thread overview]
Message-ID: <20171119123115.06eb6d63@archlinux> (raw)
In-Reply-To: <1510222354-15290-3-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>

On Thu, 9 Nov 2017 11:12:24 +0100
Arnaud Pouliquen <arnaud.pouliquen-qxv4g6HH51o@public.gmane.org> wrote:

> This adds a section about the Hardware consumer
> Api of the IIO subsystem to the driver API
> documentation.
> 
> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>

Good little bit of docs.  A couple of minor formatting
comments inline.

Jonathan

> ---
>  Documentation/driver-api/iio/hw-consumer.rst | 50 ++++++++++++++++++++++++++++
>  Documentation/driver-api/iio/index.rst       |  1 +
>  2 files changed, 51 insertions(+)
>  create mode 100644 Documentation/driver-api/iio/hw-consumer.rst
> 
> diff --git a/Documentation/driver-api/iio/hw-consumer.rst b/Documentation/driver-api/iio/hw-consumer.rst
> new file mode 100644
> index 0000000..b777133
> --- /dev/null
> +++ b/Documentation/driver-api/iio/hw-consumer.rst
> @@ -0,0 +1,50 @@
> +===========
> +HW consumer
> +===========
> +An IIO device can be directly connected to another device in hardware. in this
> +case the buffers between IIO provider and IIO consumer are handled by hardware.
> +The Industrial I/O hw consumer offers a way to bond these IIO devices without
> +software buffer for data. The implementation can be found under
> +:file:`drivers/iio/buffer/hw-consumer.c`
> +
> +
> +* struct :c:type:`iio_hw_consumer` — Hardware consumer structure
> +* :c:func:`iio_hw_consumer_alloc` — Allocate IIO hardware consumer
> +* :c:func:`iio_hw_consumer_free` — Free IIO hardware consumer
> +* :c:func:`iio_hw_consumer_enable` — Enable IIO hardware consumer
> +* :c:func:`iio_hw_consumer_disable` — Disable IIO hardware consumer
> +
> +
> +HW consumer setup
> +=================
> +
> +As standard IIO device the implementation is based on IIO provider/consumer.
> +A typical IIO Hw conumer setup looks like this::

HW

> +
> +	static struct iio_hw_consumer *hwc;
> +
> +	static const struct iio_info adc_info = {
> +		.read_raw = adc_read_raw,
> +	};
> +
> +	static int adc_read_raw(struct iio_dev *indio_dev,
> +				struct iio_chan_spec const *chan, int *val,
> +				int *val2, long mask)
> +	{
> +		ret = iio_hw_consumer_enable(hwc);
> +
> +		/* Acquire data */

Blank line here to make it clear the Acquire data doesn't apply to
the line below but is representing a missing block.

> +		ret = iio_hw_consumer_disable(hwc);
> +	}
> +
> +	static int adc_probe(struct platform_device *pdev)
> +	{
> +		hwc = devm_iio_hw_consumer_alloc(&iio->dev);
> +	}
> +
> +More details
> +============
> +.. kernel-doc:: include/linux/iio/hw-consumer.h
> +.. kernel-doc:: drivers/iio/buffer/industrialio-hw-consumer.c
> +   :export:
> +
> diff --git a/Documentation/driver-api/iio/index.rst b/Documentation/driver-api/iio/index.rst
> index e5c3922..7fba341 100644
> --- a/Documentation/driver-api/iio/index.rst
> +++ b/Documentation/driver-api/iio/index.rst
> @@ -15,3 +15,4 @@ Contents:
>     buffers
>     triggers
>     triggered-buffers
> +   hw-consumer

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <jic23@kernel.org>
To: Arnaud Pouliquen <arnaud.pouliquen@st.com>
Cc: Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Hartmut Knaack <knaack.h@gmx.de>,
	Lars-Peter Clausen <lars@metafoo.de>,
	Peter Meerwald-Stadler <pmeerw@pmeerw.net>,
	Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>, <devicetree@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-iio@vger.kernel.org>, <alsa-devel@alsa-project.org>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@st.com>
Subject: Re: [PATCH v4 02/12] docs: driver-api: add iio hw consumer section
Date: Sun, 19 Nov 2017 12:31:15 +0000	[thread overview]
Message-ID: <20171119123115.06eb6d63@archlinux> (raw)
In-Reply-To: <1510222354-15290-3-git-send-email-arnaud.pouliquen@st.com>

On Thu, 9 Nov 2017 11:12:24 +0100
Arnaud Pouliquen <arnaud.pouliquen@st.com> wrote:

> This adds a section about the Hardware consumer
> Api of the IIO subsystem to the driver API
> documentation.
> 
> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>

Good little bit of docs.  A couple of minor formatting
comments inline.

Jonathan

> ---
>  Documentation/driver-api/iio/hw-consumer.rst | 50 ++++++++++++++++++++++++++++
>  Documentation/driver-api/iio/index.rst       |  1 +
>  2 files changed, 51 insertions(+)
>  create mode 100644 Documentation/driver-api/iio/hw-consumer.rst
> 
> diff --git a/Documentation/driver-api/iio/hw-consumer.rst b/Documentation/driver-api/iio/hw-consumer.rst
> new file mode 100644
> index 0000000..b777133
> --- /dev/null
> +++ b/Documentation/driver-api/iio/hw-consumer.rst
> @@ -0,0 +1,50 @@
> +===========
> +HW consumer
> +===========
> +An IIO device can be directly connected to another device in hardware. in this
> +case the buffers between IIO provider and IIO consumer are handled by hardware.
> +The Industrial I/O hw consumer offers a way to bond these IIO devices without
> +software buffer for data. The implementation can be found under
> +:file:`drivers/iio/buffer/hw-consumer.c`
> +
> +
> +* struct :c:type:`iio_hw_consumer` — Hardware consumer structure
> +* :c:func:`iio_hw_consumer_alloc` — Allocate IIO hardware consumer
> +* :c:func:`iio_hw_consumer_free` — Free IIO hardware consumer
> +* :c:func:`iio_hw_consumer_enable` — Enable IIO hardware consumer
> +* :c:func:`iio_hw_consumer_disable` — Disable IIO hardware consumer
> +
> +
> +HW consumer setup
> +=================
> +
> +As standard IIO device the implementation is based on IIO provider/consumer.
> +A typical IIO Hw conumer setup looks like this::

HW

> +
> +	static struct iio_hw_consumer *hwc;
> +
> +	static const struct iio_info adc_info = {
> +		.read_raw = adc_read_raw,
> +	};
> +
> +	static int adc_read_raw(struct iio_dev *indio_dev,
> +				struct iio_chan_spec const *chan, int *val,
> +				int *val2, long mask)
> +	{
> +		ret = iio_hw_consumer_enable(hwc);
> +
> +		/* Acquire data */

Blank line here to make it clear the Acquire data doesn't apply to
the line below but is representing a missing block.

> +		ret = iio_hw_consumer_disable(hwc);
> +	}
> +
> +	static int adc_probe(struct platform_device *pdev)
> +	{
> +		hwc = devm_iio_hw_consumer_alloc(&iio->dev);
> +	}
> +
> +More details
> +============
> +.. kernel-doc:: include/linux/iio/hw-consumer.h
> +.. kernel-doc:: drivers/iio/buffer/industrialio-hw-consumer.c
> +   :export:
> +
> diff --git a/Documentation/driver-api/iio/index.rst b/Documentation/driver-api/iio/index.rst
> index e5c3922..7fba341 100644
> --- a/Documentation/driver-api/iio/index.rst
> +++ b/Documentation/driver-api/iio/index.rst
> @@ -15,3 +15,4 @@ Contents:
>     buffers
>     triggers
>     triggered-buffers
> +   hw-consumer


WARNING: multiple messages have this Message-ID (diff)
From: jic23@kernel.org (Jonathan Cameron)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 02/12] docs: driver-api: add iio hw consumer section
Date: Sun, 19 Nov 2017 12:31:15 +0000	[thread overview]
Message-ID: <20171119123115.06eb6d63@archlinux> (raw)
In-Reply-To: <1510222354-15290-3-git-send-email-arnaud.pouliquen@st.com>

On Thu, 9 Nov 2017 11:12:24 +0100
Arnaud Pouliquen <arnaud.pouliquen@st.com> wrote:

> This adds a section about the Hardware consumer
> Api of the IIO subsystem to the driver API
> documentation.
> 
> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>

Good little bit of docs.  A couple of minor formatting
comments inline.

Jonathan

> ---
>  Documentation/driver-api/iio/hw-consumer.rst | 50 ++++++++++++++++++++++++++++
>  Documentation/driver-api/iio/index.rst       |  1 +
>  2 files changed, 51 insertions(+)
>  create mode 100644 Documentation/driver-api/iio/hw-consumer.rst
> 
> diff --git a/Documentation/driver-api/iio/hw-consumer.rst b/Documentation/driver-api/iio/hw-consumer.rst
> new file mode 100644
> index 0000000..b777133
> --- /dev/null
> +++ b/Documentation/driver-api/iio/hw-consumer.rst
> @@ -0,0 +1,50 @@
> +===========
> +HW consumer
> +===========
> +An IIO device can be directly connected to another device in hardware. in this
> +case the buffers between IIO provider and IIO consumer are handled by hardware.
> +The Industrial I/O hw consumer offers a way to bond these IIO devices without
> +software buffer for data. The implementation can be found under
> +:file:`drivers/iio/buffer/hw-consumer.c`
> +
> +
> +* struct :c:type:`iio_hw_consumer` ? Hardware consumer structure
> +* :c:func:`iio_hw_consumer_alloc` ? Allocate IIO hardware consumer
> +* :c:func:`iio_hw_consumer_free` ? Free IIO hardware consumer
> +* :c:func:`iio_hw_consumer_enable` ? Enable IIO hardware consumer
> +* :c:func:`iio_hw_consumer_disable` ? Disable IIO hardware consumer
> +
> +
> +HW consumer setup
> +=================
> +
> +As standard IIO device the implementation is based on IIO provider/consumer.
> +A typical IIO Hw conumer setup looks like this::

HW

> +
> +	static struct iio_hw_consumer *hwc;
> +
> +	static const struct iio_info adc_info = {
> +		.read_raw = adc_read_raw,
> +	};
> +
> +	static int adc_read_raw(struct iio_dev *indio_dev,
> +				struct iio_chan_spec const *chan, int *val,
> +				int *val2, long mask)
> +	{
> +		ret = iio_hw_consumer_enable(hwc);
> +
> +		/* Acquire data */

Blank line here to make it clear the Acquire data doesn't apply to
the line below but is representing a missing block.

> +		ret = iio_hw_consumer_disable(hwc);
> +	}
> +
> +	static int adc_probe(struct platform_device *pdev)
> +	{
> +		hwc = devm_iio_hw_consumer_alloc(&iio->dev);
> +	}
> +
> +More details
> +============
> +.. kernel-doc:: include/linux/iio/hw-consumer.h
> +.. kernel-doc:: drivers/iio/buffer/industrialio-hw-consumer.c
> +   :export:
> +
> diff --git a/Documentation/driver-api/iio/index.rst b/Documentation/driver-api/iio/index.rst
> index e5c3922..7fba341 100644
> --- a/Documentation/driver-api/iio/index.rst
> +++ b/Documentation/driver-api/iio/index.rst
> @@ -15,3 +15,4 @@ Contents:
>     buffers
>     triggers
>     triggered-buffers
> +   hw-consumer

  parent reply	other threads:[~2017-11-19 12:31 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-09 10:12 [PATCH v4 00/12] Add STM32 DFSDM support Arnaud Pouliquen
2017-11-09 10:12 ` Arnaud Pouliquen
2017-11-09 10:12 ` Arnaud Pouliquen
2017-11-09 10:12 ` [PATCH v4 01/12] iio: Add hardware consumer buffer support Arnaud Pouliquen
2017-11-09 10:12   ` Arnaud Pouliquen
2017-11-09 10:12   ` Arnaud Pouliquen
     [not found]   ` <1510222354-15290-2-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-19 12:32     ` Jonathan Cameron
2017-11-19 12:32       ` Jonathan Cameron
2017-11-19 12:32       ` Jonathan Cameron
2017-11-09 10:12 ` [PATCH v4 02/12] docs: driver-api: add iio hw consumer section Arnaud Pouliquen
2017-11-09 10:12   ` Arnaud Pouliquen
2017-11-09 10:12   ` Arnaud Pouliquen
     [not found]   ` <1510222354-15290-3-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-19 12:31     ` Jonathan Cameron [this message]
2017-11-19 12:31       ` Jonathan Cameron
2017-11-19 12:31       ` Jonathan Cameron
2017-11-09 10:12 ` [PATCH v4 04/12] IIO: Add DT bindings for sigma delta adc modulator Arnaud Pouliquen
2017-11-09 10:12   ` Arnaud Pouliquen
2017-11-09 10:12   ` Arnaud Pouliquen
     [not found]   ` <1510222354-15290-5-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2018-01-10 11:13     ` Applied "IIO: Add DT bindings for sigma delta adc modulator" to the asoc tree Mark Brown
2018-01-10 11:13       ` Mark Brown
2018-01-10 11:13       ` Mark Brown
2017-11-09 10:12 ` [PATCH v4 05/12] IIO: ADC: add sigma delta modulator support Arnaud Pouliquen
2017-11-09 10:12   ` Arnaud Pouliquen
2017-11-09 10:12   ` Arnaud Pouliquen
     [not found]   ` <1510222354-15290-6-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-19 12:44     ` Jonathan Cameron
2017-11-19 12:44       ` Jonathan Cameron
2017-11-19 12:44       ` Jonathan Cameron
     [not found] ` <1510222354-15290-1-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-09 10:12   ` [PATCH v4 03/12] IIO: hw_consumer: add devm_iio_hw_consumer_alloc Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
     [not found]     ` <1510222354-15290-4-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-19 12:34       ` Jonathan Cameron
2017-11-19 12:34         ` Jonathan Cameron
2017-11-19 12:34         ` Jonathan Cameron
2017-11-24 14:48         ` Arnaud Pouliquen
2017-11-24 14:48           ` Arnaud Pouliquen
2017-11-24 14:48           ` Arnaud Pouliquen
2017-11-09 10:12   ` [PATCH v4 06/12] IIO: add DT bindings for stm32 DFSDM filter Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
     [not found]     ` <1510222354-15290-7-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-10 21:05       ` Rob Herring
2017-11-10 21:05         ` Rob Herring
2017-11-10 21:05         ` Rob Herring
2017-11-09 10:12   ` [PATCH v4 07/12] IIO: ADC: add stm32 DFSDM core support Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
     [not found]     ` <1510222354-15290-8-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-19 12:54       ` Jonathan Cameron
2017-11-19 12:54         ` Jonathan Cameron
2017-11-19 12:54         ` Jonathan Cameron
2017-11-09 10:12   ` [PATCH v4 08/12] IIO: ADC: add STM32 DFSDM sigma delta ADC support Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
     [not found]     ` <1510222354-15290-9-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-19 14:29       ` Jonathan Cameron
2017-11-19 14:29         ` Jonathan Cameron
2017-11-19 14:29         ` Jonathan Cameron
2017-11-24 14:49         ` Arnaud Pouliquen
2017-11-24 14:49           ` Arnaud Pouliquen
2017-11-24 14:49           ` Arnaud Pouliquen
2017-11-09 10:12   ` [PATCH v4 09/12] IIO: ADC: add stm32 DFSDM support for PDM microphone Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
     [not found]     ` <1510222354-15290-10-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-19 14:18       ` Jonathan Cameron
2017-11-19 14:18         ` Jonathan Cameron
2017-11-19 14:18         ` Jonathan Cameron
2017-11-24 14:52         ` Arnaud Pouliquen
2017-11-24 14:52           ` Arnaud Pouliquen
2017-11-24 14:52           ` Arnaud Pouliquen
     [not found]           ` <4362763f-2182-a3cf-cbd6-6c71df59af52-qxv4g6HH51o@public.gmane.org>
2017-11-25 14:36             ` Jonathan Cameron
2017-11-25 14:36               ` Jonathan Cameron
2017-11-25 14:36               ` Jonathan Cameron
2017-11-09 10:12   ` [PATCH v4 10/12] IIO: consumer: allow to set buffer sizes Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
     [not found]     ` <1510222354-15290-11-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-19 14:19       ` Jonathan Cameron
2017-11-19 14:19         ` Jonathan Cameron
2017-11-19 14:19         ` Jonathan Cameron
2017-11-09 10:12   ` [PATCH v4 11/12] ASoC: add bindings for stm32 DFSDM filter Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
     [not found]     ` <1510222354-15290-12-git-send-email-arnaud.pouliquen-qxv4g6HH51o@public.gmane.org>
2017-11-15 15:43       ` Rob Herring
2017-11-15 15:43         ` Rob Herring
2017-11-15 15:43         ` Rob Herring
2017-11-16 10:53         ` Arnaud Pouliquen
2017-11-16 10:53           ` Arnaud Pouliquen
2017-11-16 10:53           ` Arnaud Pouliquen
2017-11-09 10:12   ` [PATCH v4 12/12] ASoC: stm32: add DFSDM DAI support Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen
2017-11-09 10:12     ` Arnaud Pouliquen

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=20171119123115.06eb6d63@archlinux \
    --to=jic23-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
    --cc=alexandre.torgue-qxv4g6HH51o@public.gmane.org \
    --cc=alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org \
    --cc=arnaud.pouliquen-qxv4g6HH51o@public.gmane.org \
    --cc=broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=knaack.h-Mmb7MZpHnFY@public.gmane.org \
    --cc=lars-Qo5EllUWu/uELgA04lAiVw@public.gmane.org \
    --cc=lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-iio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
    --cc=mcoquelin.stm32-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=perex-/Fr2/VpizcU@public.gmane.org \
    --cc=pmeerw-jW+XmwGofnusTnJN9+BGXg@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=tiwai-IBi9RG/b67k@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.