Re: [PATCH v3 4/6] usb: common: add API to get if the platform supports TPL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Tue, Aug 19, 2014 at 09:51:55AM +0800, Peter Chen wrote:
> The TPL (Targeted Peripheral List) is used for targeted hosts
> (non-PC hosts), and it can be used at USB OTG & EH certification
> and some specific products which need white list.
> 
> Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>
> ---
>  drivers/usb/common/usb-common.c |   15 +++++++++++++++
>  include/linux/usb/of.h          |    5 +++++
>  2 files changed, 20 insertions(+)
> 
> diff --git a/drivers/usb/common/usb-common.c b/drivers/usb/common/usb-common.c
> index 6dfd30a..b530fd4 100644
> --- a/drivers/usb/common/usb-common.c
> +++ b/drivers/usb/common/usb-common.c
> @@ -139,6 +139,21 @@ enum usb_device_speed of_usb_get_maximum_speed(struct device_node *np)
>  }
>  EXPORT_SYMBOL_GPL(of_usb_get_maximum_speed);
>  
> +/**
> + * of_usb_host_tpl_support - to get if Targeted Peripheral List is supported
> + * for given targeted hosts (non-PC hosts)
> + * @np: Pointer to the given device_node
> + *
> + * The function gets if the targeted hosts support TPL or not
> + */
> +bool of_usb_host_tpl_support(struct device_node *np)
> +{
> +	if (of_find_property(np, "tpl-support", NULL))
> +		return true;
> +
> +	return false;

please don't. Quite frankly, TPL support in Linux is quite braindead.
The way it's done it prevents USB from being used as an accessory port.

I talked to the USB-IF long ago and I was told that the spec is a bit
badly worded but preventing new drivers from being installed is wrong.

What we really need is a notification for when Linux can't bind any
driver to the new device. That would be an unsupported device.

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux