Re: [PATCH v2 2/3] counter: 104-quad-8: Refactor to buffer states for CMR, IOR, and IDR

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 24, 2023 at 11:35:02AM -0400, William Breathitt Gray wrote:
> There are eight calls to quad8_control_register_update() in 104-quad-8:
> 
>         quad8_control_register_update(priv, priv->idr, id, DISABLE_INDEX_MODE, INDEX_MODE);
>         quad8_control_register_update(priv, priv->cmr, id, mode_cfg, QUADRATURE_MODE);
>         quad8_control_register_update(priv, priv->ior, event_node->channel, flg_pins, FLG_PINS);
>         quad8_control_register_update(priv, priv->idr, channel_id, index_polarity, INDEX_POLARITY);
>         quad8_control_register_update(priv, priv->idr, channel_id, synchronous_mode, INDEX_MODE);
>         quad8_control_register_update(priv, priv->cmr, count->id, count_mode, COUNT_MODE);
>         quad8_control_register_update(priv, priv->ior, count->id, enable, AB_GATE);
>         quad8_control_register_update(priv, priv->ior, count->id, !preset_enable, LOAD_PIN);

I attempted the cross-compiling using an x86-64 system and I was able to
recreate the build error. I tried to isolate the problem line by
commenting out quad8_control_register_update() calls and discover that
this appears to be an inline issue after all: if there are more than six
calls to quad8_control_register_update() are in the code, then the
'__bad_mask' build error occurs.

The build error doesn't occur if I force the inline via __always_inline,
so I'll add that to quad8_control_register_update() to resolve this
issue and submit a v3 patchset later this week.

William Breathitt Gray

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux