RobertCNelson / bb-kernel

MIT License
130 stars 102 forks source link

‘__mod_of_device_table’ aliased to undefined symbol #35

Open giuliomoro opened 7 years ago

giuliomoro commented 7 years ago

Trying to build tag 3.8.13-xenomai-r81. I succesfully built with the default config file, then I try to rebuid with the following changes to the config file

@@ -1457 +1457 @@ CONFIG_REGMAP_I2C=y
-CONFIG_REGMAP_SPI=y
+CONFIG_REGMAP_SPI=m
@@ -3337,3 +3337,3 @@ CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-CONFIG_SND=y
-CONFIG_SND_TIMER=y
-CONFIG_SND_PCM=y
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
@@ -3341,2 +3341,2 @@ CONFIG_SND_HWDEP=m
-CONFIG_SND_RAWMIDI=y
-CONFIG_SND_COMPRESS_OFFLOAD=y
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_COMPRESS_OFFLOAD=m
@@ -3347,2 +3347,2 @@ CONFIG_SND_OSSEMUL=y
-CONFIG_SND_MIXER_OSS=y
-CONFIG_SND_PCM_OSS=y
+CONFIG_SND_MIXER_OSS=m
+CONFIG_SND_PCM_OSS=m
@@ -3351 +3351 @@ CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_HRTIMER=y
+CONFIG_SND_HRTIMER=m
@@ -3384,2 +3384,2 @@ CONFIG_SND_USB_6FIRE=m
-CONFIG_SND_SOC=y
-CONFIG_SND_AM33XX_SOC=y
+CONFIG_SND_SOC=m
+CONFIG_SND_AM33XX_SOC=m
@@ -3387 +3387 @@ CONFIG_SND_AM33XX_SOC=y
-CONFIG_SND_SOC_I2C_AND_SPI=y
+CONFIG_SND_SOC_I2C_AND_SPI=m
@@ -3389,4 +3389,4 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
-CONFIG_SND_SOC_PCM512x=y
-CONFIG_SND_SOC_PCM512x_I2C=y
-CONFIG_SND_SOC_PCM512x_SPI=y
-CONFIG_SND_SOC_TLV320AIC3X=y
+CONFIG_SND_SOC_PCM512x=m
+CONFIG_SND_SOC_PCM512x_I2C=m
+CONFIG_SND_SOC_PCM512x_SPI=m
+CONFIG_SND_SOC_TLV320AIC3X=m
@@ -3417 +3417 @@ CONFIG_HID_CHICONY=y
-CONFIG_HID_PRODIKEYS=y
+CONFIG_HID_PRODIKEYS=m

I run ./tools/rebuild.sh and I obtain the following error

sound/soc/davinci/davinci-evm.c: In function ‘evm_tda998x_init’:
sound/soc/davinci/davinci-evm.c:151:22: warning: unused variable ‘codec_dai’ [-Wunused-variable]
sound/soc/davinci/davinci-evm.c: At top level:
sound/soc/davinci/davinci-evm.c:373:34: error: ‘__mod_of_device_table’ aliased to undefined symbol ‘davinci_mcasp_dt_ids’
make[3]: *** [sound/soc/davinci/davinci-evm.o] Error 1
make[2]: *** [sound/soc/davinci] Error 2
make[1]: *** [sound/soc] Error 2
make: *** [sound] Error 2
make: *** Waiting for unfinished jobs....
RobertCNelson commented 7 years ago

Oh your on 3.8.13, yeah for me that's eol. I'm only touching it for gcc/new distro re-builds. It's config is "very" fragile, in most cases you'll find a fix in a newer/later kernel for the issue you see..

Regards,

giuliomoro commented 7 years ago

oh, thanks :(

RobertCNelson commented 7 years ago

PS, i'm bettting your most interested in Xenomai.. Give this a shot:

git clone https://github.com/RobertCNelson/ti-linux-kernel-dev
cd ti-linux-kernel-dev/
git checkout origin/ti-linux-xenomai-4.4.y -b tmp
./build_deb.sh

You get DT overlays plus xenomai

debian@beaglebone:~$ dmesg | grep Xenomai
[    1.662891] [Xenomai] scheduling class idle registered.
[    1.662905] [Xenomai] scheduling class rt registered.
[    1.663079] I-pipe: head domain Xenomai registered.
[    1.666337] [Xenomai] Cobalt v3.0.3 (Groovy Cosmic Halo)
giuliomoro commented 7 years ago

Precious! How did I manage to miss this for so long?

RobertCNelson commented 7 years ago

Well i only enabled it 7 hours ago.. ;) Another user had asked, i started looking into it and xenomai now has a v4.4.x-ipipe driver.. Sadly it's Xenomai v3.x, whereas our 3.8.13-bone was v2.6.x based.. So some xenomai userspace changes will be needed..

Regards,

giuliomoro commented 7 years ago

that's great news, thanks