/*
> + * usb_charger_unregister() - Unregister a usb charger.
> + * @uchger - the usb charger to be unregistered.
> + */
> +static int usb_charger_unregister(struct usb_charger *uchger)
> +{
> + ida_simple_remove(_charger_ida, uchger->id);
> + sysfs_remove_groups(&g
* @uchger - the usb charger to be unregistered.
> + */
> +static int usb_charger_unregister(struct usb_charger *uchger)
> +{
> + ida_simple_remove(_charger_ida, uchger->id);
> + sysfs_remove_groups(>gadget->dev.kobj, usb_charger_groups);
> +
> + mutex_lock(_lo
b_charger_type type,
> + unsigned int cur_limit);
> +extern int usb_charger_set_cur_limit_by_gadget(struct usb_gadget *gadget,
> +unsigned int cur_limit);
> +
> +extern int usb_charger_plug_by_gadget(struct usb_gadget *gadget,
> + unsigned long state);
> +extern enum usb_charger_type usb_charger_get_type(struct usb_charger
> *uchger);
> +extern int usb_charger_detect_type(struct usb_charger *uchger);
> +extern enum usb_charger_state usb_charger_get_state(struct usb_charger
> *uchger);
> +
> +extern int usb_charger_init(struct usb_gadget *ugadget);
> +extern int usb_charger_exit(struct usb_gadget *ugadget);
You don't need to put "extern" here.
Please use "scripts/checkpatch.pl --strict" to check this.
> +#else
> +static inline struct usb_charger *usb_charger_find_by_name(const char *name)
> +{
> + return ERR_PTR(-ENODEV);
> +}
> +
> +static inline int usb_charger_register_notify(struct usb_charger *uchger,
> + struct notifier_block *nb)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_unregister_notify(struct usb_charger *uchger,
> + struct notifier_block *nb)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_set_current(struct usb_charger *uchger,
> + struct usb_charger_current *values)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_get_current(struct usb_charger *uchger,
> + unsigned int *min, unsigned int *max)
> +{
> + return 0;
> +}
> +
> +static inline int
> +usb_charger_set_cur_limit_by_type(struct usb_charger *uchger,
> + enum usb_charger_type type,
> + unsigned int cur_limit)
> +{
> + return 0;
> +}
> +
> +static inline int
> +usb_charger_set_cur_limit_by_gadget(struct usb_gadget *gadget,
> + unsigned int cur_limit)
> +{
> + return 0;
> +}
> +
> +static inline enum usb_charger_type
> +usb_charger_get_type(struct usb_charger *uchger)
> +{
> + return UNKNOWN_TYPE;
> +}
> +
> +static inline enum usb_charger_state
> +usb_charger_get_state(struct usb_charger *uchger)
> +{
> + return USB_CHARGER_REMOVE;
> +}
> +
> +static inline int usb_charger_detect_type(struct usb_charger *uchger)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_plug_by_gadget(struct usb_gadget *gadget,
> + unsigned long state)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_init(struct usb_gadget *ugadget)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_exit(struct usb_gadget *ugadget)
> +{
> + return 0;
> +}
> +#endif
> +
> +#endif /* __LINUX_USB_CHARGER_H__ */
> diff --git a/include/uapi/linux/usb/charger.h
> b/include/uapi/linux/usb/charger.h
> new file mode 100644
> index 000..3c56ec4
> --- /dev/null
> +++ b/include/uapi/linux/usb/charger.h
> @@ -0,0 +1,31 @@
> +/*
> + * This file defines the USB charger type and state that are needed for
> + * USB device APIs.
> + */
> +
> +#ifndef _UAPI__LINUX_USB_CHARGER_H
> +#define _UAPI__LINUX_USB_CHARGER_H
> +
> +/*
> + * USB charger type:
> + * SDP (Standard Downstream Port)
> + * DCP (Dedicated Charging Port)
> + * CDP (Charging Downstream Port)
> + * ACA (Accessory Charger Adapters)
> + */
> +enum usb_charger_type {
> + UNKNOWN_TYPE,
> + SDP_TYPE,
> + DCP_TYPE,
> + CDP_TYPE,
> + ACA_TYPE,
> +};
> +
> +/* USB charger state */
> +enum usb_charger_state {
> + USB_CHARGER_DEFAULT,
> + USB_CHARGER_PRESENT,
> + USB_CHARGER_REMOVE,
> +};
> +
> +#endif /* _UAPI__LINUX_USB_CHARGER_H */
Best regards,
Lu Baolu
unsigned int *min, unsigned int *max);
> +
> +extern int usb_charger_set_cur_limit_by_type(struct usb_charger *uchger,
> + enum usb_charger_type type,
> + unsigned int cur_limit);
> +extern int usb_charger_set_cur_limit_by_gadget(struct usb_gadget *gadget,
> +unsigned int cur_limit);
> +
> +extern int usb_charger_plug_by_gadget(struct usb_gadget *gadget,
> + unsigned long state);
> +extern enum usb_charger_type usb_charger_get_type(struct usb_charger
> *uchger);
> +extern int usb_charger_detect_type(struct usb_charger *uchger);
> +extern enum usb_charger_state usb_charger_get_state(struct usb_charger
> *uchger);
> +
> +extern int usb_charger_init(struct usb_gadget *ugadget);
> +extern int usb_charger_exit(struct usb_gadget *ugadget);
You don't need to put "extern" here.
Please use "scripts/checkpatch.pl --strict" to check this.
> +#else
> +static inline struct usb_charger *usb_charger_find_by_name(const char *name)
> +{
> + return ERR_PTR(-ENODEV);
> +}
> +
> +static inline int usb_charger_register_notify(struct usb_charger *uchger,
> + struct notifier_block *nb)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_unregister_notify(struct usb_charger *uchger,
> + struct notifier_block *nb)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_set_current(struct usb_charger *uchger,
> + struct usb_charger_current *values)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_get_current(struct usb_charger *uchger,
> + unsigned int *min, unsigned int *max)
> +{
> + return 0;
> +}
> +
> +static inline int
> +usb_charger_set_cur_limit_by_type(struct usb_charger *uchger,
> + enum usb_charger_type type,
> + unsigned int cur_limit)
> +{
> + return 0;
> +}
> +
> +static inline int
> +usb_charger_set_cur_limit_by_gadget(struct usb_gadget *gadget,
> + unsigned int cur_limit)
> +{
> + return 0;
> +}
> +
> +static inline enum usb_charger_type
> +usb_charger_get_type(struct usb_charger *uchger)
> +{
> + return UNKNOWN_TYPE;
> +}
> +
> +static inline enum usb_charger_state
> +usb_charger_get_state(struct usb_charger *uchger)
> +{
> + return USB_CHARGER_REMOVE;
> +}
> +
> +static inline int usb_charger_detect_type(struct usb_charger *uchger)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_plug_by_gadget(struct usb_gadget *gadget,
> + unsigned long state)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_init(struct usb_gadget *ugadget)
> +{
> + return 0;
> +}
> +
> +static inline int usb_charger_exit(struct usb_gadget *ugadget)
> +{
> + return 0;
> +}
> +#endif
> +
> +#endif /* __LINUX_USB_CHARGER_H__ */
> diff --git a/include/uapi/linux/usb/charger.h
> b/include/uapi/linux/usb/charger.h
> new file mode 100644
> index 000..3c56ec4
> --- /dev/null
> +++ b/include/uapi/linux/usb/charger.h
> @@ -0,0 +1,31 @@
> +/*
> + * This file defines the USB charger type and state that are needed for
> + * USB device APIs.
> + */
> +
> +#ifndef _UAPI__LINUX_USB_CHARGER_H
> +#define _UAPI__LINUX_USB_CHARGER_H
> +
> +/*
> + * USB charger type:
> + * SDP (Standard Downstream Port)
> + * DCP (Dedicated Charging Port)
> + * CDP (Charging Downstream Port)
> + * ACA (Accessory Charger Adapters)
> + */
> +enum usb_charger_type {
> + UNKNOWN_TYPE,
> + SDP_TYPE,
> + DCP_TYPE,
> + CDP_TYPE,
> + ACA_TYPE,
> +};
> +
> +/* USB charger state */
> +enum usb_charger_state {
> + USB_CHARGER_DEFAULT,
> + USB_CHARGER_PRESENT,
> + USB_CHARGER_REMOVE,
> +};
> +
> +#endif /* _UAPI__LINUX_USB_CHARGER_H */
Best regards,
Lu Baolu
his rule to those IN
endpoints that currently operating in SuperSpeed mode.
Fixes: 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear Stall EP
command")
Cc: <sta...@vger.kernel.org> # v4.7+
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
v1->v2:
- check current
his rule to those IN
endpoints that currently operating in SuperSpeed mode.
Fixes: 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear Stall EP
command")
Cc: # v4.7+
Signed-off-by: Lu Baolu
---
v1->v2:
- check current instead of maximum speed
- improve the commit message
drivers/u
ent xhci driver just
returns success. This misleads usb core to continue the enumeration
by reading the device descriptor, which will result in failure, and
users will get a misleading message like "device descriptor read/8,
error -110".
Cc: <sta...@vger.kernel.org> # v4.3+
Sign
ent xhci driver just
returns success. This misleads usb core to continue the enumeration
by reading the device descriptor, which will result in failure, and
users will get a misleading message like "device descriptor read/8,
error -110".
Cc: # v4.3+
Signed-off-by: Lu Baolu
---
v2-&g
Hi Felipe,
On 09/08/2016 04:41 PM, Lu Baolu wrote:
> Commit 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear
> Stall EP command") sets ClearPendIN bit for all IN endpoints in
> v2.60a+ cores no matter which speed mode they're in. This causes
> Clear Stall EP c
Hi Felipe,
On 09/08/2016 04:41 PM, Lu Baolu wrote:
> Commit 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear
> Stall EP command") sets ClearPendIN bit for all IN endpoints in
> v2.60a+ cores no matter which speed mode they're in. This causes
> Clear Stall EP c
Hi Greg,
On 09/08/2016 04:58 PM, Greg KH wrote:
> On Thu, Sep 08, 2016 at 03:29:25PM +0800, Lu Baolu wrote:
>> Hi Greg,
>>
>> On 09/08/2016 02:38 PM, Greg KH wrote:
>>> On Thu, Sep 08, 2016 at 08:41:02AM +0800, Lu Baolu wrote:
>>>> xhci_setup_device(
Hi Greg,
On 09/08/2016 04:58 PM, Greg KH wrote:
> On Thu, Sep 08, 2016 at 03:29:25PM +0800, Lu Baolu wrote:
>> Hi Greg,
>>
>> On 09/08/2016 02:38 PM, Greg KH wrote:
>>> On Thu, Sep 08, 2016 at 08:41:02AM +0800, Lu Baolu wrote:
>>>> xhci_setup_device(
e only need to apply this rule to those IN
endpoints in SuperSpeed mode.
Fixes: 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear Stall EP
command")
Cc: sta...@vger.kernel.org # 4.7+
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
drivers/usb/dwc3/gadget.c | 3 ++
e only need to apply this rule to those IN
endpoints in SuperSpeed mode.
Fixes: 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear Stall EP
command")
Cc: sta...@vger.kernel.org # 4.7+
Signed-off-by: Lu Baolu
---
drivers/usb/dwc3/gadget.c | 3 ++-
1 file changed, 2 insertions
Hi Felipe,
On 09/07/2016 11:05 AM, Lu Baolu wrote:
> Commit 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear
> Stall EP command") causes Clear Stall EP command failure on Intel
> Cherry Trail devices. This patch add a quirk to avoid setting this
> bit for those
Hi Felipe,
On 09/07/2016 11:05 AM, Lu Baolu wrote:
> Commit 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear
> Stall EP command") causes Clear Stall EP command failure on Intel
> Cherry Trail devices. This patch add a quirk to avoid setting this
> bit for those
Hi Greg,
On 09/08/2016 02:38 PM, Greg KH wrote:
> On Thu, Sep 08, 2016 at 08:41:02AM +0800, Lu Baolu wrote:
>> xhci_setup_device() should return failure with correct error number
>> when xhci host has died, removed or halted.
>>
>> Cc: sta...@vger.kernel.org # 4.3+
&g
Hi Greg,
On 09/08/2016 02:38 PM, Greg KH wrote:
> On Thu, Sep 08, 2016 at 08:41:02AM +0800, Lu Baolu wrote:
>> xhci_setup_device() should return failure with correct error number
>> when xhci host has died, removed or halted.
>>
>> Cc: sta...@vger.kernel.org # 4.3+
&g
xhci_setup_device() should return failure with correct error number
when xhci host has died, removed or halted.
Cc: sta...@vger.kernel.org # 4.3+
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
v1->v2:
- fix email mismatch issue
drivers/usb/host/xhci.c | 4 +++-
1 file c
xhci_setup_device() should return failure with correct error number
when xhci host has died, removed or halted.
Cc: sta...@vger.kernel.org # 4.3+
Signed-off-by: Lu Baolu
---
v1->v2:
- fix email mismatch issue
drivers/usb/host/xhci.c | 4 +++-
1 file changed, 3 insertions(+), 1 delet
Hi Mathias,
On 09/07/2016 02:51 PM, Mathias Nyman wrote:
> On 07.09.2016 09:22, Lu Baolu wrote:
>> From: "Lu, Baolu" <baolu...@linux.intel.com>
>>
>> xhci_setup_device() should return failure with correct error number
>> when xhci host has died, removed
Hi Mathias,
On 09/07/2016 02:51 PM, Mathias Nyman wrote:
> On 07.09.2016 09:22, Lu Baolu wrote:
>> From: "Lu, Baolu"
>>
>> xhci_setup_device() should return failure with correct error number
>> when xhci host has died, removed or halted.
>>
>
&g
From: "Lu, Baolu" <baolu...@linux.intel.com>
xhci_setup_device() should return failure with correct error number
when xhci host has died, removed or halted.
Cc: sta...@vger.kernel.org # 4.3+
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
drivers/usb/host/xhci.c |
From: "Lu, Baolu"
xhci_setup_device() should return failure with correct error number
when xhci host has died, removed or halted.
Cc: sta...@vger.kernel.org # 4.3+
Signed-off-by: Lu Baolu
---
drivers/usb/host/xhci.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
Commit 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear
Stall EP command") causes Clear Stall EP command failure on Intel
Cherry Trail devices. This patch add a quirk to avoid setting this
bit for those Intel devices.
Cc: sta...@vger.kernel.org # 4.7+
Signed-off-by: Lu Ba
Commit 50c763f8c1bac ("usb: dwc3: Set the ClearPendIN bit on Clear
Stall EP command") causes Clear Stall EP command failure on Intel
Cherry Trail devices. This patch add a quirk to avoid setting this
bit for those Intel devices.
Cc: sta...@vger.kernel.org # 4.7+
Signed-off-by
s patch could be backported to stable kernels with version later
than v3.14.
Cc: sta...@vger.kernel.org # 3.14+
Cc: Alan Stern <st...@rowland.harvard.edu>
Cc: Roger Tseng <rogera...@realtek.com>
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
drivers/mfd/rtsx_usb.c | 1
s patch could be backported to stable kernels with version later
than v3.14.
Cc: sta...@vger.kernel.org # 3.14+
Cc: Alan Stern
Cc: Roger Tseng
Signed-off-by: Lu Baolu
---
drivers/mfd/rtsx_usb.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/mfd/rtsx_us
issue. It could be backported to stable kernel
with version later than v3.15.
Cc: sta...@vger.kernel.org # 3.15+
Cc: Alan Stern <st...@rowland.harvard.edu>
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
Suggested-by: Alan Stern <st...@rowland.harvard.edu>
Acked-by: Ala
issue. It could be backported to stable kernel
with version later than v3.15.
Cc: sta...@vger.kernel.org # 3.15+
Cc: Alan Stern
Signed-off-by: Lu Baolu
Suggested-by: Alan Stern
Acked-by: Alan Stern
---
v1->v2:
- Set retval to -ETIMEDOUT after timed out
- Removed the kernel log in patch d
Hi,
On 08/10/2016 10:16 PM, Alan Stern wrote:
> On Wed, 10 Aug 2016, Lu Baolu wrote:
>
>> In sg_timeout(), req->status is set to "-ETIMEDOUT" before calling
>> into usb_sg_cancel(). usb_sg_cancel() will do nothing and return
>> directly if req->
Hi,
On 08/10/2016 10:16 PM, Alan Stern wrote:
> On Wed, 10 Aug 2016, Lu Baolu wrote:
>
>> In sg_timeout(), req->status is set to "-ETIMEDOUT" before calling
>> into usb_sg_cancel(). usb_sg_cancel() will do nothing and return
>> directly if req->
issue. It could be backported to stable kernel
with version later than v3.15.
Cc: sta...@vger.kernel.org # 3.15+
Cc: Alan Stern <st...@rowland.harvard.edu>
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
v1->v2:
- Set retval to -ETIMEDOUT after timed out
- Removed the
issue. It could be backported to stable kernel
with version later than v3.15.
Cc: sta...@vger.kernel.org # 3.15+
Cc: Alan Stern
Signed-off-by: Lu Baolu
---
v1->v2:
- Set retval to -ETIMEDOUT after timed out
- Removed the kernel log in patch description
drivers/usb/misc/usbtest.c | 7
Hi,
On 08/09/2016 10:18 PM, Alan Stern wrote:
> On Tue, 9 Aug 2016, Felipe Balbi wrote:
>
>> Hi,
>>
>> Lu Baolu <baolu...@linux.intel.com> writes:
>>> In sg_timeout(), req->status is set to "-ETIMEDOUT" before calling
>>> int
Hi,
On 08/09/2016 10:18 PM, Alan Stern wrote:
> On Tue, 9 Aug 2016, Felipe Balbi wrote:
>
>> Hi,
>>
>> Lu Baolu writes:
>>> In sg_timeout(), req->status is set to "-ETIMEDOUT" before calling
>>> into usb_sg_cancel(). usb_sg_cancel() will do
x60
[55321.955800] [] SyS_ioctl+0x79/0x90
[55321.955806] [] entry_SYSCALL_64_fastpath+0x1e/0xa
This patch fixes this driver hang. It should be back-ported to stable
kernel with version after v3.15.
Cc: sta...@vger.kernel.org
Cc: Alan Stern <st...@rowland.harvard.edu>
Signed-off-by: Lu Baolu
x60
[55321.955800] [] SyS_ioctl+0x79/0x90
[55321.955806] [] entry_SYSCALL_64_fastpath+0x1e/0xa
This patch fixes this driver hang. It should be back-ported to stable
kernel with version after v3.15.
Cc: sta...@vger.kernel.org
Cc: Alan Stern
Signed-off-by: Lu Baolu
---
drivers/usb/misc/usbtest.c | 1 -
Hi,
On 07/12/2016 09:48 AM, Lipengcheng wrote:
> Hi,
>
>> -Original Message-----
>> From: Lu Baolu [mailto:baolu...@linux.intel.com]
>> Sent: Tuesday, July 12, 2016 8:42 AM
>> To: Lipengcheng; gre...@linuxfoundation.org; st...@rowland.harvard.edu;
>>
Hi,
On 07/12/2016 09:48 AM, Lipengcheng wrote:
> Hi,
>
>> -Original Message-----
>> From: Lu Baolu [mailto:baolu...@linux.intel.com]
>> Sent: Tuesday, July 12, 2016 8:42 AM
>> To: Lipengcheng; gre...@linuxfoundation.org; st...@rowland.harvard.edu;
>>
er driver? Is your usb device self powered?
Best regards,
Lu Baolu
>
> Signed-off-by: Pengcheng Li <lpc...@hisilicon.com>
> ---
> drivers/usb/core/hub.c | 6 +-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/h
er driver? Is your usb device self powered?
Best regards,
Lu Baolu
>
> Signed-off-by: Pengcheng Li
> ---
> drivers/usb/core/hub.c | 6 +-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
> index bee1351..cd71bb
Hi,
On 07/07/2016 05:53 AM, Joseph Salisbury wrote:
> BugLink: http://bugs.launchpad.net/bugs/1498667
>
> As reported in BugLink, this device has an issue with Linux Power Management
> so
s/"Linux Power Management"/"USB Link Power Management"
Best reg
Hi,
On 07/07/2016 05:53 AM, Joseph Salisbury wrote:
> BugLink: http://bugs.launchpad.net/bugs/1498667
>
> As reported in BugLink, this device has an issue with Linux Power Management
> so
s/"Linux Power Management"/"USB Link Power Management"
Best reg
Hi Greg,
On 06/18/2016 08:58 AM, Greg Kroah-Hartman wrote:
> On Thu, Jun 16, 2016 at 08:27:41AM +0800, Lu Baolu wrote:
>> Hi Greg,
>>
>> On 06/09/2016 10:39 AM, Lu Baolu wrote:
>>> Hi Greg,
>>>
>>> On 06/08/2016 11:45 PM, Greg Kroah-Hartman wrote:
&
Hi Greg,
On 06/18/2016 08:58 AM, Greg Kroah-Hartman wrote:
> On Thu, Jun 16, 2016 at 08:27:41AM +0800, Lu Baolu wrote:
>> Hi Greg,
>>
>> On 06/09/2016 10:39 AM, Lu Baolu wrote:
>>> Hi Greg,
>>>
>>> On 06/08/2016 11:45 PM, Greg Kroah-Hartman wrote:
&
Hi Greg,
On 06/09/2016 10:39 AM, Lu Baolu wrote:
> Hi Greg,
>
> On 06/08/2016 11:45 PM, Greg Kroah-Hartman wrote:
>> On Wed, Jun 08, 2016 at 03:56:04PM +0800, Lu Baolu wrote:
>>> Hi Greg,
>>>
>>> On 06/08/2016 12:45 PM, Greg Kroah-Hartman wrote:
>>
Hi Greg,
On 06/09/2016 10:39 AM, Lu Baolu wrote:
> Hi Greg,
>
> On 06/08/2016 11:45 PM, Greg Kroah-Hartman wrote:
>> On Wed, Jun 08, 2016 at 03:56:04PM +0800, Lu Baolu wrote:
>>> Hi Greg,
>>>
>>> On 06/08/2016 12:45 PM, Greg Kroah-Hartman wrote:
>>
Hi Felipe and Heikki,
On 06/08/2016 12:42 PM, Greg Kroah-Hartman wrote:
> On Thu, Jun 02, 2016 at 09:37:23AM +0800, Lu Baolu wrote:
>> Add support to retrieve fixed voltage configure information through
>> ACPI interface. This is needed for Intel Bay Trail devices, where a
Hi Felipe and Heikki,
On 06/08/2016 12:42 PM, Greg Kroah-Hartman wrote:
> On Thu, Jun 02, 2016 at 09:37:23AM +0800, Lu Baolu wrote:
>> Add support to retrieve fixed voltage configure information through
>> ACPI interface. This is needed for Intel Bay Trail devices, where a
Hi Greg,
On 06/08/2016 11:45 PM, Greg Kroah-Hartman wrote:
> On Wed, Jun 08, 2016 at 03:56:04PM +0800, Lu Baolu wrote:
>> Hi Greg,
>>
>> On 06/08/2016 12:45 PM, Greg Kroah-Hartman wrote:
>>> On Thu, Jun 02, 2016 at 09:37:28AM +0800, Lu Baolu wrote:
>>>>
Hi Greg,
On 06/08/2016 11:45 PM, Greg Kroah-Hartman wrote:
> On Wed, Jun 08, 2016 at 03:56:04PM +0800, Lu Baolu wrote:
>> Hi Greg,
>>
>> On 06/08/2016 12:45 PM, Greg Kroah-Hartman wrote:
>>> On Thu, Jun 02, 2016 at 09:37:28AM +0800, Lu Baolu wrote:
>>>>
Hi Greg,
On 06/08/2016 12:45 PM, Greg Kroah-Hartman wrote:
> On Thu, Jun 02, 2016 at 09:37:28AM +0800, Lu Baolu wrote:
>> In some Intel platforms, a single usb port is shared between USB host
>> and device controllers. The shared port is under control of a switch
>> which is
Hi Greg,
On 06/08/2016 12:45 PM, Greg Kroah-Hartman wrote:
> On Thu, Jun 02, 2016 at 09:37:28AM +0800, Lu Baolu wrote:
>> In some Intel platforms, a single usb port is shared between USB host
>> and device controllers. The shared port is under control of a switch
>> which is
ine, even thought it
has nothing to do with my system, only because the two sides of my port
mux device is a host and peripheral controller.
Why?
Best regards,
Lu Baolu
ine, even thought it
has nothing to do with my system, only because the two sides of my port
mux device is a host and peripheral controller.
Why?
Best regards,
Lu Baolu
TG/dual-role code, my understanding is that "dual-role" is a
"reduced OTG" which is for DRD devices lacking of some OTG negotiation
protocols.
We really can't say "it's the scope of OTG/dual-role" whenever it comes to
"host and peripheral".
Best regards,
Lu Baolu
TG/dual-role code, my understanding is that "dual-role" is a
"reduced OTG" which is for DRD devices lacking of some OTG negotiation
protocols.
We really can't say "it's the scope of OTG/dual-role" whenever it comes to
"host and peripheral".
Best regards,
Lu Baolu
have concern, do dual role switch through
> OTG/dual-role core, not do it by itself.
That really depends on how do you define "dual role". Can you please
provide an unambiguous definition of "dual role" used in OTG/dual-role
framework?
Best regards,
Lu Baolu
>
>&
have concern, do dual role switch through
> OTG/dual-role core, not do it by itself.
That really depends on how do you define "dual role". Can you please
provide an unambiguous definition of "dual role" used in OTG/dual-role
framework?
Best regards,
Lu Baolu
>
>&
I/testing/sysfs-bus-platform.
>
> I agree with Roger that the dual-role switch part in your code is better
> to use OTG framework to reduce redundancy.
I agree that we should use dual-role framework for role switch. Actually,
my code doesn't do this work. It only adds a generic framework for port
mux device and two mux device drivers used in Intel platform.
Best regards,
Lu Baolu
I/testing/sysfs-bus-platform.
>
> I agree with Roger that the dual-role switch part in your code is better
> to use OTG framework to reduce redundancy.
I agree that we should use dual-role framework for role switch. Actually,
my code doesn't do this work. It only adds a generic framework for port
mux device and two mux device drivers used in Intel platform.
Best regards,
Lu Baolu
Hi Peter,
On 06/06/2016 09:25 AM, Peter Chen wrote:
> On Sun, Jun 05, 2016 at 02:55:56PM +0800, Lu Baolu wrote:
>> Hi Peter,
>>
>> On 06/04/2016 10:28 AM, Peter Chen wrote:
>>> On Sat, Jun 04, 2016 at 12:06:06AM +0800, Lu Baolu wrote:
>>>>> from my po
Hi Peter,
On 06/06/2016 09:25 AM, Peter Chen wrote:
> On Sun, Jun 05, 2016 at 02:55:56PM +0800, Lu Baolu wrote:
>> Hi Peter,
>>
>> On 06/04/2016 10:28 AM, Peter Chen wrote:
>>> On Sat, Jun 04, 2016 at 12:06:06AM +0800, Lu Baolu wrote:
>>>>> from my po
Hi Peter,
On 06/06/2016 10:05 AM, Peter Chen wrote:
> On Sun, Jun 05, 2016 at 04:46:55PM +0800, Lu Baolu wrote:
>> Hi,
>>
>> On 06/05/2016 04:33 PM, Jun Li wrote:
>>>> Port mux is part of dual role switch, but not the whole thing.
>>>>> Dual role sw
Hi Peter,
On 06/06/2016 10:05 AM, Peter Chen wrote:
> On Sun, Jun 05, 2016 at 04:46:55PM +0800, Lu Baolu wrote:
>> Hi,
>>
>> On 06/05/2016 04:33 PM, Jun Li wrote:
>>>> Port mux is part of dual role switch, but not the whole thing.
>>>>> Dual role sw
Hi Jun,
On 06/06/2016 09:08 AM, Jun Li wrote:
>
>> -Original Message-
>> From: Lu Baolu [mailto:baolu...@linux.intel.com]
>> Sent: Sunday, June 05, 2016 4:47 PM
>> To: Jun Li <jun...@nxp.com>; Peter Chen <hzpeterc...@gmail.com>
>> Cc
Hi Jun,
On 06/06/2016 09:08 AM, Jun Li wrote:
>
>> -Original Message-
>> From: Lu Baolu [mailto:baolu...@linux.intel.com]
>> Sent: Sunday, June 05, 2016 4:47 PM
>> To: Jun Li ; Peter Chen
>> Cc: felipe.ba...@linux.intel.com; Mathias Nyman ;
>> Gre
ent, we
> should improve it, Roger also provide an example of dual role switch with
> USB3 based on his OTG core.
Why do we need an OTG framework to support a device driver?
Is it something like a bus or class driver?
Best regards,
Lu Baolu
ent, we
> should improve it, Roger also provide an example of dual role switch with
> USB3 based on his OTG core.
Why do we need an OTG framework to support a device driver?
Is it something like a bus or class driver?
Best regards,
Lu Baolu
Hi Peter,
On 06/04/2016 10:28 AM, Peter Chen wrote:
> On Sat, Jun 04, 2016 at 12:06:06AM +0800, Lu Baolu wrote:
>>> from my point,it is a dual-role switch
>>> driver too,
>> No, it's not a dual-role switch driver, but a driver for USB port
>> multiplexing.
>&
Hi Peter,
On 06/04/2016 10:28 AM, Peter Chen wrote:
> On Sat, Jun 04, 2016 at 12:06:06AM +0800, Lu Baolu wrote:
>>> from my point,it is a dual-role switch
>>> driver too,
>> No, it's not a dual-role switch driver, but a driver for USB port
>> multiplexing.
>&
Hi Peter,
On 06/03/2016 03:41 PM, Peter Chen wrote:
> On Thu, Jun 02, 2016 at 09:37:24AM +0800, Lu Baolu wrote:
>> > Several Intel platforms implement USB dual role by having completely
>> > separate xHCI and dwc3 IPs in PCH or SOC silicons. These two IPs share
&
Hi Peter,
On 06/03/2016 03:41 PM, Peter Chen wrote:
> On Thu, Jun 02, 2016 at 09:37:24AM +0800, Lu Baolu wrote:
>> > Several Intel platforms implement USB dual role by having completely
>> > separate xHCI and dwc3 IPs in PCH or SOC silicons. These two IPs share
&
by Chanwoo Choi]
Signed-off-by: David Cohen <david.a.co...@linux.intel.com>
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
Reviewed-by: Heikki Krogerus <heikki.kroge...@linux.intel.com>
Reviewed-by: Felipe Balbi <ba...@kernel.org>
Reviewed-by: Chanwoo Choi <cw00.c...@samsun
Add support to retrieve fixed voltage configure information through
ACPI interface. This is needed for Intel Bay Trail devices, where a
GPIO is used to control the USB vbus.
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
drivers/regulator/fixed.
by Chanwoo Choi]
Signed-off-by: David Cohen
Signed-off-by: Lu Baolu
Reviewed-by: Heikki Krogerus
Reviewed-by: Felipe Balbi
Reviewed-by: Chanwoo Choi
---
drivers/usb/mux/Kconfig | 13 +++
drivers/usb/mux/Makefile | 1 +
drivers/usb/mux/portmux-intel-gpio.c | 183
Add support to retrieve fixed voltage configure information through
ACPI interface. This is needed for Intel Bay Trail devices, where a
GPIO is used to control the USB vbus.
Signed-off-by: Lu Baolu
---
drivers/regulator/fixed.c | 46 ++
1 file changed
that users are able
to control the port role from user space.
Some other archs (e.g. Renesas R-Car gen2 SoCs) need an external mux to
swap usb roles as well. This code could also be leveraged for those archs.
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
Reviewed-by: Heikki Krogerus <hei
that users are able
to control the port role from user space.
Some other archs (e.g. Renesas R-Car gen2 SoCs) need an external mux to
swap usb roles as well. This code could also be leveraged for those archs.
Signed-off-by: Lu Baolu
Reviewed-by: Heikki Krogerus
Reviewed-by: Felipe Balbi
mux switch.
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
Reviewed-by: Felipe Balbi <ba...@kernel.org>
---
drivers/usb/host/pci-quirks.c| 42 +++-
drivers/usb/host/xhci-ext-caps.h | 2 ++
2 files changed, 43 insertions(+), 1 deletion(-)
per platform_no_drv_owner.cocci]
Suggested-by: David Cohen <david.a.co...@linux.intel.com>
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
Reviewed-by: Felipe Balbi <ba...@kernel.org>
Acked-by: Lee Jones <lee.jo...@linaro.org>
---
drivers/mfd/Kconfig| 8 +++
mux switch.
Signed-off-by: Lu Baolu
Reviewed-by: Felipe Balbi
---
drivers/usb/host/pci-quirks.c| 42 +++-
drivers/usb/host/xhci-ext-caps.h | 2 ++
2 files changed, 43 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/host/pci-quirks.c b/drivers/usb
per platform_no_drv_owner.cocci]
Suggested-by: David Cohen
Signed-off-by: Lu Baolu
Reviewed-by: Felipe Balbi
Acked-by: Lee Jones
---
drivers/mfd/Kconfig| 8 +
drivers/mfd/Makefile | 1 +
drivers/mfd/intel-vuport.c | 86 ++
3 files
Several Intel PCHs and SOCs have an internal mux that is used to
share one USB port between device controller and host controller.
The mux is handled through the Dual Role Configuration Register.
Signed-off-by: Heikki Krogerus <heikki.kroge...@linux.intel.com>
Signed-off-by: Lu Baolu
Several Intel PCHs and SOCs have an internal mux that is used to
share one USB port between device controller and host controller.
The mux is handled through the Dual Role Configuration Register.
Signed-off-by: Heikki Krogerus
Signed-off-by: Lu Baolu
Signed-off-by: Wu Hao
Reviewed-by: Felipe
mux could be found in Cherry Trail and
Broxton devices.
All patches have been verified on Intel's BayTrail, CherryTrail,
and Broxton P platforms.
Lu Baolu (7):
regulator: fixed: add support for ACPI interface
usb: mux: add generic code for dual role port mux
usb: mux: add driver
mux could be found in Cherry Trail and
Broxton devices.
All patches have been verified on Intel's BayTrail, CherryTrail,
and Broxton P platforms.
Lu Baolu (7):
regulator: fixed: add support for ACPI interface
usb: mux: add generic code for dual role port mux
usb: mux: add driver
Add a maintainer entry for Intel USB dual role mux drivers and
add myself as a maintainer.
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
MAINTAINERS | 10 ++
1 file changed, 10 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 7304d2e..56a98d2 100644
--- a/MAINT
Add a maintainer entry for Intel USB dual role mux drivers and
add myself as a maintainer.
Signed-off-by: Lu Baolu
---
MAINTAINERS | 10 ++
1 file changed, 10 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 7304d2e..56a98d2 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
Hi,
On 05/30/2016 08:53 PM, Lu Baolu wrote:
> Hi Heikki,
>
> On 05/30/2016 04:16 PM, Heikki Krogerus wrote:
>> Hi Baolu,
>>
>> On Mon, May 30, 2016 at 01:51:44PM +0800, Lu Baolu wrote:
>>> Add a maintainer entry for Intel USB dual role mux driver
Hi,
On 05/30/2016 08:53 PM, Lu Baolu wrote:
> Hi Heikki,
>
> On 05/30/2016 04:16 PM, Heikki Krogerus wrote:
>> Hi Baolu,
>>
>> On Mon, May 30, 2016 at 01:51:44PM +0800, Lu Baolu wrote:
>>> Add a maintainer entry for Intel USB dual role mux driver
Hi Heikki,
On 05/30/2016 04:16 PM, Heikki Krogerus wrote:
> Hi Baolu,
>
> On Mon, May 30, 2016 at 01:51:44PM +0800, Lu Baolu wrote:
>> Add a maintainer entry for Intel USB dual role mux drivers and
>> add myself as a maintainer.
>>
>> Signed-off-by: L
Hi Heikki,
On 05/30/2016 04:16 PM, Heikki Krogerus wrote:
> Hi Baolu,
>
> On Mon, May 30, 2016 at 01:51:44PM +0800, Lu Baolu wrote:
>> Add a maintainer entry for Intel USB dual role mux drivers and
>> add myself as a maintainer.
>>
>> Signed-off-by: Lu B
mux switch.
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
Reviewed-by: Felipe Balbi <ba...@kernel.org>
---
drivers/usb/host/pci-quirks.c| 42 +++-
drivers/usb/host/xhci-ext-caps.h | 2 ++
2 files changed, 43 insertions(+), 1 deletion(-)
per platform_no_drv_owner.cocci]
Suggested-by: David Cohen <david.a.co...@linux.intel.com>
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
Reviewed-by: Felipe Balbi <ba...@kernel.org>
Acked-by: Lee Jones <lee.jo...@linaro.org>
---
drivers/mfd/Kconfig| 8 +++
Add a maintainer entry for Intel USB dual role mux drivers and
add myself as a maintainer.
Signed-off-by: Lu Baolu <baolu...@linux.intel.com>
---
MAINTAINERS | 10 ++
1 file changed, 10 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index ed1229e..edaeebe 100644
--- a/MAINT
Add a maintainer entry for Intel USB dual role mux drivers and
add myself as a maintainer.
Signed-off-by: Lu Baolu
---
MAINTAINERS | 10 ++
1 file changed, 10 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index ed1229e..edaeebe 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
mux switch.
Signed-off-by: Lu Baolu
Reviewed-by: Felipe Balbi
---
drivers/usb/host/pci-quirks.c| 42 +++-
drivers/usb/host/xhci-ext-caps.h | 2 ++
2 files changed, 43 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/host/pci-quirks.c b/drivers/usb
per platform_no_drv_owner.cocci]
Suggested-by: David Cohen
Signed-off-by: Lu Baolu
Reviewed-by: Felipe Balbi
Acked-by: Lee Jones
---
drivers/mfd/Kconfig| 8 +
drivers/mfd/Makefile | 1 +
drivers/mfd/intel-vuport.c | 86 ++
3 files
1101 - 1200 of 1892 matches
Mail list logo