mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kieran Bingham <kieran.bingham@ideasonboard.com>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Hardevsinh Palaniya <hardevsinh.palaniya@siliconsignals.io>
Cc: sakari.ailus@linux.intel.com
Subject: Re: [PATCH v5 2/2] media: i2c: add ov2735 image sensor driver
Date: Fri, 25 Jul 2025 15:40:24 +0100	[thread overview]
Message-ID: <175345442477.2567018.13588829522231689027@ping.linuxembedded.co.uk> (raw)
In-Reply-To: <PN3P287MB35190A4AEE4C8D98142E7B6AFF59A@PN3P287MB3519.INDP287.PROD.OUTLOOK.COM>

Quoting Hardevsinh Palaniya (2025-07-25 06:55:23)
<snip>
> > > +static int ov2735_page_access(struct ov2735 *ov2735,
> > > +�������������������������� u32 reg, void *val, int *err, bool is_read)
> > > +{
> > > +���� u8 page = (reg >> CCI_REG_PRIVATE_SHIFT) & 0xff;
> > 
> > ' & 0xff' part is redundant.
> > 
> > > +���� u32 addr = reg & ~CCI_REG_PRIVATE_MASK;
> > > +���� int ret = 0;
> > 
> > How is this assignment being used?
> > 
> > > +���� if (err && *err)
> > > +������������ return *err;
> > > +
> > > +���� mutex_lock(&ov2735->page_lock);
> > > +
> > > +���� /* Perform page access before read/write */
> > > +���� if (ov2735->current_page != page) {
> > > +������������ ret = cci_write(ov2735->cci, OV2735_REG_PAGE_SELECT, page, err);
> > > +������������ if (ret)
> > > +�������������������� goto err_mutex_unlock;
> > > +������������ ov2735->current_page = page;
> > > +���� }
> > > +
> > > +���� if (is_read)
> > > +������������ ret = cci_read(ov2735->cci, addr, (u64 *)val, err);
> > > +���� else
> > > +������������ ret = cci_write(ov2735->cci, addr, *(u64 *)val, err);
> > 
> > Do you really need this castings?
> 
> Do you really think this casting is unnecessary?
> 

Yes? Well quite probably - I haven't checked myself yet but ..


> Please check the definitions of cci_read/write
> 
> without this, we can't even build the driver.

How about ... changing the function prototype of ov2735_page_access ?

Then you might be able to build without casts ?


> > > +err_mutex_unlock:
> > > +���� mutex_unlock(&ov2735->page_lock);
> > > +���� return ret;
> > 
> > Hmm... Wouldn't be cleanup.h helpful here?
> >
> > > +}
> > 
> > ...
> > 
> > > +static int ov2735_write(struct ov2735 *ov2735, u32 reg, u64 val, int *err)
> > > +{
> > > +���� return ov2735_page_access(ov2735, reg, (void *)&val, err, false);
> > 
> > Why casting?
> > 
> > > +}
> > 
> > ...

<snip>

> > > +���� /* Apply format settings. */
> > 
> > > +���� /* Apply customized values from user */
> > 
> > Define a single style for one-line comments and use it everywhere consistently.
> 
> Are you referring to the period at the end of the comment?
>  
> > > +������������ goto error_power_off;
> > 
> > ...
> > 
> > > +���� devm_pm_runtime_set_active_enabled(ov2735->dev);
> > > +���� devm_pm_runtime_get_noresume(ov2735->dev);
> > 
> > No error checks? What's the point to use devm and what will happen if the first
> > fails, for example?
> > 
> > --
> > With Best Regards,
> > Andy Shevchenko
> 
> With all due respect,
> 
> I completely understand and appreciate the need for multiple rounds of review.
> However, where feasible, it would be helpful to receive style-related and 
> non-blocking comments earlier in the review process. Iterating on minor issues
> in later versions, especially ones that could have been addressed together 
> earlier, can become a bit frustrating at times. I hope you can understand this 
> perspective.

I certainly understand that public patch review can be slow and tedious
at times, but please remember that unless you have paid Andy to review
this work, there are no contractual 'requirements' on which bits get
reviewed first. All reviews are helpful, whereever they come in - and
the goal here is to get as many eyes on code as possible to support high
quality code being maintained in the linux kernel.


Perhaps one path to speed this up in the future might be if you might
find some time to read more kernel code and also review some other
kernel patches publicly as well. It might accelerate/help you learn the
linux coding style sooner to avoid some cycles, and provide more eyes
where we need them in the community.

Regards
--
Kieran


> Once again, thank you for your time and effort in helping improve the quality
> of the driver.
> 
> Best Regards,
> Hardev

  reply	other threads:[~2025-07-25 14:40 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-24 10:47 [PATCH v5 0/2] media: i2c: Add ov2735 camera " Hardevsinh Palaniya
2025-07-24 10:47 ` [PATCH v5 1/2] dt-bindings: media: i2c: Add ov2735 sensor Hardevsinh Palaniya
2025-07-24 10:47 ` [PATCH v5 2/2] media: i2c: add ov2735 image sensor driver Hardevsinh Palaniya
2025-07-24 21:17   ` Andy Shevchenko
2025-07-25  5:55     ` Hardevsinh Palaniya
2025-07-25 14:40       ` Kieran Bingham [this message]
2025-07-26  6:06         ` Hardevsinh Palaniya
2025-07-26  9:43           ` Laurent Pinchart
2025-07-26 17:10           ` Kieran Bingham
2025-07-29  6:35       ` Hardevsinh Palaniya

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=175345442477.2567018.13588829522231689027@ping.linuxembedded.co.uk \
    --to=kieran.bingham@ideasonboard.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=hardevsinh.palaniya@siliconsignals.io \
    --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

all inboxes | Powered by JetHome®