diff options
author | Benjamin Herrenschmidt | 2018-06-12 15:19:09 +1000 |
---|---|---|
committer | Benjamin Herrenschmidt | 2018-06-18 14:33:56 +1000 |
commit | 5a3c2f7656d0332eca310c74fb3641da0e45df17 (patch) | |
tree | 1ee46412a13b20d9f9214fffcd47a9952a004deb /drivers/fsi | |
parent | bd21336457922280ac0eccdb3aeec14a5bf1391b (diff) |
fsi: scom: Fixup endian annotations
Use the proper annotated type __be32 and fixup the
accessor used for get_scom()
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Reviewed-by: Eddie James <eajames@linux.vnet.ibm.com>
Diffstat (limited to 'drivers/fsi')
-rw-r--r-- | drivers/fsi/fsi-scom.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/fsi/fsi-scom.c b/drivers/fsi/fsi-scom.c index 8a608db0aa07..6ddfb6021420 100644 --- a/drivers/fsi/fsi-scom.c +++ b/drivers/fsi/fsi-scom.c @@ -51,8 +51,8 @@ static DEFINE_IDA(scom_ida); static int put_scom(struct scom_device *scom_dev, uint64_t value, uint32_t addr) { + __be32 data; int rc; - uint32_t data; mutex_lock(&scom_dev->lock); @@ -79,7 +79,7 @@ static int put_scom(struct scom_device *scom_dev, uint64_t value, static int get_scom(struct scom_device *scom_dev, uint64_t *value, uint32_t addr) { - uint32_t result, data; + __be32 result, data; int rc; @@ -96,14 +96,13 @@ static int get_scom(struct scom_device *scom_dev, uint64_t *value, if (rc) goto bail; - *value |= (uint64_t)cpu_to_be32(result) << 32; + *value |= (uint64_t)be32_to_cpu(result) << 32; rc = fsi_device_read(scom_dev->fsi_dev, SCOM_DATA1_REG, &result, sizeof(uint32_t)); if (rc) goto bail; - *value |= cpu_to_be32(result); - + *value |= be32_to_cpu(result); bail: mutex_unlock(&scom_dev->lock); return rc; |