* [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-02 7:08 ` Liu Gang
0 siblings, 0 replies; 16+ messages in thread
From: Liu Gang @ 2012-03-02 7:08 UTC (permalink / raw)
To: linuxppc-dev, Alexandre.Bounine
Cc: akpm, linux-kernel, r58472, r61911, Liu Gang, Shaohui Xie,
Paul Gortmaker
For the file "arch/powerpc/sysdev/fsl_rmu.c", there will be some compile
errors while using the corenet64_smp_defconfig:
.../fsl_rmu.c:315: error: cast from pointer to integer of different size
.../fsl_rmu.c:320: error: cast to pointer from integer of different size
.../fsl_rmu.c:320: error: cast to pointer from integer of different size
.../fsl_rmu.c:320: error: cast to pointer from integer of different size
.../fsl_rmu.c:330: error: cast to pointer from integer of different size
.../fsl_rmu.c:332: error: cast to pointer from integer of different size
.../fsl_rmu.c:339: error: cast to pointer from integer of different size
.../fsl_rmu.c:340: error: cast to pointer from integer of different size
.../fsl_rmu.c:341: error: cast to pointer from integer of different size
.../fsl_rmu.c:348: error: cast to pointer from integer of different size
.../fsl_rmu.c:348: error: cast to pointer from integer of different size
.../fsl_rmu.c:348: error: cast to pointer from integer of different size
.../fsl_rmu.c:659: error: cast from pointer to integer of different size
.../fsl_rmu.c:659: error: format '%8.8x' expects type 'unsigned int',
but argument 5 has type 'size_t'
.../fsl_rmu.c:985: error: cast from pointer to integer of different size
.../fsl_rmu.c:997: error: cast to pointer from integer of different size
Rewrote the corresponding code with the support of 64bit building.
Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
arch/powerpc/sysdev/fsl_rmu.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
index 1548578..468011e 100644
--- a/arch/powerpc/sysdev/fsl_rmu.c
+++ b/arch/powerpc/sysdev/fsl_rmu.c
@@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
/* XXX Need to check/dispatch until queue empty */
if (dsr & DOORBELL_DSR_DIQI) {
- u32 dmsg =
- (u32) fsl_dbell->dbell_ring.virt +
+ unsigned long dmsg =
+ (unsigned long) fsl_dbell->dbell_ring.virt +
(in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
struct rio_dbell *dbell;
int found = 0;
@@ -657,7 +657,8 @@ fsl_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox,
int ret = 0;
pr_debug("RIO: fsl_add_outb_message(): destid %4.4x mbox %d buffer " \
- "%8.8x len %8.8x\n", rdev->destid, mbox, (int)buffer, len);
+ "%8.8lx len %8.8zx\n", rdev->destid, mbox,
+ (unsigned long)buffer, len);
if ((len < 8) || (len > RIO_MAX_MSG_SIZE)) {
ret = -EINVAL;
goto out;
@@ -972,7 +973,7 @@ out:
void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
{
struct fsl_rmu *rmu = GET_RMM_HANDLE(mport);
- u32 phys_buf, virt_buf;
+ unsigned long phys_buf, virt_buf;
void *buf = NULL;
int buf_idx;
@@ -982,7 +983,7 @@ void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
if (phys_buf == in_be32(&rmu->msg_regs->ifqepar))
goto out2;
- virt_buf = (u32) rmu->msg_rx_ring.virt + (phys_buf
+ virt_buf = (unsigned long) rmu->msg_rx_ring.virt + (phys_buf
- rmu->msg_rx_ring.phys);
buf_idx = (phys_buf - rmu->msg_rx_ring.phys) / RIO_MAX_MSG_SIZE;
buf = rmu->msg_rx_ring.virt_buffer[buf_idx];
--
1.7.0.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-02 7:08 ` Liu Gang
0 siblings, 0 replies; 16+ messages in thread
From: Liu Gang @ 2012-03-02 7:08 UTC (permalink / raw)
To: linuxppc-dev, Alexandre.Bounine
Cc: Shaohui Xie, r61911, linux-kernel, Paul Gortmaker, Liu Gang,
akpm, r58472
For the file "arch/powerpc/sysdev/fsl_rmu.c", there will be some compile
errors while using the corenet64_smp_defconfig:
.../fsl_rmu.c:315: error: cast from pointer to integer of different size
.../fsl_rmu.c:320: error: cast to pointer from integer of different size
.../fsl_rmu.c:320: error: cast to pointer from integer of different size
.../fsl_rmu.c:320: error: cast to pointer from integer of different size
.../fsl_rmu.c:330: error: cast to pointer from integer of different size
.../fsl_rmu.c:332: error: cast to pointer from integer of different size
.../fsl_rmu.c:339: error: cast to pointer from integer of different size
.../fsl_rmu.c:340: error: cast to pointer from integer of different size
.../fsl_rmu.c:341: error: cast to pointer from integer of different size
.../fsl_rmu.c:348: error: cast to pointer from integer of different size
.../fsl_rmu.c:348: error: cast to pointer from integer of different size
.../fsl_rmu.c:348: error: cast to pointer from integer of different size
.../fsl_rmu.c:659: error: cast from pointer to integer of different size
.../fsl_rmu.c:659: error: format '%8.8x' expects type 'unsigned int',
but argument 5 has type 'size_t'
.../fsl_rmu.c:985: error: cast from pointer to integer of different size
.../fsl_rmu.c:997: error: cast to pointer from integer of different size
Rewrote the corresponding code with the support of 64bit building.
Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
arch/powerpc/sysdev/fsl_rmu.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
index 1548578..468011e 100644
--- a/arch/powerpc/sysdev/fsl_rmu.c
+++ b/arch/powerpc/sysdev/fsl_rmu.c
@@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
/* XXX Need to check/dispatch until queue empty */
if (dsr & DOORBELL_DSR_DIQI) {
- u32 dmsg =
- (u32) fsl_dbell->dbell_ring.virt +
+ unsigned long dmsg =
+ (unsigned long) fsl_dbell->dbell_ring.virt +
(in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
struct rio_dbell *dbell;
int found = 0;
@@ -657,7 +657,8 @@ fsl_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox,
int ret = 0;
pr_debug("RIO: fsl_add_outb_message(): destid %4.4x mbox %d buffer " \
- "%8.8x len %8.8x\n", rdev->destid, mbox, (int)buffer, len);
+ "%8.8lx len %8.8zx\n", rdev->destid, mbox,
+ (unsigned long)buffer, len);
if ((len < 8) || (len > RIO_MAX_MSG_SIZE)) {
ret = -EINVAL;
goto out;
@@ -972,7 +973,7 @@ out:
void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
{
struct fsl_rmu *rmu = GET_RMM_HANDLE(mport);
- u32 phys_buf, virt_buf;
+ unsigned long phys_buf, virt_buf;
void *buf = NULL;
int buf_idx;
@@ -982,7 +983,7 @@ void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
if (phys_buf == in_be32(&rmu->msg_regs->ifqepar))
goto out2;
- virt_buf = (u32) rmu->msg_rx_ring.virt + (phys_buf
+ virt_buf = (unsigned long) rmu->msg_rx_ring.virt + (phys_buf
- rmu->msg_rx_ring.phys);
buf_idx = (phys_buf - rmu->msg_rx_ring.phys) / RIO_MAX_MSG_SIZE;
buf = rmu->msg_rx_ring.virt_buffer[buf_idx];
--
1.7.0.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* RE: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
2012-03-02 7:08 ` Liu Gang
@ 2012-03-02 9:57 ` David Laight
-1 siblings, 0 replies; 16+ messages in thread
From: David Laight @ 2012-03-02 9:57 UTC (permalink / raw)
To: Liu Gang, linuxppc-dev, Alexandre.Bounine
Cc: Shaohui Xie, r61911, linux-kernel, Paul Gortmaker, akpm, r58472
> For the file "arch/powerpc/sysdev/fsl_rmu.c", there will be
> some compile errors while using the corenet64_smp_defconfig:
I'm sure that replacing 'u32' with 'unsigned long'
is really the best thing to do here.
It looks to me as though they should be some pointer type.
David
^ permalink raw reply [flat|nested] 16+ messages in thread
* RE: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-02 9:57 ` David Laight
0 siblings, 0 replies; 16+ messages in thread
From: David Laight @ 2012-03-02 9:57 UTC (permalink / raw)
To: Liu Gang, linuxppc-dev, Alexandre.Bounine
Cc: r58472, linux-kernel, r61911, Paul Gortmaker, akpm, Shaohui Xie
=20
> For the file "arch/powerpc/sysdev/fsl_rmu.c", there will be=20
> some compile errors while using the corenet64_smp_defconfig:
I'm sure that replacing 'u32' with 'unsigned long'
is really the best thing to do here.
It looks to me as though they should be some pointer type.
David
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
2012-03-02 7:08 ` Liu Gang
@ 2012-03-02 14:30 ` Paul Gortmaker
-1 siblings, 0 replies; 16+ messages in thread
From: Paul Gortmaker @ 2012-03-02 14:30 UTC (permalink / raw)
To: Liu Gang
Cc: linuxppc-dev, Alexandre.Bounine, akpm, linux-kernel, r58472,
r61911, Shaohui Xie
On 12-03-02 02:08 AM, Liu Gang wrote:
> For the file "arch/powerpc/sysdev/fsl_rmu.c", there will be some compile
> errors while using the corenet64_smp_defconfig:
>
> .../fsl_rmu.c:315: error: cast from pointer to integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:330: error: cast to pointer from integer of different size
> .../fsl_rmu.c:332: error: cast to pointer from integer of different size
> .../fsl_rmu.c:339: error: cast to pointer from integer of different size
> .../fsl_rmu.c:340: error: cast to pointer from integer of different size
> .../fsl_rmu.c:341: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:659: error: cast from pointer to integer of different size
> .../fsl_rmu.c:659: error: format '%8.8x' expects type 'unsigned int',
> but argument 5 has type 'size_t'
> .../fsl_rmu.c:985: error: cast from pointer to integer of different size
> .../fsl_rmu.c:997: error: cast to pointer from integer of different size
>
> Rewrote the corresponding code with the support of 64bit building.
>
> Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
> Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Hi Liu,
You can't just go adding a "Signed-off-by:" line for me to a patch that
I've never seen before. Perhaps you meant to add "Reported-by:" ?
Paul.
--
> ---
> arch/powerpc/sysdev/fsl_rmu.c | 11 ++++++-----
> 1 files changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
> index 1548578..468011e 100644
> --- a/arch/powerpc/sysdev/fsl_rmu.c
> +++ b/arch/powerpc/sysdev/fsl_rmu.c
> @@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
>
> /* XXX Need to check/dispatch until queue empty */
> if (dsr & DOORBELL_DSR_DIQI) {
> - u32 dmsg =
> - (u32) fsl_dbell->dbell_ring.virt +
> + unsigned long dmsg =
> + (unsigned long) fsl_dbell->dbell_ring.virt +
> (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
> struct rio_dbell *dbell;
> int found = 0;
> @@ -657,7 +657,8 @@ fsl_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox,
> int ret = 0;
>
> pr_debug("RIO: fsl_add_outb_message(): destid %4.4x mbox %d buffer " \
> - "%8.8x len %8.8x\n", rdev->destid, mbox, (int)buffer, len);
> + "%8.8lx len %8.8zx\n", rdev->destid, mbox,
> + (unsigned long)buffer, len);
> if ((len < 8) || (len > RIO_MAX_MSG_SIZE)) {
> ret = -EINVAL;
> goto out;
> @@ -972,7 +973,7 @@ out:
> void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> {
> struct fsl_rmu *rmu = GET_RMM_HANDLE(mport);
> - u32 phys_buf, virt_buf;
> + unsigned long phys_buf, virt_buf;
> void *buf = NULL;
> int buf_idx;
>
> @@ -982,7 +983,7 @@ void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> if (phys_buf == in_be32(&rmu->msg_regs->ifqepar))
> goto out2;
>
> - virt_buf = (u32) rmu->msg_rx_ring.virt + (phys_buf
> + virt_buf = (unsigned long) rmu->msg_rx_ring.virt + (phys_buf
> - rmu->msg_rx_ring.phys);
> buf_idx = (phys_buf - rmu->msg_rx_ring.phys) / RIO_MAX_MSG_SIZE;
> buf = rmu->msg_rx_ring.virt_buffer[buf_idx];
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-02 14:30 ` Paul Gortmaker
0 siblings, 0 replies; 16+ messages in thread
From: Paul Gortmaker @ 2012-03-02 14:30 UTC (permalink / raw)
To: Liu Gang
Cc: r58472, linux-kernel, r61911, Alexandre.Bounine, akpm,
linuxppc-dev, Shaohui Xie
On 12-03-02 02:08 AM, Liu Gang wrote:
> For the file "arch/powerpc/sysdev/fsl_rmu.c", there will be some compile
> errors while using the corenet64_smp_defconfig:
>
> .../fsl_rmu.c:315: error: cast from pointer to integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:330: error: cast to pointer from integer of different size
> .../fsl_rmu.c:332: error: cast to pointer from integer of different size
> .../fsl_rmu.c:339: error: cast to pointer from integer of different size
> .../fsl_rmu.c:340: error: cast to pointer from integer of different size
> .../fsl_rmu.c:341: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:659: error: cast from pointer to integer of different size
> .../fsl_rmu.c:659: error: format '%8.8x' expects type 'unsigned int',
> but argument 5 has type 'size_t'
> .../fsl_rmu.c:985: error: cast from pointer to integer of different size
> .../fsl_rmu.c:997: error: cast to pointer from integer of different size
>
> Rewrote the corresponding code with the support of 64bit building.
>
> Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
> Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Hi Liu,
You can't just go adding a "Signed-off-by:" line for me to a patch that
I've never seen before. Perhaps you meant to add "Reported-by:" ?
Paul.
--
> ---
> arch/powerpc/sysdev/fsl_rmu.c | 11 ++++++-----
> 1 files changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
> index 1548578..468011e 100644
> --- a/arch/powerpc/sysdev/fsl_rmu.c
> +++ b/arch/powerpc/sysdev/fsl_rmu.c
> @@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
>
> /* XXX Need to check/dispatch until queue empty */
> if (dsr & DOORBELL_DSR_DIQI) {
> - u32 dmsg =
> - (u32) fsl_dbell->dbell_ring.virt +
> + unsigned long dmsg =
> + (unsigned long) fsl_dbell->dbell_ring.virt +
> (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
> struct rio_dbell *dbell;
> int found = 0;
> @@ -657,7 +657,8 @@ fsl_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox,
> int ret = 0;
>
> pr_debug("RIO: fsl_add_outb_message(): destid %4.4x mbox %d buffer " \
> - "%8.8x len %8.8x\n", rdev->destid, mbox, (int)buffer, len);
> + "%8.8lx len %8.8zx\n", rdev->destid, mbox,
> + (unsigned long)buffer, len);
> if ((len < 8) || (len > RIO_MAX_MSG_SIZE)) {
> ret = -EINVAL;
> goto out;
> @@ -972,7 +973,7 @@ out:
> void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> {
> struct fsl_rmu *rmu = GET_RMM_HANDLE(mport);
> - u32 phys_buf, virt_buf;
> + unsigned long phys_buf, virt_buf;
> void *buf = NULL;
> int buf_idx;
>
> @@ -982,7 +983,7 @@ void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> if (phys_buf == in_be32(&rmu->msg_regs->ifqepar))
> goto out2;
>
> - virt_buf = (u32) rmu->msg_rx_ring.virt + (phys_buf
> + virt_buf = (unsigned long) rmu->msg_rx_ring.virt + (phys_buf
> - rmu->msg_rx_ring.phys);
> buf_idx = (phys_buf - rmu->msg_rx_ring.phys) / RIO_MAX_MSG_SIZE;
> buf = rmu->msg_rx_ring.virt_buffer[buf_idx];
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
2012-03-02 7:08 ` Liu Gang
@ 2012-03-02 15:11 ` Kumar Gala
-1 siblings, 0 replies; 16+ messages in thread
From: Kumar Gala @ 2012-03-02 15:11 UTC (permalink / raw)
To: Liu Gang
Cc: linuxppc-dev, Alexandre.Bounine, akpm, linux-kernel, r58472,
r61911, Shaohui Xie, Paul Gortmaker
On Mar 2, 2012, at 1:08 AM, Liu Gang wrote:
> For the file "arch/powerpc/sysdev/fsl_rmu.c", there will be some compile
> errors while using the corenet64_smp_defconfig:
>
> .../fsl_rmu.c:315: error: cast from pointer to integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different size
> .../fsl_rmu.c:330: error: cast to pointer from integer of different size
> .../fsl_rmu.c:332: error: cast to pointer from integer of different size
> .../fsl_rmu.c:339: error: cast to pointer from integer of different size
> .../fsl_rmu.c:340: error: cast to pointer from integer of different size
> .../fsl_rmu.c:341: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different size
> .../fsl_rmu.c:659: error: cast from pointer to integer of different size
> .../fsl_rmu.c:659: error: format '%8.8x' expects type 'unsigned int',
> but argument 5 has type 'size_t'
> .../fsl_rmu.c:985: error: cast from pointer to integer of different size
> .../fsl_rmu.c:997: error: cast to pointer from integer of different size
>
> Rewrote the corresponding code with the support of 64bit building.
>
> Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
> Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---
> arch/powerpc/sysdev/fsl_rmu.c | 11 ++++++-----
> 1 files changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
> index 1548578..468011e 100644
> --- a/arch/powerpc/sysdev/fsl_rmu.c
> +++ b/arch/powerpc/sysdev/fsl_rmu.c
> @@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
>
> /* XXX Need to check/dispatch until queue empty */
> if (dsr & DOORBELL_DSR_DIQI) {
> - u32 dmsg =
> - (u32) fsl_dbell->dbell_ring.virt +
> + unsigned long dmsg =
> + (unsigned long) fsl_dbell->dbell_ring.virt +
> (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
> struct rio_dbell *dbell;
> int found = 0;
> @@ -657,7 +657,8 @@ fsl_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox,
> int ret = 0;
>
> pr_debug("RIO: fsl_add_outb_message(): destid %4.4x mbox %d buffer " \
> - "%8.8x len %8.8x\n", rdev->destid, mbox, (int)buffer, len);
> + "%8.8lx len %8.8zx\n", rdev->destid, mbox,
> + (unsigned long)buffer, len);
> if ((len < 8) || (len > RIO_MAX_MSG_SIZE)) {
> ret = -EINVAL;
> goto out;
For this case it seems as if some cast should be added to DBELL_* macros
> @@ -972,7 +973,7 @@ out:
> void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> {
> struct fsl_rmu *rmu = GET_RMM_HANDLE(mport);
> - u32 phys_buf, virt_buf;
> + unsigned long phys_buf, virt_buf;
Do you really want to change phys_buf to an 'unsigned long'?
Should virt_buf really be void * here?
> void *buf = NULL;
> int buf_idx;
>
> @@ -982,7 +983,7 @@ void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> if (phys_buf == in_be32(&rmu->msg_regs->ifqepar))
> goto out2;
>
> - virt_buf = (u32) rmu->msg_rx_ring.virt + (phys_buf
> + virt_buf = (unsigned long) rmu->msg_rx_ring.virt + (phys_buf
> - rmu->msg_rx_ring.phys);
> buf_idx = (phys_buf - rmu->msg_rx_ring.phys) / RIO_MAX_MSG_SIZE;
> buf = rmu->msg_rx_ring.virt_buffer[buf_idx];
The memcpy later could remove a cast if you make virt_buf a void *.
> --
> 1.7.0.4
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-02 15:11 ` Kumar Gala
0 siblings, 0 replies; 16+ messages in thread
From: Kumar Gala @ 2012-03-02 15:11 UTC (permalink / raw)
To: Liu Gang
Cc: r58472, Paul Gortmaker, linux-kernel, r61911, Alexandre.Bounine,
akpm, linuxppc-dev, Shaohui Xie
On Mar 2, 2012, at 1:08 AM, Liu Gang wrote:
> For the file "arch/powerpc/sysdev/fsl_rmu.c", there will be some =
compile
> errors while using the corenet64_smp_defconfig:
>=20
> .../fsl_rmu.c:315: error: cast from pointer to integer of different =
size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:320: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:330: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:332: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:339: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:340: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:341: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:348: error: cast to pointer from integer of different =
size
> .../fsl_rmu.c:659: error: cast from pointer to integer of different =
size
> .../fsl_rmu.c:659: error: format '%8.8x' expects type 'unsigned int',
> but argument 5 has type 'size_t'
> .../fsl_rmu.c:985: error: cast from pointer to integer of different =
size
> .../fsl_rmu.c:997: error: cast to pointer from integer of different =
size
>=20
> Rewrote the corresponding code with the support of 64bit building.
>=20
> Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
> Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---
> arch/powerpc/sysdev/fsl_rmu.c | 11 ++++++-----
> 1 files changed, 6 insertions(+), 5 deletions(-)
>=20
> diff --git a/arch/powerpc/sysdev/fsl_rmu.c =
b/arch/powerpc/sysdev/fsl_rmu.c
> index 1548578..468011e 100644
> --- a/arch/powerpc/sysdev/fsl_rmu.c
> +++ b/arch/powerpc/sysdev/fsl_rmu.c
> @@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
>=20
> /* XXX Need to check/dispatch until queue empty */
> if (dsr & DOORBELL_DSR_DIQI) {
> - u32 dmsg =3D
> - (u32) fsl_dbell->dbell_ring.virt +
> + unsigned long dmsg =3D
> + (unsigned long) fsl_dbell->dbell_ring.virt +
> (in_be32(&fsl_dbell->dbell_regs->dqdpar) & =
0xfff);
> struct rio_dbell *dbell;
> int found =3D 0;
> @@ -657,7 +657,8 @@ fsl_add_outb_message(struct rio_mport *mport, =
struct rio_dev *rdev, int mbox,
> int ret =3D 0;
>=20
> pr_debug("RIO: fsl_add_outb_message(): destid %4.4x mbox %d =
buffer " \
> - "%8.8x len %8.8x\n", rdev->destid, mbox, (int)buffer, =
len);
> + "%8.8lx len %8.8zx\n", rdev->destid, mbox,
> + (unsigned long)buffer, len);
> if ((len < 8) || (len > RIO_MAX_MSG_SIZE)) {
> ret =3D -EINVAL;
> goto out;
For this case it seems as if some cast should be added to DBELL_* macros
> @@ -972,7 +973,7 @@ out:
> void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> {
> struct fsl_rmu *rmu =3D GET_RMM_HANDLE(mport);
> - u32 phys_buf, virt_buf;
> + unsigned long phys_buf, virt_buf;
Do you really want to change phys_buf to an 'unsigned long'?
Should virt_buf really be void * here?
> void *buf =3D NULL;
> int buf_idx;
>=20
> @@ -982,7 +983,7 @@ void *fsl_get_inb_message(struct rio_mport *mport, =
int mbox)
> if (phys_buf =3D=3D in_be32(&rmu->msg_regs->ifqepar))
> goto out2;
>=20
> - virt_buf =3D (u32) rmu->msg_rx_ring.virt + (phys_buf
> + virt_buf =3D (unsigned long) rmu->msg_rx_ring.virt + (phys_buf
> - =
rmu->msg_rx_ring.phys);
> buf_idx =3D (phys_buf - rmu->msg_rx_ring.phys) / =
RIO_MAX_MSG_SIZE;
> buf =3D rmu->msg_rx_ring.virt_buffer[buf_idx];
The memcpy later could remove a cast if you make virt_buf a void *.
> --=20
> 1.7.0.4
>=20
>=20
> --
> To unsubscribe from this list: send the line "unsubscribe =
linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
2012-03-02 14:30 ` Paul Gortmaker
@ 2012-03-05 2:52 ` Liu Gang
-1 siblings, 0 replies; 16+ messages in thread
From: Liu Gang @ 2012-03-05 2:52 UTC (permalink / raw)
To: Paul Gortmaker
Cc: linuxppc-dev, Alexandre.Bounine, akpm, linux-kernel, r58472,
r61911, Shaohui Xie
Hi, Paul,
On Fri, 2012-03-02 at 09:30 -0500, Paul Gortmaker wrote:
> > Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
> > Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
> > Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
>
> Hi Liu,
>
> You can't just go adding a "Signed-off-by:" line for me to a patch that
> I've never seen before. Perhaps you meant to add "Reported-by:" ?
>
> Paul.
I'm sorry for this. I added "Signed-off-by" for you because I wanted to
thank you found this issue. I'll add "Reported-by:" if needed in the
future.
Best Regards,
Liu Gang
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-05 2:52 ` Liu Gang
0 siblings, 0 replies; 16+ messages in thread
From: Liu Gang @ 2012-03-05 2:52 UTC (permalink / raw)
To: Paul Gortmaker
Cc: r58472, linux-kernel, r61911, Alexandre.Bounine, akpm,
linuxppc-dev, Shaohui Xie
Hi, Paul,
On Fri, 2012-03-02 at 09:30 -0500, Paul Gortmaker wrote:
> > Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
> > Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
> > Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
>
> Hi Liu,
>
> You can't just go adding a "Signed-off-by:" line for me to a patch that
> I've never seen before. Perhaps you meant to add "Reported-by:" ?
>
> Paul.
I'm sorry for this. I added "Signed-off-by" for you because I wanted to
thank you found this issue. I'll add "Reported-by:" if needed in the
future.
Best Regards,
Liu Gang
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
2012-03-02 15:11 ` Kumar Gala
@ 2012-03-05 14:20 ` Liu Gang
-1 siblings, 0 replies; 16+ messages in thread
From: Liu Gang @ 2012-03-05 14:20 UTC (permalink / raw)
To: Kumar Gala
Cc: linuxppc-dev, Alexandre.Bounine, akpm, linux-kernel, r58472,
r61911, Shaohui Xie, Paul Gortmaker
Hi, Kumar,
On Fri, 2012-03-02 at 09:11 -0600, Kumar Gala wrote:
> > diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
> > index 1548578..468011e 100644
> > --- a/arch/powerpc/sysdev/fsl_rmu.c
> > +++ b/arch/powerpc/sysdev/fsl_rmu.c
> > @@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
> >
> > /* XXX Need to check/dispatch until queue empty */
> > if (dsr & DOORBELL_DSR_DIQI) {
> > - u32 dmsg =
> > - (u32) fsl_dbell->dbell_ring.virt +
> > + unsigned long dmsg =
> > + (unsigned long) fsl_dbell->dbell_ring.virt +
> > (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
> > struct rio_dbell *dbell;
> > int found = 0;
> > @@ -657,7 +657,8 @@ fsl_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox,
> > int ret = 0;
> >
> > pr_debug("RIO: fsl_add_outb_message(): destid %4.4x mbox %d buffer " \
> > - "%8.8x len %8.8x\n", rdev->destid, mbox, (int)buffer, len);
> > + "%8.8lx len %8.8zx\n", rdev->destid, mbox,
> > + (unsigned long)buffer, len);
> > if ((len < 8) || (len > RIO_MAX_MSG_SIZE)) {
> > ret = -EINVAL;
> > goto out;
>
> For this case it seems as if some cast should be added to DBELL_* macros
Do you mean the DBELL_* macro should be added the cast "u16" and like
this:
#define DBELL_SID(x) (u16)(*(u16 *)(x + DOORBELL_SID_OFFSET))
> > @@ -972,7 +973,7 @@ out:
> > void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> > {
> > struct fsl_rmu *rmu = GET_RMM_HANDLE(mport);
> > - u32 phys_buf, virt_buf;
> > + unsigned long phys_buf, virt_buf;
>
> Do you really want to change phys_buf to an 'unsigned long'?
>
> Should virt_buf really be void * here?
I think you are right, the phys_buf should not be changed to 'unsigned
long' and the virt_buf should be void *. I'll correct this in next
version.
> > @@ -982,7 +983,7 @@ void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
>
> The memcpy later could remove a cast if you make virt_buf a void *.
Thanks a lot, will remove.
Best Regards,
Liu Gang
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-05 14:20 ` Liu Gang
0 siblings, 0 replies; 16+ messages in thread
From: Liu Gang @ 2012-03-05 14:20 UTC (permalink / raw)
To: Kumar Gala
Cc: r58472, Paul Gortmaker, linux-kernel, r61911, Alexandre.Bounine,
akpm, linuxppc-dev, Shaohui Xie
Hi, Kumar,
On Fri, 2012-03-02 at 09:11 -0600, Kumar Gala wrote:
> > diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
> > index 1548578..468011e 100644
> > --- a/arch/powerpc/sysdev/fsl_rmu.c
> > +++ b/arch/powerpc/sysdev/fsl_rmu.c
> > @@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
> >
> > /* XXX Need to check/dispatch until queue empty */
> > if (dsr & DOORBELL_DSR_DIQI) {
> > - u32 dmsg =
> > - (u32) fsl_dbell->dbell_ring.virt +
> > + unsigned long dmsg =
> > + (unsigned long) fsl_dbell->dbell_ring.virt +
> > (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
> > struct rio_dbell *dbell;
> > int found = 0;
> > @@ -657,7 +657,8 @@ fsl_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox,
> > int ret = 0;
> >
> > pr_debug("RIO: fsl_add_outb_message(): destid %4.4x mbox %d buffer " \
> > - "%8.8x len %8.8x\n", rdev->destid, mbox, (int)buffer, len);
> > + "%8.8lx len %8.8zx\n", rdev->destid, mbox,
> > + (unsigned long)buffer, len);
> > if ((len < 8) || (len > RIO_MAX_MSG_SIZE)) {
> > ret = -EINVAL;
> > goto out;
>
> For this case it seems as if some cast should be added to DBELL_* macros
Do you mean the DBELL_* macro should be added the cast "u16" and like
this:
#define DBELL_SID(x) (u16)(*(u16 *)(x + DOORBELL_SID_OFFSET))
> > @@ -972,7 +973,7 @@ out:
> > void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
> > {
> > struct fsl_rmu *rmu = GET_RMM_HANDLE(mport);
> > - u32 phys_buf, virt_buf;
> > + unsigned long phys_buf, virt_buf;
>
> Do you really want to change phys_buf to an 'unsigned long'?
>
> Should virt_buf really be void * here?
I think you are right, the phys_buf should not be changed to 'unsigned
long' and the virt_buf should be void *. I'll correct this in next
version.
> > @@ -982,7 +983,7 @@ void *fsl_get_inb_message(struct rio_mport *mport, int mbox)
>
> The memcpy later could remove a cast if you make virt_buf a void *.
Thanks a lot, will remove.
Best Regards,
Liu Gang
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
2012-03-05 14:20 ` Liu Gang
@ 2012-03-06 17:46 ` Kumar Gala
-1 siblings, 0 replies; 16+ messages in thread
From: Kumar Gala @ 2012-03-06 17:46 UTC (permalink / raw)
To: Liu Gang
Cc: linuxppc-dev, Alexandre.Bounine, akpm, linux-kernel, r58472,
r61911, Shaohui Xie, Paul Gortmaker
On Mar 5, 2012, at 8:20 AM, Liu Gang wrote:
> Hi, Kumar,
>
> On Fri, 2012-03-02 at 09:11 -0600, Kumar Gala wrote:
>>> diff --git a/arch/powerpc/sysdev/fsl_rmu.c b/arch/powerpc/sysdev/fsl_rmu.c
>>> index 1548578..468011e 100644
>>> --- a/arch/powerpc/sysdev/fsl_rmu.c
>>> +++ b/arch/powerpc/sysdev/fsl_rmu.c
>>> @@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void *dev_instance)
>>>
>>> /* XXX Need to check/dispatch until queue empty */
>>> if (dsr & DOORBELL_DSR_DIQI) {
>>> - u32 dmsg =
>>> - (u32) fsl_dbell->dbell_ring.virt +
>>> + unsigned long dmsg =
>>> + (unsigned long) fsl_dbell->dbell_ring.virt +
>>> (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
How about a struct instead:
struct rmu_dmsg {
u16 dummy;
u16 tid;
u16 sid;
u16 info;
};
struct rmu_dmsg *dmsg = fsl_dbell->dbell_ring.virt + (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
Than you can git rid of the DBELL_* macros.
- k
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-06 17:46 ` Kumar Gala
0 siblings, 0 replies; 16+ messages in thread
From: Kumar Gala @ 2012-03-06 17:46 UTC (permalink / raw)
To: Liu Gang
Cc: r58472, Paul Gortmaker, linux-kernel, r61911, Alexandre.Bounine,
akpm, linuxppc-dev, Shaohui Xie
On Mar 5, 2012, at 8:20 AM, Liu Gang wrote:
> Hi, Kumar,
>=20
> On Fri, 2012-03-02 at 09:11 -0600, Kumar Gala wrote:
>>> diff --git a/arch/powerpc/sysdev/fsl_rmu.c =
b/arch/powerpc/sysdev/fsl_rmu.c
>>> index 1548578..468011e 100644
>>> --- a/arch/powerpc/sysdev/fsl_rmu.c
>>> +++ b/arch/powerpc/sysdev/fsl_rmu.c
>>> @@ -311,8 +311,8 @@ fsl_rio_dbell_handler(int irq, void =
*dev_instance)
>>>=20
>>> /* XXX Need to check/dispatch until queue empty */
>>> if (dsr & DOORBELL_DSR_DIQI) {
>>> - u32 dmsg =3D
>>> - (u32) fsl_dbell->dbell_ring.virt +
>>> + unsigned long dmsg =3D
>>> + (unsigned long) fsl_dbell->dbell_ring.virt +
>>> (in_be32(&fsl_dbell->dbell_regs->dqdpar) & =
0xfff);
How about a struct instead:
struct rmu_dmsg {
u16 dummy;
u16 tid;
u16 sid;
u16 info;
};
struct rmu_dmsg *dmsg =3D fsl_dbell->dbell_ring.virt + =
(in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
Than you can git rid of the DBELL_* macros.
- k
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
2012-03-06 17:46 ` Kumar Gala
@ 2012-03-07 12:52 ` Liu Gang
-1 siblings, 0 replies; 16+ messages in thread
From: Liu Gang @ 2012-03-07 12:52 UTC (permalink / raw)
To: Kumar Gala
Cc: linuxppc-dev, Alexandre.Bounine, akpm, linux-kernel, r58472,
r61911, Shaohui Xie, Paul Gortmaker
Hi, Kumar,
On Tue, 2012-03-06 at 11:46 -0600, Kumar Gala wrote:
> How about a struct instead:
>
> struct rmu_dmsg {
> u16 dummy;
> u16 tid;
> u16 sid;
> u16 info;
> };
>
> struct rmu_dmsg *dmsg = fsl_dbell->dbell_ring.virt + (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
>
> Than you can git rid of the DBELL_* macros.
Yes, this can really git rid of the DBELL_* macros and some other code.
I'll update the patch based on your comments.
Thanks a lot.
Liu Gang
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] powerpc/srio: Fix the compile errors when building with 64bit
@ 2012-03-07 12:52 ` Liu Gang
0 siblings, 0 replies; 16+ messages in thread
From: Liu Gang @ 2012-03-07 12:52 UTC (permalink / raw)
To: Kumar Gala
Cc: r58472, Paul Gortmaker, linux-kernel, r61911, Alexandre.Bounine,
akpm, linuxppc-dev, Shaohui Xie
Hi, Kumar,
On Tue, 2012-03-06 at 11:46 -0600, Kumar Gala wrote:
> How about a struct instead:
>
> struct rmu_dmsg {
> u16 dummy;
> u16 tid;
> u16 sid;
> u16 info;
> };
>
> struct rmu_dmsg *dmsg = fsl_dbell->dbell_ring.virt + (in_be32(&fsl_dbell->dbell_regs->dqdpar) & 0xfff);
>
> Than you can git rid of the DBELL_* macros.
Yes, this can really git rid of the DBELL_* macros and some other code.
I'll update the patch based on your comments.
Thanks a lot.
Liu Gang
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2012-03-07 12:54 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-02 7:08 [PATCH] powerpc/srio: Fix the compile errors when building with 64bit Liu Gang
2012-03-02 7:08 ` Liu Gang
2012-03-02 9:57 ` David Laight
2012-03-02 9:57 ` David Laight
2012-03-02 14:30 ` Paul Gortmaker
2012-03-02 14:30 ` Paul Gortmaker
2012-03-05 2:52 ` Liu Gang
2012-03-05 2:52 ` Liu Gang
2012-03-02 15:11 ` Kumar Gala
2012-03-02 15:11 ` Kumar Gala
2012-03-05 14:20 ` Liu Gang
2012-03-05 14:20 ` Liu Gang
2012-03-06 17:46 ` Kumar Gala
2012-03-06 17:46 ` Kumar Gala
2012-03-07 12:52 ` Liu Gang
2012-03-07 12:52 ` Liu Gang
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.