Re: [PATCH v1] hw_random: npcm: modify readl to readb

2020-10-02 Thread Herbert Xu
On Thu, Sep 24, 2020 at 12:23:05AM +0300, Tomer Maimon wrote:
> Modify the read size to the correct HW random
> registers size, 8bit.
> The incorrect read size caused and faulty
> HW random value.
> 
> Signed-off-by: Tomer Maimon 
> ---
>  drivers/char/hw_random/npcm-rng.c | 14 +++---
>  1 file changed, 7 insertions(+), 7 deletions(-)

Patch applied.  Thanks.
-- 
Email: Herbert Xu 
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt


[PATCH v1] hw_random: npcm: modify readl to readb

2020-09-23 Thread Tomer Maimon
Modify the read size to the correct HW random
registers size, 8bit.
The incorrect read size caused and faulty
HW random value.

Signed-off-by: Tomer Maimon 
---
 drivers/char/hw_random/npcm-rng.c | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/char/hw_random/npcm-rng.c 
b/drivers/char/hw_random/npcm-rng.c
index 5d0d13f891b7..1ec5f267a656 100644
--- a/drivers/char/hw_random/npcm-rng.c
+++ b/drivers/char/hw_random/npcm-rng.c
@@ -58,24 +58,24 @@ static int npcm_rng_read(struct hwrng *rng, void *buf, 
size_t max, bool wait)
 
pm_runtime_get_sync((struct device *)priv->rng.priv);
 
-   while (max >= sizeof(u32)) {
+   while (max) {
if (wait) {
-   if (readl_poll_timeout(priv->base + NPCM_RNGCS_REG,
+   if (readb_poll_timeout(priv->base + NPCM_RNGCS_REG,
   ready,
   ready & NPCM_RNG_DATA_VALID,
   NPCM_RNG_POLL_USEC,
   NPCM_RNG_TIMEOUT_USEC))
break;
} else {
-   if ((readl(priv->base + NPCM_RNGCS_REG) &
+   if ((readb(priv->base + NPCM_RNGCS_REG) &
NPCM_RNG_DATA_VALID) == 0)
break;
}
 
-   *(u32 *)buf = readl(priv->base + NPCM_RNGD_REG);
-   retval += sizeof(u32);
-   buf += sizeof(u32);
-   max -= sizeof(u32);
+   *(u8 *)buf = readb(priv->base + NPCM_RNGD_REG);
+   retval++;
+   buf++;
+   max--;
}
 
pm_runtime_mark_last_busy((struct device *)priv->rng.priv);
-- 
2.22.0