On Tue, Dec 20, 2022 at 12:12 PM Luis Chamberlain <mcgrof@xxxxxxxxxx> wrote: > > On Tue, Dec 20, 2022 at 08:58:36AM -0600, Allen Webb wrote: > > As mentioned in a different sub-thread this cannot be built as a > > module so I updated the commit message to: > > > > imx: Fix typo > > > > A one character difference in the name supplied to MODULE_DEVICE_TABLE > > breaks compilation for SOC_IMX8M after built-in modules can generate > > match-id based module aliases, so fix the typo. > > Are you saying that it is a typo *now* only, and fixing it does not fix > compilation now, but that fixing the typo will fix a future compilation > issue once your patches get merged for built-in module aliases? It was always a typo, it just doesn't affect the build because MODULE_DEVICE_TABLE is not doing anything for built-in modules before this patch series. > > > This was not caught earlier because SOC_IMX8M can not be built as a > > module and MODULE_DEVICE_TABLE is a no-op for built-in modules. > > Odd, so why did it use MODULE_DEVICE_TABLE then? What was the reason for > the driver having MODULE_DEVICE_TABLE if it was a no-op? That is a good question. I can only speculate as to the answer but it is plausible people copied a common pattern and since no breakage was noticed left it as is. It also raises the question how many modules have device tables, but do not call MODULE_DEVICE_TABLE since they are only ever built-in. Maybe there should be some build time enforcement mechanism to make sure that these are consistent. > > Luis