Re: [PATCH 2/6] mailbox/omap: add support for parsing dt devices
From: Suman Anna <hidden>
Date: 2014-06-30 19:34:32
Also in:
linux-arm-kernel, linux-omap, lkml
Hi Pavel,
quoted
quoted
quoted
The non-DT support has to be maintained for now to not break OMAP3 legacy boot, and the legacy-style code will be cleaned up once OMAP3 is also converted to DT-boot only.quoted
@@ -587,24 +606,157 @@ static int omap_mbox_unregister(struct omap_mbox_device *mdev) return 0; } +static const struct omap_mbox_device_data omap2_data = { + .num_users = 4, + .num_fifos = 6, + .intr_type = MBOX_INTR_CFG_TYPE1, +}; + +static const struct omap_mbox_device_data omap3_data = { + .num_users = 2, + .num_fifos = 2, + .intr_type = MBOX_INTR_CFG_TYPE1, +}; + +static const struct omap_mbox_device_data am335x_data = { + .num_users = 4, + .num_fifos = 8, + .intr_type = MBOX_INTR_CFG_TYPE2, +};So you use compatible strings to look up 3 integers. Would it be better to have num_users/num_fifos/intr_type directly in the device tree? That should be cleaner and more flexible... If you do that, would it be possible to have share compatible string?Yeah, I have actually encoded the .num_users and .num_fifos in DT in the previous version [1] with shared compatible strings, but dropped those properties in favour of adding minimal custom properties to DT based on some offline IRC comments. I have no objections either way, but there is really nothing to be gained from minimizing compatible strings.Actually, I'd guess best solution would be to do both: have it encoded in device tree _and_ have separate compatible string for each version (in case there are other differences). You'd still get rid of the table...
Do note that the .intr_type has to with the register layout rather than a physical property (mainly to distinguish the pre-OMAP4 IP register layout), so I am not convinced that belongs to DT. This is the reason why I didn't represent it in DT even in the previous version. The other two are HW IP design parameters, so in general putting them in DT isn't completely a bad idea, but I will wait to see if there are any further comments on this from Tony or DT maintainers before I make changes. regards Suman