Re: MTD UBI undefined reference failed to build OE gatesgarth branch

Hello,
The mtd build was fine, what could be missing not to link mtd?
$ ls 2020.04-r0/build/mx6ull_14x14_evk_nand_config/drivers/mtd
built-in.o mtdcore.su mtdpart.o mtd_uboot.o mtd-uclass.o nand spi mtdcore.o mtd.o mtdpart.su mtd_uboot.su mtd-uclass.su onenand ubi
On 1/15/21, Jupiter jupiter.hce@gmail.com wrote:
Hello,
I was able to build MTD, UBI and u-boot on OE version Zeus branch, but failed in gatesgarth branch. Here are errors, what could I be missing?
u-boot-imx/2020.04-r0/git/cmd/ubi.c:478: undefined reference to `mtd_probe_devices' u-boot-imx/2020.04-r0/git/cmd/ubi.c:484: undefined reference to `put_mtd_device' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/build.c:1161: undefined reference to `put_mtd_device' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/build.c:1229: undefined reference to `get_mtd_device_nm' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/io.c:1407: undefined reference to `mtd_read' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/io.c:279: undefined reference to `mtd_write'
u-boot-imx/2020.04-r0/git/drivers/video/cfb_console.c:2025: undefined reference to `video_hw_init' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:51: undefined reference to `dm_spi_claim_bus' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:55: undefined reference to `dm_spi_xfer' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:58: undefined reference to `dm_spi_release_bus' u-boot-imx/2020.04-r0/git/Makefile:1701: recipe for target 'u-boot' failed make[1]: *** [u-boot] Error 1 WARNING: exit code 1 from a shell command.
There are a couple of warning messages I am not sure if they are important or just nonsense, like CONFIG_DEFAULT_DEVICE_TREE has already been defined but it complained:
Device Tree Source is not correctly specified. Please define 'CONFIG_DEFAULT_DEVICE_TREE' or build with 'DEVICE_TREE=<device_tree>' argument
u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:51:8: warning: implicit declaration of function 'dm_spi_claim_bus'; did you mean 'spi_claim_bus'? [-Wimplicit-function-declaration] 51 | ret = dm_spi_claim_bus(dev); | ^~~~~~~~~~~~~~~~ | spi_claim_bus @ u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:55:8: warning: implicit declaration of function 'dm_spi_xfer'; did you mean 'spi_xfer'? [-Wimplicit-function-declaration] 55 | ret = dm_spi_xfer(dev, priv->nregs * 8, priv->buffer, NULL, | ^~~~~~~~~~~ | spi_xfer u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:58:2: warning: implicit declaration of function 'dm_spi_release_bus'; did you mean 'spi_release_bus'? [-Wimplicit-function-declaration] 58 | dm_spi_release_bus(dev); | ^~~~~~~~~~~~~~~~~~ | spi_release_bus
Appreciate your advice.
Thank you very much.
Kind regards,
- jupiter
-- "A man can fail many times, but he isn't a failure until he begins to blame somebody else." -- John Burroughs

Hello Jupiter,
On Fri, Jan 15, 2021 at 8:32 PM JH jupiter.hce@gmail.com wrote:
Hello,
The mtd build was fine, what could be missing not to link mtd?
$ ls 2020.04-r0/build/mx6ull_14x14_evk_nand_config/drivers/mtd
From all the build logs you have, it look to me that you're trying to
build the U-Boot delivered by NXP as a part of their BSP release.
In this case, I suggest you'd rather contact NXP support in order to address this failure, since it is a vendor BSP you're trying to upgrade.
In addition, I do not think that all mailing lists you've cross-posted your question to would be able to help you here: - linux-mtd list is not really appropriate to solve U-Boot build issues; - u-boot list is for upstream U-Boot patches and discussions, which is way past over 2020.04 version (not even considering that you're building U-Boot from NXP fork); - oe-core is not a proper list to post questions specific to one SOC vendor; - meta-freescale 'gatesgarth' branch does not have any U-Boot build configuration for mx6ull_14x14_evk_nand_config, the only available build config provided is for sd card;
Having all those points above, I'd suggest you contact NXP support at first to see if they can solve those build errors for you.
If you would find a solution, you can send a PR to meta-freescale to address it - this would be much appreciated.
built-in.o mtdcore.su mtdpart.o mtd_uboot.o mtd-uclass.o nand spi mtdcore.o mtd.o mtdpart.su mtd_uboot.su mtd-uclass.su onenand ubi
On 1/15/21, Jupiter jupiter.hce@gmail.com wrote:
Hello,
I was able to build MTD, UBI and u-boot on OE version Zeus branch, but failed in gatesgarth branch. Here are errors, what could I be missing?
u-boot-imx/2020.04-r0/git/cmd/ubi.c:478: undefined reference to `mtd_probe_devices' u-boot-imx/2020.04-r0/git/cmd/ubi.c:484: undefined reference to `put_mtd_device' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/build.c:1161: undefined reference to `put_mtd_device' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/build.c:1229: undefined reference to `get_mtd_device_nm' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/io.c:1407: undefined reference to `mtd_read' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/io.c:279: undefined reference to `mtd_write'
u-boot-imx/2020.04-r0/git/drivers/video/cfb_console.c:2025: undefined reference to `video_hw_init' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:51: undefined reference to `dm_spi_claim_bus' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:55: undefined reference to `dm_spi_xfer' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:58: undefined reference to `dm_spi_release_bus' u-boot-imx/2020.04-r0/git/Makefile:1701: recipe for target 'u-boot' failed make[1]: *** [u-boot] Error 1 WARNING: exit code 1 from a shell command.
There are a couple of warning messages I am not sure if they are important or just nonsense, like CONFIG_DEFAULT_DEVICE_TREE has already been defined but it complained:
Device Tree Source is not correctly specified. Please define 'CONFIG_DEFAULT_DEVICE_TREE' or build with 'DEVICE_TREE=<device_tree>' argument
u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:51:8: warning: implicit declaration of function 'dm_spi_claim_bus'; did you mean 'spi_claim_bus'? [-Wimplicit-function-declaration] 51 | ret = dm_spi_claim_bus(dev); | ^~~~~~~~~~~~~~~~ | spi_claim_bus @ u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:55:8: warning: implicit declaration of function 'dm_spi_xfer'; did you mean 'spi_xfer'? [-Wimplicit-function-declaration] 55 | ret = dm_spi_xfer(dev, priv->nregs * 8, priv->buffer, NULL, | ^~~~~~~~~~~ | spi_xfer u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:58:2: warning: implicit declaration of function 'dm_spi_release_bus'; did you mean 'spi_release_bus'? [-Wimplicit-function-declaration] 58 | dm_spi_release_bus(dev); | ^~~~~~~~~~~~~~~~~~ | spi_release_bus
Appreciate your advice.
Thank you very much.
Kind regards,
- jupiter
-- "A man can fail many times, but he isn't a failure until he begins to blame somebody else." -- John Burroughs
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#24489): https://lists.yoctoproject.org/g/meta-freescale/message/24489 Mute This Topic: https://lists.yoctoproject.org/mt/79697340/3617192 Group Owner: meta-freescale+owner@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/meta-freescale/unsub [andrey.z@gmail.com] -=-=-=-=-=-=-=-=-=-=-=-

Thanks for your response.
I am sorry, I thought that is what meta-freescale for, right? NXP might involve the coding, but is it integrated and released by Yocto / OE https://git.yoctoproject.org/cgit/cgit.cgi/meta-freescale/, right? I cloned meta-freescale from Yocto project: git://git.yoctoproject.org/meta-freescale, I am sorry, I really lost.

Hi Tom and Lauren,
I failed to build mx6ull with MTD and UBI in OE and meta-freescahe gatesgarth branch, please be aware that I was able to build it in zeus branch, it seems something broken in gatesgarth branch.
My apology I am not clear if it is the issue for MTD or u-boot or meta-freescale or OE so that I posted messages to several mailing lists for help. Andrey Zhizhikin was very unhappy about it, he believes it is your responsibility.
Could you please kindly respond if it is your jurisdiction and if you tested and passed mx6ull with MTD UBI in gatesgarth branch or not?
My apology again for crossing mailing lists.
Kind regards,
- jupiter
On 1/16/21, Andrey Zhizhikin andrey.z@gmail.com wrote:
Hello Jupiter,
On Fri, Jan 15, 2021 at 8:32 PM JH jupiter.hce@gmail.com wrote:
Hello,
The mtd build was fine, what could be missing not to link mtd?
$ ls 2020.04-r0/build/mx6ull_14x14_evk_nand_config/drivers/mtd
From all the build logs you have, it look to me that you're trying to build the U-Boot delivered by NXP as a part of their BSP release.
In this case, I suggest you'd rather contact NXP support in order to address this failure, since it is a vendor BSP you're trying to upgrade.
In addition, I do not think that all mailing lists you've cross-posted your question to would be able to help you here:
- linux-mtd list is not really appropriate to solve U-Boot build issues;
- u-boot list is for upstream U-Boot patches and discussions, which is
way past over 2020.04 version (not even considering that you're building U-Boot from NXP fork);
- oe-core is not a proper list to post questions specific to one SOC
vendor;
- meta-freescale 'gatesgarth' branch does not have any U-Boot build
configuration for mx6ull_14x14_evk_nand_config, the only available build config provided is for sd card;
Having all those points above, I'd suggest you contact NXP support at first to see if they can solve those build errors for you.
If you would find a solution, you can send a PR to meta-freescale to address it - this would be much appreciated.
built-in.o mtdcore.su mtdpart.o mtd_uboot.o mtd-uclass.o nand spi mtdcore.o mtd.o mtdpart.su mtd_uboot.su mtd-uclass.su onenand ubi
On 1/15/21, Jupiter jupiter.hce@gmail.com wrote:
Hello,
I was able to build MTD, UBI and u-boot on OE version Zeus branch, but failed in gatesgarth branch. Here are errors, what could I be missing?
u-boot-imx/2020.04-r0/git/cmd/ubi.c:478: undefined reference to `mtd_probe_devices' u-boot-imx/2020.04-r0/git/cmd/ubi.c:484: undefined reference to `put_mtd_device' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/build.c:1161: undefined reference to `put_mtd_device' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/build.c:1229: undefined reference to `get_mtd_device_nm' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/io.c:1407: undefined reference to `mtd_read' u-boot-imx/2020.04-r0/git/drivers/mtd/ubi/io.c:279: undefined reference to `mtd_write'
u-boot-imx/2020.04-r0/git/drivers/video/cfb_console.c:2025: undefined reference to `video_hw_init' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:51: undefined reference to `dm_spi_claim_bus' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:55: undefined reference to `dm_spi_xfer' u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:58: undefined reference to `dm_spi_release_bus' u-boot-imx/2020.04-r0/git/Makefile:1701: recipe for target 'u-boot' failed make[1]: *** [u-boot] Error 1 WARNING: exit code 1 from a shell command.
There are a couple of warning messages I am not sure if they are important or just nonsense, like CONFIG_DEFAULT_DEVICE_TREE has already been defined but it complained:
Device Tree Source is not correctly specified. Please define 'CONFIG_DEFAULT_DEVICE_TREE' or build with 'DEVICE_TREE=<device_tree>' argument
u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:51:8: warning: implicit declaration of function 'dm_spi_claim_bus'; did you mean 'spi_claim_bus'? [-Wimplicit-function-declaration] 51 | ret = dm_spi_claim_bus(dev); | ^~~~~~~~~~~~~~~~ | spi_claim_bus @ u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:55:8: warning: implicit declaration of function 'dm_spi_xfer'; did you mean 'spi_xfer'? [-Wimplicit-function-declaration] 55 | ret = dm_spi_xfer(dev, priv->nregs * 8, priv->buffer, NULL, | ^~~~~~~~~~~ | spi_xfer u-boot-imx/2020.04-r0/git/drivers/gpio/74x164_gpio.c:58:2: warning: implicit declaration of function 'dm_spi_release_bus'; did you mean 'spi_release_bus'? [-Wimplicit-function-declaration] 58 | dm_spi_release_bus(dev); | ^~~~~~~~~~~~~~~~~~ | spi_release_bus
Appreciate your advice.
Thank you very much.
Kind regards,
- jupiter
-- "A man can fail many times, but he isn't a failure until he begins to blame somebody else." -- John Burroughs
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#24489): https://lists.yoctoproject.org/g/meta-freescale/message/24489 Mute This Topic: https://lists.yoctoproject.org/mt/79697340/3617192 Group Owner: meta-freescale+owner@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/meta-freescale/unsub [andrey.z@gmail.com] -=-=-=-=-=-=-=-=-=-=-=-
-- Regards, Andrey.
-- "A man can fail many times, but he isn't a failure until he begins to blame somebody else." -- John Burroughs
participants (2)
-
Andrey Zhizhikin
-
Jupiter