On 09/04/2013 07:38 AM, Sergei Shtylyov wrote: > Hello. > > On 04-09-2013 18:23, Mike Dunn wrote: > >>>> +#ifdef CONFIG_OF >>>> +/* use the platform_device id table for OF match table data */ >>>> +static struct of_device_id pwm_of_match[] = { >>>> + { .compatible = "marvell,pxa25x-pwm", .data = &pwm_id_table[0] }, >>>> + { .compatible = "marvell,pxa27x-pwm", .data = &pwm_id_table[1] }, >>>> + { .compatible = "marvell,pxa168-pwm", .data = &pwm_id_table[2] }, >>>> + { .compatible = "marvell,pxa910-pwm", .data = &pwm_id_table[3] }, >>>> + { } >>>> +}; >>>> +MODULE_DEVICE_TABLE(of, pwm_of_match); > >>> Are PXA2xx and PXA3xx PWM impleemntations not all the same ? If so, why not just >>> stick with pxa25x-pwm only for all of the CPUs (aka. the lowest CPU model). Then >>> the table would have but a single entry. > >> I'm just echoing the existing platform_device_id table... > >> static const struct platform_device_id pwm_id_table[] = { >> /* PWM has_secondary_pwm? */ >> { "pxa25x-pwm", 0 }, >> { "pxa27x-pwm", HAS_SECONDARY_PWM }, >> { "pxa168-pwm", 0 }, >> { "pxa910-pwm", 0 }, >> { }, >> }; >> MODULE_DEVICE_TABLE(platform, pwm_id_table); > > Unlike 'struct platform_device_id', the "compatible" property can't have > wildcards such as "pxa25x-pwm". You should choose one model (which e.g. was > produced first in the PXA25x series) and use that. Thanks Sergei, I forgot about that. I also forgot to add a file to Documentation/devicetree/bindings/pwm/ Looks like I have more work. Mike -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html