Re: [PATCH v4 1/2] ray_cs: Improve card_status[]

From: Joe Perches
Date: Wed Apr 06 2022 - 15:07:15 EST


On Wed, 2022-04-06 at 17:22 +0200, Benjamin Stürz wrote:
> Replace comments with C99's designated initializers to improve
> readability and maintainability.
[]
> diff --git a/drivers/net/wireless/ray_cs.c b/drivers/net/wireless/ray_cs.c
[]
> @@ -2529,20 +2529,23 @@ static void clear_interrupt(ray_dev_t *local)
> #define MAXDATA (PAGE_SIZE - 80)
>
> static const char *card_status[] = {
> - "Card inserted - uninitialized", /* 0 */
> - "Card not downloaded", /* 1 */
> - "Waiting for download parameters", /* 2 */
> - "Card doing acquisition", /* 3 */
> - "Acquisition complete", /* 4 */
> - "Authentication complete", /* 5 */
> - "Association complete", /* 6 */
> - "???", "???", "???", "???", /* 7 8 9 10 undefined */
> - "Card init error", /* 11 */
> - "Download parameters error", /* 12 */
> - "???", /* 13 */
> - "Acquisition failed", /* 14 */
> - "Authentication refused", /* 15 */
> - "Association failed" /* 16 */
> + [CARD_INSERTED] = "Card inserted - uninitialized",
> + [CARD_AWAITING_PARAM] = "Card not downloaded",
> + [CARD_DL_PARAM] = "Waiting for download parameters",
> + [CARD_DOING_ACQ] = "Card doing acquisition",
> + [CARD_ACQ_COMPLETE] = "Acquisition complete",
> + [CARD_AUTH_COMPLETE] = "Authentication complete",
> + [CARD_ASSOC_COMPLETE] = "Association complete",
> + [7] = "???",
> + [8] = "???",
> + [9] = "???",
> + [10] = "???",

Rather than using specific numbers and "???"
it's probably better to use no initialization at all
and change the output call to test the array index
ao all of the [number] = "???" could be removed.

---
drivers/net/wireless/ray_cs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/ray_cs.c b/drivers/net/wireless/ray_cs.c
index 87e98ab068ed..29451cd0a22a 100644
--- a/drivers/net/wireless/ray_cs.c
+++ b/drivers/net/wireless/ray_cs.c
@@ -2600,7 +2600,7 @@ static int ray_cs_proc_show(struct seq_file *m, void *v)
i = 10;
if (i > 16)
i = 10;
- seq_printf(m, "Card status = %s\n", card_status[i]);
+ seq_printf(m, "Card status = %s\n", card_status[i] ?: "???");

seq_printf(m, "Framing mode = %s\n", framing[translate]);