[PATCH 07/12] lib: utils: Improve variable declarations in MPXY RPMI mailbox client

Anup Patel apatel at ventanamicro.com
Mon Jan 20 00:37:35 PST 2025


On Mon, Jan 20, 2025 at 4:35 AM Samuel Holland
<samuel.holland at sifive.com> wrote:
>
> On 2025-01-16 9:56 AM, Anup Patel wrote:
> > The local variable declarations should be at the start of function
> > and preferrably organized like a inverted pyramid.
> >
> > Signed-off-by: Anup Patel <apatel at ventanamicro.com>
> > ---
> >  lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c | 31 ++++++++++++-----------------
> >  1 file changed, 13 insertions(+), 18 deletions(-)
> >
> > diff --git a/lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c b/lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c
> > index 26b9e6a6..27f4c571 100644
> > --- a/lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c
> > +++ b/lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c
> > @@ -34,8 +34,8 @@ struct mpxy_rpmi_mbox {
> >  static const struct mpxy_rpmi_service_data *mpxy_find_rpmi_srvid(u32 message_id,
> >                                       const struct mpxy_rpmi_mbox_data *mbox_data)
> >  {
> > -     int mid = 0;
> >       const struct mpxy_rpmi_service_data *srv = mbox_data->service_data;
> > +     int mid = 0;
> >
> >       for (mid = 0; srv[mid].id < mbox_data->num_services; mid++) {
> >               if (srv[mid].id == (u8)message_id)
> > @@ -57,12 +57,10 @@ static int mpxy_mbox_read_attributes(struct sbi_mpxy_channel *channel,
> >                                    u32 *outmem, u32 base_attr_id,
> >                                    u32 attr_count)
> >  {
> > -     u32 end_id;
> >       struct mpxy_rpmi_mbox *rmb =
> >               container_of(channel, struct mpxy_rpmi_mbox, channel);
> >       u32 *attr_array = (u32 *)&rmb->msgprot_attrs;
> > -
> > -     end_id = base_attr_id + attr_count - 1;
> > +     u32 end_id = base_attr_id + attr_count - 1;
> >
> >       if (end_id >= MPXY_MSGPROT_RPMI_ATTR_MAX_ID)
> >               return SBI_EBAD_RANGE;
> > @@ -108,12 +106,11 @@ static int mpxy_mbox_write_attributes(struct sbi_mpxy_channel *channel,
> >                                    u32 *outmem, u32 base_attr_id,
> >                                    u32 attr_count)
> >  {
> > -     int ret, mem_idx;
> > -     u32 end_id, attr_val, idx;
> >       struct mpxy_rpmi_mbox *rmb =
> >               container_of(channel, struct mpxy_rpmi_mbox, channel);
> > -
> > -     end_id = base_attr_id + attr_count - 1;
> > +     u32 end_id = base_attr_id + attr_count - 1;
> > +     u32 attr_val, idx;
> > +     int ret, mem_idx;
> >
> >       if (end_id >= MPXY_MSGPROT_RPMI_ATTR_MAX_ID)
> >               return SBI_EBAD_RANGE;
> > @@ -140,15 +137,15 @@ static int __mpxy_mbox_send_message(struct sbi_mpxy_channel *channel,
> >                                 void *rx, u32 rx_max_len,
> >                                 unsigned long *ack_len)
> >  {
> > -     int ret;
> > -     u32 rx_len = 0;
> > -     struct mbox_xfer xfer;
> > -     struct rpmi_message_args args = {0};
> >       struct mpxy_rpmi_mbox *rmb =
> >               container_of(channel, struct mpxy_rpmi_mbox, channel);
> >       const struct mpxy_rpmi_mbox_data *data = rmb->mbox_data;
> >       const struct mpxy_rpmi_service_data *srv =
> >               mpxy_find_rpmi_srvid(message_id, data);
> > +     struct rpmi_message_args args = {0};
> > +     struct mbox_xfer xfer;
> > +     u32 rx_len = 0;
> > +     int ret;
> >
> >       if (!srv)
> >               return SBI_ENOTSUPP;
> > @@ -215,12 +212,12 @@ static int mpxy_mbox_send_message_withoutresp(struct sbi_mpxy_channel *channel,
> >
> >  int mpxy_rpmi_mbox_init(const void *fdt, int nodeoff, const struct fdt_match *match)
> >  {
> > -     int rc, len;
> > +     const struct mpxy_rpmi_mbox_data *data = match->data;
> > +     struct mpxy_rpmi_mbox *rmb;
> > +     struct mbox_chan *chan;
> >       const fdt32_t *val;
> >       u32 channel_id;
> > -     struct mbox_chan *chan;
> > -     struct mpxy_rpmi_mbox *rmb;
> > -     const struct mpxy_rpmi_mbox_data *data = match->data;
> > +     int rc, len;
> >
> >       /* Allocate context for RPXY mbox client */
> >       rmb = sbi_zalloc(sizeof(*rmb));
> > @@ -270,8 +267,6 @@ int mpxy_rpmi_mbox_init(const void *fdt, int nodeoff, const struct fdt_match *ma
> >                                       mpxy_mbox_send_message_withresp;
> >       rmb->channel.send_message_without_response =
> >                                       mpxy_mbox_send_message_withoutresp;
> > -     /* No callback to switch events state data */
> > -     rmb->channel.switch_eventsstate = NULL;
>
> Does this belong as part of the previous patch? Either way:

Yes, this change should be part of the previous patch. I will update.

>
> Reviewed-by: Samuel Holland <samuel.holland at sifive.com>
>
> >
> >       /* RPMI Message Protocol ID */
> >       rmb->channel.attrs.msg_proto_id = SBI_MPXY_MSGPROTO_RPMI_ID;
>

Regards,
Anup



More information about the opensbi mailing list