* [PATCH 0/2] Minor updates for hisi-sfc-v3xx
@ 2021-04-08 11:31 Yicong Yang
2021-04-08 11:31 ` [PATCH 1/2] spi: hisi-sfc-v3xx: fix potential irq race condition Yicong Yang
2021-04-08 11:31 ` [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection Yicong Yang
0 siblings, 2 replies; 7+ messages in thread
From: Yicong Yang @ 2021-04-08 11:31 UTC (permalink / raw)
To: broonie, linux-spi; +Cc: john.garry, prime.zeng, yangyicong, linuxarm
This series fix a potential interrupt race condition and
cleanup the ACPI protection for the driver.
Yicong Yang (2):
spi: hisi-sfc-v3xx: fix potential irq race condition
spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif
protection
drivers/spi/spi-hisi-sfc-v3xx.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
--
2.8.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/2] spi: hisi-sfc-v3xx: fix potential irq race condition
2021-04-08 11:31 [PATCH 0/2] Minor updates for hisi-sfc-v3xx Yicong Yang
@ 2021-04-08 11:31 ` Yicong Yang
2021-04-08 11:31 ` [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection Yicong Yang
1 sibling, 0 replies; 7+ messages in thread
From: Yicong Yang @ 2021-04-08 11:31 UTC (permalink / raw)
To: broonie, linux-spi; +Cc: john.garry, prime.zeng, yangyicong, linuxarm
We mask the irq when the command completion is timeout. This won't
stop the already running irq handler. Use sychronize_irq() after
we mask the irq, to make sure there is no running handler.
Acked-by: John Garry <john.garry@huawei.com>
Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
---
drivers/spi/spi-hisi-sfc-v3xx.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/spi/spi-hisi-sfc-v3xx.c b/drivers/spi/spi-hisi-sfc-v3xx.c
index 385eb7b..0d9e103 100644
--- a/drivers/spi/spi-hisi-sfc-v3xx.c
+++ b/drivers/spi/spi-hisi-sfc-v3xx.c
@@ -342,6 +342,7 @@ static int hisi_sfc_v3xx_generic_exec_op(struct hisi_sfc_v3xx_host *host,
ret = 0;
hisi_sfc_v3xx_disable_int(host);
+ synchronize_irq(host->irq);
host->completion = NULL;
} else {
ret = hisi_sfc_v3xx_wait_cmd_idle(host);
--
2.8.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection
2021-04-08 11:31 [PATCH 0/2] Minor updates for hisi-sfc-v3xx Yicong Yang
2021-04-08 11:31 ` [PATCH 1/2] spi: hisi-sfc-v3xx: fix potential irq race condition Yicong Yang
@ 2021-04-08 11:31 ` Yicong Yang
2021-04-08 13:51 ` Mark Brown
1 sibling, 1 reply; 7+ messages in thread
From: Yicong Yang @ 2021-04-08 11:31 UTC (permalink / raw)
To: broonie, linux-spi; +Cc: john.garry, prime.zeng, yangyicong, linuxarm
The ACPI_PTR() and related IS_ENABLED(CONFIG_ACPI) protection is
redundant, so drop them.
Acked-by: John Garry <john.garry@huawei.com>
Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
---
drivers/spi/spi-hisi-sfc-v3xx.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/spi/spi-hisi-sfc-v3xx.c b/drivers/spi/spi-hisi-sfc-v3xx.c
index 0d9e103..d3a23b1 100644
--- a/drivers/spi/spi-hisi-sfc-v3xx.c
+++ b/drivers/spi/spi-hisi-sfc-v3xx.c
@@ -5,13 +5,13 @@
// Copyright (c) 2019 HiSilicon Technologies Co., Ltd.
// Author: John Garry <john.garry@huawei.com>
-#include <linux/acpi.h>
#include <linux/bitops.h>
#include <linux/completion.h>
#include <linux/dmi.h>
#include <linux/interrupt.h>
#include <linux/iopoll.h>
#include <linux/module.h>
+#include <linux/mod_devicetable.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/spi/spi.h>
@@ -508,18 +508,16 @@ static int hisi_sfc_v3xx_probe(struct platform_device *pdev)
return ret;
}
-#if IS_ENABLED(CONFIG_ACPI)
static const struct acpi_device_id hisi_sfc_v3xx_acpi_ids[] = {
{"HISI0341", 0},
{}
};
MODULE_DEVICE_TABLE(acpi, hisi_sfc_v3xx_acpi_ids);
-#endif
static struct platform_driver hisi_sfc_v3xx_spi_driver = {
.driver = {
.name = "hisi-sfc-v3xx",
- .acpi_match_table = ACPI_PTR(hisi_sfc_v3xx_acpi_ids),
+ .acpi_match_table = hisi_sfc_v3xx_acpi_ids,
},
.probe = hisi_sfc_v3xx_probe,
};
--
2.8.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection
2021-04-08 11:31 ` [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection Yicong Yang
@ 2021-04-08 13:51 ` Mark Brown
2021-04-09 7:17 ` Yicong Yang
0 siblings, 1 reply; 7+ messages in thread
From: Mark Brown @ 2021-04-08 13:51 UTC (permalink / raw)
To: Yicong Yang; +Cc: linux-spi, john.garry, prime.zeng, linuxarm
[-- Attachment #1: Type: text/plain, Size: 235 bytes --]
On Thu, Apr 08, 2021 at 07:31:45PM +0800, Yicong Yang wrote:
> The ACPI_PTR() and related IS_ENABLED(CONFIG_ACPI) protection is
> redundant, so drop them.
The driver supports building without ACPI so are you sure these are
redundant?
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection
2021-04-08 13:51 ` Mark Brown
@ 2021-04-09 7:17 ` Yicong Yang
2021-04-09 14:25 ` John Garry
0 siblings, 1 reply; 7+ messages in thread
From: Yicong Yang @ 2021-04-09 7:17 UTC (permalink / raw)
To: Mark Brown; +Cc: linux-spi, john.garry, prime.zeng, linuxarm
On 2021/4/8 21:51, Mark Brown wrote:
> On Thu, Apr 08, 2021 at 07:31:45PM +0800, Yicong Yang wrote:
>> The ACPI_PTR() and related IS_ENABLED(CONFIG_ACPI) protection is
>> redundant, so drop them.
>
> The driver supports building without ACPI so are you sure these are
> redundant?
>
yes. we're not using any acpi function in this driver. What ifdef macro
and ACPI_PTR() protects is struct acpi_device_id, which is defined in
mod_devicetable.h rather than acpi.h. It can be built when ACPI=n.
some similiar cleanups can be found:
6c328c347ac3 ("platform/x86: i2c-multi-instantiate: Drop redundant ACPI_PTR()")
846afc1dbcbf ("iio: accel: bma220: Drop ACPI_PTR() and accompanying ifdeffery")
[...]
Thanks,
Yicong
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection
2021-04-09 7:17 ` Yicong Yang
@ 2021-04-09 14:25 ` John Garry
2021-04-09 15:11 ` Mark Brown
0 siblings, 1 reply; 7+ messages in thread
From: John Garry @ 2021-04-09 14:25 UTC (permalink / raw)
To: Yicong Yang, Mark Brown; +Cc: linux-spi, prime.zeng, linuxarm
On 09/04/2021 08:17, Yicong Yang wrote:
> On 2021/4/8 21:51, Mark Brown wrote:
>> On Thu, Apr 08, 2021 at 07:31:45PM +0800, Yicong Yang wrote:
>>> The ACPI_PTR() and related IS_ENABLED(CONFIG_ACPI) protection is
>>> redundant, so drop them.
>>
>> The driver supports building without ACPI so are you sure these are
>> redundant?
>>
>
> yes. we're not using any acpi function in this driver. What ifdef macro
> and ACPI_PTR() protects is struct acpi_device_id, which is defined in
> mod_devicetable.h rather than acpi.h. It can be built when ACPI=n.
>
I asked the exact same thing, so another version with an updated commit
message with this info could be useful. Mark's call, though.
Thanks,
John
> some similiar cleanups can be found:
> 6c328c347ac3 ("platform/x86: i2c-multi-instantiate: Drop redundant ACPI_PTR()")
> 846afc1dbcbf ("iio: accel: bma220: Drop ACPI_PTR() and accompanying ifdeffery")
> [...]
>
> Thanks,
> Yicong
>
> .
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection
2021-04-09 14:25 ` John Garry
@ 2021-04-09 15:11 ` Mark Brown
0 siblings, 0 replies; 7+ messages in thread
From: Mark Brown @ 2021-04-09 15:11 UTC (permalink / raw)
To: John Garry; +Cc: Yicong Yang, linux-spi, prime.zeng, linuxarm
[-- Attachment #1: Type: text/plain, Size: 476 bytes --]
On Fri, Apr 09, 2021 at 03:25:49PM +0100, John Garry wrote:
> On 09/04/2021 08:17, Yicong Yang wrote:
> > yes. we're not using any acpi function in this driver. What ifdef macro
> > and ACPI_PTR() protects is struct acpi_device_id, which is defined in
> > mod_devicetable.h rather than acpi.h. It can be built when ACPI=n.
> I asked the exact same thing, so another version with an updated commit
> message with this info could be useful. Mark's call, though.
Yes, please.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-04-09 15:11 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-08 11:31 [PATCH 0/2] Minor updates for hisi-sfc-v3xx Yicong Yang
2021-04-08 11:31 ` [PATCH 1/2] spi: hisi-sfc-v3xx: fix potential irq race condition Yicong Yang
2021-04-08 11:31 ` [PATCH 2/2] spi: hisi-sfv-v3xx: drop unnecessary ACPI_PTR and related ifendif protection Yicong Yang
2021-04-08 13:51 ` Mark Brown
2021-04-09 7:17 ` Yicong Yang
2021-04-09 14:25 ` John Garry
2021-04-09 15:11 ` Mark Brown
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.