Re: [PATCH 2/3] soc: qcom: smd: Use __iowrite32_copy() instead of open-coding it
On 09/01/2015 11:03 AM, Stephen Boyd wrote: > On 08/31, Bjorn Andersson wrote: >> On Mon 31 Aug 18:39 PDT 2015, Stephen Boyd wrote: >> >>> We already have a function to do this and it silences some sparse >>> warnings along the way. >>> >> Didn't know that, thanks. Do you know why there's no equivalent for >> transfers in the other direction? Should we hack one up to do the same >> simplification in smd_copy_from_fifo()? > Don't know. We can certainly write one although it would be nice > if we had two users. I'll take a look. > Looks like we can convert smd and bcm47xx_nvram over. Also, we need to add it or move the readl_relaxed() to a __raw_readl() in smd_copy_from_fifo() because it's doing byte swapping that we don't want. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/3] soc: qcom: smd: Use __iowrite32_copy() instead of open-coding it
On 08/31, Bjorn Andersson wrote: > On Mon 31 Aug 18:39 PDT 2015, Stephen Boyd wrote: > > > We already have a function to do this and it silences some sparse > > warnings along the way. > > > > Didn't know that, thanks. Do you know why there's no equivalent for > transfers in the other direction? Should we hack one up to do the same > simplification in smd_copy_from_fifo()? Don't know. We can certainly write one although it would be nice if we had two users. I'll take a look. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/3] soc: qcom: smd: Use __iowrite32_copy() instead of open-coding it
On 08/31, Bjorn Andersson wrote: > On Mon 31 Aug 18:39 PDT 2015, Stephen Boyd wrote: > > > We already have a function to do this and it silences some sparse > > warnings along the way. > > > > Didn't know that, thanks. Do you know why there's no equivalent for > transfers in the other direction? Should we hack one up to do the same > simplification in smd_copy_from_fifo()? Don't know. We can certainly write one although it would be nice if we had two users. I'll take a look. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/3] soc: qcom: smd: Use __iowrite32_copy() instead of open-coding it
On 09/01/2015 11:03 AM, Stephen Boyd wrote: > On 08/31, Bjorn Andersson wrote: >> On Mon 31 Aug 18:39 PDT 2015, Stephen Boyd wrote: >> >>> We already have a function to do this and it silences some sparse >>> warnings along the way. >>> >> Didn't know that, thanks. Do you know why there's no equivalent for >> transfers in the other direction? Should we hack one up to do the same >> simplification in smd_copy_from_fifo()? > Don't know. We can certainly write one although it would be nice > if we had two users. I'll take a look. > Looks like we can convert smd and bcm47xx_nvram over. Also, we need to add it or move the readl_relaxed() to a __raw_readl() in smd_copy_from_fifo() because it's doing byte swapping that we don't want. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/3] soc: qcom: smd: Use __iowrite32_copy() instead of open-coding it
On Mon 31 Aug 18:39 PDT 2015, Stephen Boyd wrote: > We already have a function to do this and it silences some sparse > warnings along the way. > Didn't know that, thanks. Do you know why there's no equivalent for transfers in the other direction? Should we hack one up to do the same simplification in smd_copy_from_fifo()? Reviewed-by: Bjorn Andersson > Signed-off-by: Stephen Boyd Regards, Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 2/3] soc: qcom: smd: Use __iowrite32_copy() instead of open-coding it
We already have a function to do this and it silences some sparse warnings along the way. Cc: Bjorn Andersson Signed-off-by: Stephen Boyd --- drivers/soc/qcom/smd.c | 13 - 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/drivers/soc/qcom/smd.c b/drivers/soc/qcom/smd.c index c16547b85e05..91b7f5668962 100644 --- a/drivers/soc/qcom/smd.c +++ b/drivers/soc/qcom/smd.c @@ -371,20 +371,15 @@ static void qcom_smd_channel_set_state(struct qcom_smd_channel *channel, /* * Copy count bytes of data using 32bit accesses, if that's required. */ -static void smd_copy_to_fifo(void __iomem *_dst, -const void *_src, +static void smd_copy_to_fifo(void __iomem *dst, +const void *src, size_t count, bool word_aligned) { - u32 *dst = (u32 *)_dst; - u32 *src = (u32 *)_src; - if (word_aligned) { - count /= sizeof(u32); - while (count--) - writel_relaxed(*src++, dst++); + __iowrite32_copy(dst, src, count / sizeof(u32)); } else { - memcpy_toio(_dst, _src, count); + memcpy_toio(dst, src, count); } } -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 2/3] soc: qcom: smd: Use __iowrite32_copy() instead of open-coding it
We already have a function to do this and it silences some sparse warnings along the way. Cc: Bjorn AnderssonSigned-off-by: Stephen Boyd --- drivers/soc/qcom/smd.c | 13 - 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/drivers/soc/qcom/smd.c b/drivers/soc/qcom/smd.c index c16547b85e05..91b7f5668962 100644 --- a/drivers/soc/qcom/smd.c +++ b/drivers/soc/qcom/smd.c @@ -371,20 +371,15 @@ static void qcom_smd_channel_set_state(struct qcom_smd_channel *channel, /* * Copy count bytes of data using 32bit accesses, if that's required. */ -static void smd_copy_to_fifo(void __iomem *_dst, -const void *_src, +static void smd_copy_to_fifo(void __iomem *dst, +const void *src, size_t count, bool word_aligned) { - u32 *dst = (u32 *)_dst; - u32 *src = (u32 *)_src; - if (word_aligned) { - count /= sizeof(u32); - while (count--) - writel_relaxed(*src++, dst++); + __iowrite32_copy(dst, src, count / sizeof(u32)); } else { - memcpy_toio(_dst, _src, count); + memcpy_toio(dst, src, count); } } -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/3] soc: qcom: smd: Use __iowrite32_copy() instead of open-coding it
On Mon 31 Aug 18:39 PDT 2015, Stephen Boyd wrote: > We already have a function to do this and it silences some sparse > warnings along the way. > Didn't know that, thanks. Do you know why there's no equivalent for transfers in the other direction? Should we hack one up to do the same simplification in smd_copy_from_fifo()? Reviewed-by: Bjorn Andersson> Signed-off-by: Stephen Boyd Regards, Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/