From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: linux-acpi@vger.kernel.org, rafael@kernel.org,
linux-media@vger.kernel.org, heikki.krogerus@linux.intel.com
Subject: Re: [PATCH 4/8] ACPI: property: Generate camera swnodes for ACPI and DisCo for Imaging
Date: Thu, 19 Jan 2023 17:44:55 +0200 [thread overview]
Message-ID: <Y8lld1G0qN4qbCUe@smile.fi.intel.com> (raw)
In-Reply-To: <Y8lb1BIh7+4x9hFc@paasikivi.fi.intel.com>
On Thu, Jan 19, 2023 at 03:03:48PM +0000, Sakari Ailus wrote:
> On Tue, Jan 17, 2023 at 04:59:18PM +0200, Andy Shevchenko wrote:
> > On Tue, Jan 17, 2023 at 02:22:40PM +0200, Sakari Ailus wrote:
...
> > > +#define GRAPH_PORT_NAME(var, num) \
> > > + (snprintf((var), sizeof(var), "port@%u", (num)) > sizeof(var))
> >
> > SWNODE_GRAPH_PORT_NAME_FMT ?
>
> The name is not used anywhere else. I would keep it as-is.
It repeats the same string literal which is the part of the firmware node graph
representation, right? I think you can rename the above mentioned format macro
and use it in your code. We will reduce the possible deviation and amount of
points of error.
...
> > > + static const char mipi_port_prefix[] = "mipi-img-port-";
> >
> > It's harder to read in the code, please put it in place.
>
> There are multiple uses of it. It's better there's a single definition.
Yes and without this definition one read exact value of the property without
too much brain power, now I need to go first to remember the prefix, then
concatenate it without typo in my brain and think about the result.
...
> > > + port->ep_props[NEXT_PROPERTY(*ep_prop_index,
> > > + EP_DATA_LANES)] =
> >
> > It's hard to read, taking into account that you split on index of the array.
> >
> > How much a new monitor costs for you? Maybe I can donate to make you use more
> > than 80 from time to time? :-)
>
> You know newspaper pages are split into multiple columns for a reason,
> similarly web pages with text columns very seldom span the entire page
> width. The number of characters per line tends to be less than --- you
> might be surprised --- 80. The reason is readability.
Surprisingly to you, the newspaper and the limit is for quick reading the
text. The code differs to the SciFi book, for example. And doesn't have
same requirements. Code has different tokenisation which you break when
splitting in the middle of the token. That's why one line is better than
silly 80 characters limit. It _increases_ readability of the *code*.
> > > + PROPERTY_ENTRY_U32_ARRAY_LEN("data-lanes",
> > > + port->data_lanes,
> > > + num_lanes);
Ditto for all other similar cases.
...
> > > + if (!ret)
> >
> > Why not positive conditional?
>
> The success case is handled first.
And in kernel we usually check for error first. Esp. taking into account that
here you have both cases under 'if'.
...
> > > + if (acpi_get_name(device->handle, ACPI_FULL_PATHNAME, &buffer) != AE_OK) {
> >
> > We have ACPI_SUCCESS() / ACPI_FAILURE()
>
> Yes.
Why not using them?
> > > + acpi_handle_warn(acpi_device_handle(device), "cannot get path name\n");
> > > + return;
> > > + }
--
With Best Regards,
Andy Shevchenko
next prev parent reply other threads:[~2023-01-19 15:45 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-17 12:22 [PATCH 0/8] ACPI _CRS CSI-2 and MIPI DisCo for Imaging support Sakari Ailus
2023-01-17 12:22 ` [PATCH 1/8] ACPI: property: Parse data node string references in properties Sakari Ailus
2023-01-17 14:29 ` Andy Shevchenko
2023-01-19 14:03 ` Sakari Ailus
2023-01-17 12:22 ` [PATCH 2/8] ACPI: property: Parse _CRS CSI-2 descriptor Sakari Ailus
2023-01-17 14:34 ` Andy Shevchenko
2023-01-19 14:04 ` Sakari Ailus
2023-01-17 12:22 ` [PATCH 3/8] device property: Add SOFTWARE_NODE() macro for defining software nodes Sakari Ailus
2023-01-17 14:35 ` Andy Shevchenko
2023-01-17 14:37 ` Andy Shevchenko
2023-01-17 14:37 ` Andy Shevchenko
2023-01-17 12:22 ` [PATCH 4/8] ACPI: property: Generate camera swnodes for ACPI and DisCo for Imaging Sakari Ailus
2023-01-17 14:59 ` Andy Shevchenko
2023-01-19 15:03 ` Sakari Ailus
2023-01-19 15:44 ` Andy Shevchenko [this message]
2023-01-23 11:15 ` Sakari Ailus
2023-01-17 12:22 ` [PATCH 5/8] ACPI: property: Dig "rotation" property for devices with CSI2 _CRS Sakari Ailus
2023-01-17 15:22 ` Andy Shevchenko
2023-01-19 15:40 ` Sakari Ailus
2023-01-17 12:22 ` [PATCH 6/8] ACPI: property: Rename parsed MIPI DisCo for Imaging properties Sakari Ailus
2023-01-17 15:27 ` Andy Shevchenko
2023-01-19 15:45 ` Sakari Ailus
2023-01-17 12:22 ` [PATCH 7/8] ACPI: property: Skip MIPI property table without "mipi-img" prefix Sakari Ailus
2023-01-17 15:29 ` Andy Shevchenko
2023-01-19 15:51 ` Sakari Ailus
2023-01-19 16:09 ` Andy Shevchenko
2023-01-19 16:11 ` Andy Shevchenko
2023-01-20 12:07 ` Sakari Ailus
2023-01-20 13:59 ` Andy Shevchenko
2023-01-20 11:58 ` Sakari Ailus
2023-01-20 15:11 ` Andy Shevchenko
2023-01-20 22:34 ` Sakari Ailus
2023-01-17 12:22 ` [PATCH 8/8] ACPI: property: Document _CRS CSI-2 and DisCo for Imaging support Sakari Ailus
2023-01-17 15:32 ` Andy Shevchenko
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=Y8lld1G0qN4qbCUe@smile.fi.intel.com \
--to=andriy.shevchenko@linux.intel.com \
--cc=heikki.krogerus@linux.intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=rafael@kernel.org \
--cc=sakari.ailus@linux.intel.com \
/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