Re: How to set USB_PORT_QUIRK_OLD_SCHEME on an usb-port ?

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

 



Hi,

On 10/2/20 10:10 PM, Hans de Goede wrote:

<snip>

Still a bit slower then the old probe method, but much better then the
new probe method with the default initial_descriptor_timeout.

Yeah, okay, it's good to see that the patch helps.  But I'm doubtful
that the change it makes will become part of the standard (i.e., not
for embedded systems) kernel.

I still think the udev approach will be best.  That will require adding
various *_uevent_* calls in usb_hub_create_port_device, and adding a
.uevent member to usb_port_device_type.

So I tried this and it does not work, the problem is that
dev_uevent_filter() from drivers/base/core.c
filters out uevents for anything which is not either a device
on a bus or a class device:

static int dev_uevent_filter(struct kset *kset, struct kobject *kobj)
{
         struct kobj_type *ktype = get_ktype(kobj);

         if (ktype == &device_ktype) {
                 struct device *dev = kobj_to_dev(kobj);
                 if (dev->bus)
                         return 1;
                 if (dev->class)
                         return 1;
         }
         return 0;
}

p.s.

I guess that this means that it is best to just learn to live
with the somewhat long enumeration time with the new scheme in
this somewhat specific case, that is fine with me.

Regards,

Hans




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

  Powered by Linux