Fix the functions which can be obviously done right with a simple
dev_err() now. While at it, further press the on-stack allocation
of buffer for sprintf() voodoo down into the abominated functions.

This patch cleans up most of the functions and leaves just two
remaining functions, report_ccb_status() and report_deco_status()
ugly and unhappy.

Signed-off-by: Marek Vasut <ma...@denx.de>
Cc: Herbert Xu <herb...@gondor.apana.org.au>
Cc: Horia Geanta <horia.gea...@freescale.com>
---
 drivers/crypto/caam/error.c | 29 +++++++++++++++++------------
 1 file changed, 17 insertions(+), 12 deletions(-)

diff --git a/drivers/crypto/caam/error.c b/drivers/crypto/caam/error.c
index 7ce1d03..a8736abd7 100644
--- a/drivers/crypto/caam/error.c
+++ b/drivers/crypto/caam/error.c
@@ -182,8 +182,10 @@ static void report_jump_idx(u32 status, char *outstr)
 }
 
 static void report_ccb_status(struct device *jrdev, u32 status,
-                             const char *error, char *outstr)
+                             const char *error, char *__outstr)
 {
+       char outstr[CAAM_ERROR_STR_MAX];
+
        u8 cha_id = (status & JRSTA_CCBERR_CHAID_MASK) >>
                    JRSTA_CCBERR_CHAID_SHIFT;
        u8 err_id = status & JRSTA_CCBERR_ERRID_MASK;
@@ -213,18 +215,22 @@ static void report_ccb_status(struct device *jrdev, u32 
status,
                SPRINTFCAT(outstr, "unidentified err_id value 0x%02x",
                           err_id, sizeof("ff"));
        }
+
+       dev_err(jrdev, "%08x: %s\n", status, outstr);
 }
 
 static void report_jump_status(struct device *jrdev, u32 status,
                               const char *error, char *outstr)
 {
-       sprintf(outstr, "%s: ", error);
-       SPRINTFCAT(outstr, "%s() not implemented", __func__, sizeof(__func__));
+       dev_err(jrdev, "%08x: %s: %s() not implemented\n",
+               status, error, __func__);
 }
 
 static void report_deco_status(struct device *jrdev, u32 status,
-                              const char *error, char *outstr)
+                              const char *error, char *__outstr)
 {
+       char outstr[CAAM_ERROR_STR_MAX];
+
        u8 desc_error = status & JRSTA_DECOERR_ERROR_MASK;
        int i;
        sprintf(outstr, "%s: ", error);
@@ -242,25 +248,26 @@ static void report_deco_status(struct device *jrdev, u32 
status,
                SPRINTFCAT(outstr, "unidentified error value 0x%02x",
                           desc_error, sizeof("ff"));
        }
+
+       dev_err(jrdev, "%08x: %s\n", status, outstr);
 }
 
 static void report_jr_status(struct device *jrdev, u32 status,
                             const char *error, char *outstr)
 {
-       sprintf(outstr, "%s: ", error);
-       SPRINTFCAT(outstr, "%s() not implemented", __func__, sizeof(__func__));
+       dev_err(jrdev, "%08x: %s: %s() not implemented\n",
+               status, error, __func__);
 }
 
 static void report_cond_code_status(struct device *jrdev, u32 status,
                                    const char *error, char *outstr)
 {
-       sprintf(outstr, "%s: ", error);
-       SPRINTFCAT(outstr, "%s() not implemented", __func__, sizeof(__func__));
+       dev_err(jrdev, "%08x: %s: %s() not implemented\n",
+               status, error, __func__);
 }
 
 void caam_jr_strstatus(struct device *jrdev, u32 status)
 {
-       char outstr[CAAM_ERROR_STR_MAX];
        static const struct stat_src {
                void (*report_ssed)(struct device *jrdev, u32 status,
                                    const char *error, char *outstr);
@@ -287,8 +294,6 @@ void caam_jr_strstatus(struct device *jrdev, u32 status)
        }
 
        status_src[ssrc].report_ssed(jrdev, status,
-                       status_src[ssrc].error, outstr);
-
-       dev_err(jrdev, "%08x: %s\n", status, outstr);
+                       status_src[ssrc].error, NULL);
 }
 EXPORT_SYMBOL(caam_jr_strstatus);
-- 
1.9.2

--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to