What's preventing you from just picking at random an ID that hasn't been assigned?
If you're a small-volume project, then presumably people will need to have custom kernel patches anyway and will be unlikely to actually have a device with a conflicting ID.