Re: [PATCH v5] extcon: add Maxim MAX3355 driver

From: Sergei Shtylyov
Date: Wed Dec 23 2015 - 14:56:18 EST


Hello.

On 12/23/2015 05:17 AM, Chanwoo Choi wrote:

This patch depend on GPIOLIB configuration as following:
I modified it with following diff and applied it.

diff --git a/drivers/extcon/Kconfig b/drivers/extcon/Kconfig
index ba4db7d..3d89e60 100644
--- a/drivers/extcon/Kconfig
+++ b/drivers/extcon/Kconfig
@@ -54,6 +54,7 @@ config EXTCON_MAX14577

config EXTCON_MAX3355
tristate "Maxim MAX3355 USB OTG EXTCON Support"
+ depends on GPIOLIB || COMPILE_TEST

If it won't compile w/o gpiolib, what's the use of COMIPLE_TEST?
And no, it shouldn't depend on gpiolib. It has empty stubs for the case of CONFIG_GPIOLIB=n. Obviously something is wrong with the GPIO headers, I'll look into it.

Yes. When GPIOLIB is disabled, the build issue don't happen.

What? It surely does happen!

hmm....
Sure. you need to check the include/linux/gpio/consumer.h.

Because of build error happen, you miss to include the "linux/gpio/consumer.h"
header file in extcon-max3355.c. Please test it for enough time.

Yes, with this file #include'd, it build fine now.

because include/linux/gpio/consumer.h implement the dummy function
for all gpio functions if CONFIG_GPIOLIB is disabled.

Linus W. advised to #include this header explicitly -- I'll try and post.

Don't necessary. I already updated it including the "include/linux/gpio/consumer.h".

I saw that, yes.

For correct operation of max3355, you should add the dependency
to the extcon-max3355.c driver. This driver use the GPIO library
certainly.

I disagree. The driver will just cease to load in this case. I don't see why we need such dependency. Only compilation time dependencies should be
specified, I think.

This driver have to depend on GPIOLIB.
Why are you disagreeing the COMPILE_TEST dependency? It is just compile test
without anything.

I agree now. I still disagree about the gpiolib dependency though.

If gpiolib is disabled, extcon-max3355.c might not operate it correctly.

It'll just fail the probe, that's all.

Just this driver could be built without operation because gpiolib function
will not do the any behavior.

devm_gpiod_get() will just fail with -ENOSYS.

I think that it is not too much problem. I should send the pull request within this week.
If you want to need more discussion of extcon-max3355.c,
I will not include it on pull request for v4.5 because there is issue.

No, please include it into the pull request.

MBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/