Skip to contentSkip to conversation

New: Buildroot fails when building GCNano binaries for the STM32MP1

Buildroot bugzilla at busybox.net 1 participant 5 messages Apr 6, 2020 – May 17, 2020

lore
Share & tools
lore
#0 lore raw

https://bugs.busybox.net/show_bug.cgi?id=12761

Bug ID: 12761
Summary: Buildroot fails when building GCNano binaries for the
STM32MP1
Product: buildroot
Version: unspecified
Hardware: All
OS: Linux
Status: NEW
Severity: normal
Priority: P5
Component: Other
Assignee: unassigned at buildroot.uclibc.org
Reporter: adecker246 at gmail.com
CC: buildroot at uclibc.org
Target Milestone: ---

Attempting to build for the STM32MP175C target with the GCNano binaries to enable the GPU. I get the following error.

https://pastebin.com/9VHWLK4D

CC [M]
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dma.o /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dma.c:
In function ?_DmaAlloc?:
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dma.c:167:11:
error: implicit declaration of function ?dma_alloc_writecombine?; did you mean
?pgprot_writecombine?? [-Werror=implicit-function-declaration]
167 | = dma_alloc_writecombine(galcore_device, NumPages * PAGE_SIZE,

&mdlPriv->dmaHandle, gfp);
      |           ^~~~~~~~~~~~~~~~~~~~~~
      |           pgprot_writecombine

/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dma.c:167:9:
error: assignment to ?gctPOINTER? {aka ?void *?} from ?int? makes pointer from
integer without a cast [-Werror=int-conversion]
167 | = dma_alloc_writecombine(galcore_device, NumPages * PAGE_SIZE,
&mdlPriv->dmaHandle, gfp);
| ^
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dma.c:
In function ?_DmaFree?:
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dma.c:288:5:
error: implicit declaration of function ?dma_free_writecombine?; did you mean
?pgprot_writecombine?? [-Werror=implicit-function-declaration]
288 | dma_free_writecombine(galcore_device, Mdl->numPages * PAGE_SIZE,

mdlPriv->kvaddr, mdlPriv->dmaHandle);
      |     ^~~~~~~~~~~~~~~~~~~~~
      |     pgprot_writecombine

/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dma.c:
In function ?_DmaMmap?:
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dma.c:324:9:
error: implicit declaration of function ?dma_mmap_writecombine?
[-Werror=implicit-function-declaration]
324 | if (dma_mmap_writecombine(gcvNULL,

      |         ^~~~~~~~~~~~~~~~~~~~~
Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#2 lore raw

[Buildroot] [Bug 12761] Buildroot fails when building GCNano binaries for the STM32MP1

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12761

--- Comment #1 from Thomas Petazzoni <[email protected]> --- Thanks for the bug report. Could you try building against the 4.19 kernel provided by ST at https://github.com/STMicroelectronics/linux/ ? It is very likely that the kernel driver they ship as part of the gcnano-binaries package builds fine only with their 4.19 kernel.

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#3 lore raw

[Buildroot] [Bug 12761] Buildroot fails when building GCNano binaries for the STM32MP1

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12761

--- Comment #2 from Aaron Decker <[email protected]> ---
I gave that a shot using the tarball from the ST github. I get a different error:

https://pastebin.com/UL4vfkNG

In file included from /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_linux.h:61,
from
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:62:
./include/linux/module.h:133:6: error: ?init_module? specifies less restrictive
attribute than its target ?gpu_init?: ?cold? [-Werror=missing-attributes]

  133 |  int init_module(void) __attribute__((alias(#initfn)));
      |      ^~~~~~~~~~~
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:1267:1:
note: in expansion of macro ?module_init?
 1267 | module_init(gpu_init);
      | ^~~~~~~~~~~
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:1224:19:
note: ?init_module? target declared here
 1224 | static int __init gpu_init(void)
      |                   ^~~~~~~~

In file included from /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_linux.h:61,
from
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:62:
./include/linux/module.h:139:7: error: ?cleanup_module? specifies less
restrictive attribute than its target ?gpu_exit?: ?cold?
[-Werror=missing-attributes]

  139 |  void cleanup_module(void) __attribute__((alias(#exitfn)));
      |       ^~~~~~~~~~~~~~
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:1268:1:
note: in expansion of macro ?module_exit?
 1268 | module_exit(gpu_exit);
      | ^~~~~~~~~~~
/home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:1255:20:
note: ?cleanup_module? target declared here
 1255 | static void __exit gpu_exit(void)
      |                    ^~~~~~~~
Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#4 lore raw

[Buildroot] [Bug 12761] Buildroot fails when building GCNano binaries for the STM32MP1

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12761

Thomas Petazzoni <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Status|NEW                         |RESOLVED
         Resolution|---                         |INVALID

--- Comment #3 from Thomas Petazzoni <[email protected]> --- (In reply to Aaron Decker from comment #2)
You're seeing an issue in include/linux/module.h due to a compatibility problem with gcc 9.x. However, this was fixed in upstream Linux and in the ST fork, since version v4.19-stm32mp-r1.5.

Could you try building with v4.19-stm32mp-r3.1 instead ?

Nevertheless, this is not a Buildroot bug.

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.