On Sun, Oct 06, 2024 at 03:13:17PM +0800, alice....@oss.nxp.com wrote: > From: Peng Fan <peng....@nxp.com> > > When error happends, dump string is more intuitive. > > Signed-off-by: Peng Fan <peng....@nxp.com> > Signed-off-by: Alice Guo <alice....@nxp.com> > Reviewed-by: Ye Li <ye...@nxp.com> > --- > drivers/firmware/scmi/scmi_agent-uclass.c | 26 +++++++++++++---------- > 1 file changed, 15 insertions(+), 11 deletions(-) > > diff --git a/drivers/firmware/scmi/scmi_agent-uclass.c > b/drivers/firmware/scmi/scmi_agent-uclass.c > index 8c907c3b03..e2d42d2914 100644 > --- a/drivers/firmware/scmi/scmi_agent-uclass.c > +++ b/drivers/firmware/scmi/scmi_agent-uclass.c > @@ -18,23 +18,25 @@ > * struct error_code - Helper structure for SCMI error code conversion > * @scmi: SCMI error code > * @errno: Related standard error number > + * @string: Name the scmi error code > */ > struct error_code { > int scmi; > int errno; > + char *string; > }; > > static const struct error_code scmi_linux_errmap[] = { > - { .scmi = SCMI_NOT_SUPPORTED, .errno = -EOPNOTSUPP, }, > - { .scmi = SCMI_INVALID_PARAMETERS, .errno = -EINVAL, }, > - { .scmi = SCMI_DENIED, .errno = -EACCES, }, > - { .scmi = SCMI_NOT_FOUND, .errno = -ENOENT, }, > - { .scmi = SCMI_OUT_OF_RANGE, .errno = -ERANGE, }, > - { .scmi = SCMI_BUSY, .errno = -EBUSY, }, > - { .scmi = SCMI_COMMS_ERROR, .errno = -ECOMM, }, > - { .scmi = SCMI_GENERIC_ERROR, .errno = -EIO, }, > - { .scmi = SCMI_HARDWARE_ERROR, .errno = -EREMOTEIO, }, > - { .scmi = SCMI_PROTOCOL_ERROR, .errno = -EPROTO, }, > + { .scmi = SCMI_NOT_SUPPORTED, .errno = -EOPNOTSUPP, .string = > "SCMI_NOT_SUPPORTED" }, > + { .scmi = SCMI_INVALID_PARAMETERS, .errno = -EINVAL, .string = > "SCMI_INVALID_PARAMETERS" }, > + { .scmi = SCMI_DENIED, .errno = -EACCES, .string = "SCMI_DENIED" }, > + { .scmi = SCMI_NOT_FOUND, .errno = -ENOENT, .string = > "SCMI_NOT_SUPPORTED" }, > + { .scmi = SCMI_OUT_OF_RANGE, .errno = -ERANGE, .string = > "SCMI_OUT_OF_RANGE" }, > + { .scmi = SCMI_BUSY, .errno = -EBUSY, .string = "SCMI_BUSY" }, > + { .scmi = SCMI_COMMS_ERROR, .errno = -ECOMM, .string = > "SCMI_COMMS_ERROR" }, > + { .scmi = SCMI_GENERIC_ERROR, .errno = -EIO, .string = > "SCMI_GENERIC_ERROR" }, > + { .scmi = SCMI_HARDWARE_ERROR, .errno = -EREMOTEIO, .string = > "SCMI_HARDWARE_ERROR" }, > + { .scmi = SCMI_PROTOCOL_ERROR, .errno = -EPROTO, .string = > "SCMI_PROTOCOL_ERROR" }, > }; > > /** > @@ -163,8 +165,10 @@ int scmi_to_linux_errno(s32 scmi_code) > return 0; > > for (n = 0; n < ARRAY_SIZE(scmi_linux_errmap); n++) > - if (scmi_code == scmi_linux_errmap[n].scmi) > + if (scmi_code == scmi_linux_errmap[n].scmi) { > + debug("errno: %s\n", scmi_linux_errmap[n].string); > return scmi_linux_errmap[n].errno; > + } > > return -EPROTO; > }
This is going to increase the overall binary size with string when we already have a valid errno value to print, please just debug print errno value. -- Tom
signature.asc
Description: PGP signature