On Mon, Dec 24, 2012 at 10:25:00PM -0700, Stephen Warren wrote: > On 12/21/2012 11:50 PM, Terje Bergström wrote: > > On 21.12.2012 16:36, Thierry Reding wrote: > >> On Fri, Dec 21, 2012 at 01:39:21PM +0200, Terje Bergstrom wrote: > >>> +static struct platform_driver tegra_drm_platform_driver = { > >>> + .driver = { > >>> + .name = "tegradrm", > >> > >> This should be "tegra-drm" to match the module name. > > > > We've actually created two problems. > > > > First is that the device name should match driver name which should > > match module name. But host1x doesn't know the module name of tegradrm. > > There's no hard requirement for the device/driver name to match the > module name. It's good thing to do, but nothing will blow up if it don't > (modules can use MODULE_ALIAS() to declare which drivers they expose). > > But, what's the problem with host1x knowing the driver name; the host1x > driver and tegradrm driver are both part of the same code-base, so this > seems trivial to achieve.
Indeed. If we define the name to match the tegra-drm module name, then just changing the above line is fine. This doesn't need to be automatic. Making sure that both strings match in both drivers is enough. > > Second problem is that host1x driver creates tegradrm device even if > > tegradrm isn't loaded to system. > > That's fine. If there's no driver, the device simply won't be probe()d. > That's just like a device node existing in device tree, but the driver > for it not being enabled in the kernel, or the relevant module not being > inserted. > > > These mean that the device has to be created in tegra-drm module to have > > I definitely disagree here. Instead of going over this back and forth, I've decided to rewrite this patch from scratch the way I think it should be done. Maybe that'll make things clearer. I haven't tested it on real hardware yet because I don't have access over the holidays, but I'll post the patch once I've verified that it actually works. The code is based on patches 1-4 of this series and is meant to replace patch 5. Thierry
pgp7wavbtHlkV.pgp
Description: PGP signature