Re: [PATCH v8 1/6] Extcon (external connector): import Android'sswitch class and modify.

From: Kyungmin Park
Date: Thu Apr 19 2012 - 22:57:24 EST


On 4/20/12, Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> On Fri, Apr 20, 2012 at 11:46:25AM +0900, Kyungmin Park wrote:
>> On 4/20/12, Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>> > On Thu, Apr 19, 2012 at 11:41:33AM +0900, MyungJoo Ham wrote:
>> >> External connector class (extcon) is based on and an extension of
>> >> Android kernel's switch class located at linux/drivers/switch/.
>> >
>> > Oh come on, this still breaks the build, it is as if you didn't even
>> > test this at all, or modify anything since I reported it as a problem to
>> > you yesterday:
>> >
>> > drivers/extcon/extcon_class.c:79:6: error: redefinition of
>> > ‘extcon_set_state’
>> > include/linux/extcon.h:80:20: note: previous definition of
>> > ‘extcon_set_state’ was here
>> > drivers/extcon/extcon_class.c:170:5: error: redefinition of
>> > ‘extcon_dev_register’
>> > include/linux/extcon.h:67:19: note: previous definition of
>> > ‘extcon_dev_register’ was here
>> > drivers/extcon/extcon_class.c:214:6: error: redefinition of
>> > ‘extcon_dev_unregister’
>> > include/linux/extcon.h:73:20: note: previous definition of
>> > ‘extcon_dev_unregister’ was here
>> >
>> > You can do better than this, I know you can.
>>
>> Umm. can you show your EXTCON config? I think you build it as module.
>> it's tested it extcon on or not. anyway I'll test it as module and
>> check it.
>
> Yes, I selected to build it as a module, which, according to your patch,
> is a valid selection.

Found, need to add CONFIG_EXTCON_MODULE at below.

Send new series right now.

Thank you,
Kyungmin Park

+#if defined(CONFIG_EXTCON) || defined(CONFIG_EXTCON_MODULE)
+extern int extcon_dev_register(struct extcon_dev *edev, struct device *dev);
+extern void extcon_dev_unregister(struct extcon_dev *edev);
+
+static inline u32 extcon_get_state(struct extcon_dev *edev)
+{
+ return edev->state;
+}
+
+extern void extcon_set_state(struct extcon_dev *edev, u32 state);
+#else /* CONFIG_EXTCON */
+static inline int extcon_dev_register(struct extcon_dev *edev,
+ struct device *dev)
+{
+ return 0;
+}
+
+static inline void extcon_dev_unregister(struct extcon_dev *edev) { }
+
+static inline u32 extcon_get_state(struct extcon_dev *edev)
+{
+ return 0;
+}
+
+static inline void extcon_set_state(struct extcon_dev *edev, u32 state) { }
+#endif /* CONFIG_EXTCON */
>
> greg k-h
> --
> 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/
>
--
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/