2021-12-29 09:47:23

by Paulo Miguel Almeida

[permalink] [raw]
Subject: [PATCH] staging: pi433: add docs to packet_format and tx_start_condition enum

While pi433 driver deals with the nuances of the different possible
config combinations, it's hard (at first) to understand the rationale
for some of the tx/rx-related source code unless you're fairly familiar
with the rf69's inner workings.

This patch documents the expected behaviour and limits of both
packet_format and tx_start_condition enum fields.

Signed-off-by: Paulo Miguel Almeida <[email protected]>
---
drivers/staging/pi433/rf69_enum.h | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

diff --git a/drivers/staging/pi433/rf69_enum.h b/drivers/staging/pi433/rf69_enum.h
index fbf56fcf5fe8..c902916a063d 100644
--- a/drivers/staging/pi433/rf69_enum.h
+++ b/drivers/staging/pi433/rf69_enum.h
@@ -109,13 +109,32 @@ enum fifo_fill_condition {
always
};

+/*
+ * Defines the packet format used.
+ *
+ * In both modes the length of the payload is limited to 255 bytes if AES
+ * is not enabled or 64 bytes otherwise.
+ */
enum packet_format {
+ /*
+ * Used when the size of payload is fixed in advance. This mode of
+ * operation may be of interest to minimize RF overhead by 1 byte as
+ * no length byte field is required
+ */
packet_length_fix,
+ /*
+ * Used when the size of payload isn't known in advance. It requires the
+ * transmitter to send the length byte in each packet so the receiver
+ * would know how to operate properly
+ */
packet_length_var
};

+/* Defines the condition to start packet transmission */
enum tx_start_condition {
+ /* the number of bytes in the FIFO exceeds FIFO_THRESHOLD */
fifo_level,
+ /* at least one byte in the FIFO */
fifo_not_empty
};

--
2.25.4



2021-12-30 10:57:56

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] staging: pi433: add docs to packet_format and tx_start_condition enum

On Wed, Dec 29, 2021 at 10:47:13PM +1300, Paulo Miguel Almeida wrote:
> While pi433 driver deals with the nuances of the different possible
> config combinations, it's hard (at first) to understand the rationale
> for some of the tx/rx-related source code unless you're fairly familiar
> with the rf69's inner workings.
>
> This patch documents the expected behaviour and limits of both
> packet_format and tx_start_condition enum fields.
>
> Signed-off-by: Paulo Miguel Almeida <[email protected]>
> ---
> drivers/staging/pi433/rf69_enum.h | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/drivers/staging/pi433/rf69_enum.h b/drivers/staging/pi433/rf69_enum.h
> index fbf56fcf5fe8..c902916a063d 100644
> --- a/drivers/staging/pi433/rf69_enum.h
> +++ b/drivers/staging/pi433/rf69_enum.h
> @@ -109,13 +109,32 @@ enum fifo_fill_condition {
> always
> };
>
> +/*
> + * Defines the packet format used.

What "Defines"? This is an odd sentence.

> + *
> + * In both modes the length of the payload is limited to 255 bytes if AES
> + * is not enabled or 64 bytes otherwise.

What does this have to do with the format type?

> + */
> enum packet_format {
> + /*
> + * Used when the size of payload is fixed in advance. This mode of
> + * operation may be of interest to minimize RF overhead by 1 byte as
> + * no length byte field is required
> + */
> packet_length_fix,
> + /*
> + * Used when the size of payload isn't known in advance. It requires the
> + * transmitter to send the length byte in each packet so the receiver
> + * would know how to operate properly
> + */
> packet_length_var
> };
>
> +/* Defines the condition to start packet transmission */
> enum tx_start_condition {
> + /* the number of bytes in the FIFO exceeds FIFO_THRESHOLD */
> fifo_level,
> + /* at least one byte in the FIFO */
> fifo_not_empty
> };

Also, always run your patches through scripts/checkpatch.pl before
sending them out. I couldn't take this patch for that reason alone :(

thanks,

greg k-h

2021-12-30 15:53:51

by Paulo Miguel Almeida

[permalink] [raw]
Subject: Re: [PATCH] staging: pi433: add docs to packet_format and tx_start_condition enum

On Thu, Dec 30, 2021 at 11:57:48AM +0100, Greg KH wrote:
> > +/*
> > + * Defines the packet format used.
>
> What "Defines"? This is an odd sentence.

Noted. I will change that.

> > + * In both modes the length of the payload is limited to 255 bytes if AES
> > + * is not enabled or 64 bytes otherwise.
>
> What does this have to do with the format type?
>

The rationale was that I wanted the developer to know straight away how
much info would be possible to transfer given the combination of
encryption + packet_format settings.

But now that you mentioned it, I can see that this info/obs could be
misplaced. I will remove it.

> > + /* at least one byte in the FIFO */
> > fifo_not_empty
> > };
>
> Also, always run your patches through scripts/checkpatch.pl before
> sending them out. I couldn't take this patch for that reason alone :(
>

My apologies, I will be extra careful next time.

thanks,

Paulo A.