Subject: Re: [PATCH net-next 3/5] r8152: add MCU typed read/write functions

From: Marek Behún <[email-masked]>
Date: Fri, 6 Nov 2020 07:39:47 +0100

On Fri, 6 Nov 2020 03:01:22 +0000
Hayes Wang <[email-masked]> wrote:

> Vladimir Oltean <[email-masked]>
> > Sent: Thursday, November 5, 2020 6:57 PM
> > On Thu, Nov 05, 2020 at 10:54:18AM +0100, Marek Behún wrote:  
> > > I thought that static inline functions are preferred to macros, since
> > > compiler warns better if they are used incorrectly...  
> > 
> > Citation needed. Also, how do static inline functions wrapped in macros
> > (i.e. your patch) stack up against your claim about better warnings?
> > I guess ease of maintainership should prevail here, and Hayes should
> > have the final word. I don't really have any stake here.  
> 
> I agree with Vladimir Oltean.
> 
> I prefer to the way of easy maintaining.
> I don't understand the advantage which you discuss.
> However, if I am not familiar with the code, this patch
> would let me take more time to find out the declarations
> of these functions. This make it harder to trace the code.

Hi Hayes,

just to be clear:
Are you against defining these functions via macros?
If so, I can simply rewrite this so that it does not use macros...

Or are you against implementing these functions themselves? Should I
abandon this at all?

BTW, what about patch 5/5 which introduces *_modify helpers?
Patch 5/5 simplifies the driver a lot, IMO, changing this

  ocp_data = usb_ocp_read_word(tp, USB_PM_CTRL_STATUS);
  ocp_data &= ~RESUME_INDICATE;
  usb_ocp_write_word(tp, USB_PM_CTRL_STATUS, ocp_data);

into this

  usb_ocp_modify_word(tp, USB_PM_CTRL_STATUS, RESUME_INDICATE, 0);

Marek