# LimeSuite NG Build Error Ubuntu 24.04 (xmit / circ\_buf)

**URL:** https://discourse.myriadrf.org/t/limesuite-ng-build-error-ubuntu-24-04-xmit-circ-buf/8623
**Category:** Lime Suite
**Created:** [16 January 2025 22:51 UTC](https://discourse.myriadrf.org/t/limesuite-ng-build-error-ubuntu-24-04-xmit-circ-buf/8623 "2025-01-16T22:51:48Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![DrGalahad](https://avatars.discourse-cdn.com/v4/letter/d/7ba0ec/32.png) [@DrGalahad](https://discourse.myriadrf.org/u/DrGalahad)
#### Post date: [16 January 2025 22:51 UTC](https://discourse.myriadrf.org/t/limesuite-ng-build-error-ubuntu-24-04-xmit-circ-buf/8623/1 "2025-01-16T22:51:48Z")

</div>

I have Ubuntu 24.04 booting on a T2 mac mini, kernel version 6.12.9-1-t2-noble.  
I’m running into build errors complaining about circ\_buf and xmit. I found a couple XTRX-related threads about it ([A](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1077678), [B](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1077217), [C](https://github.com/myriadrf/xtrx_linux_pcie_drv/issues/19), and [D](https://github.com/myriadrf/xtrx_linux_pcie_drv/pull/20)) and I have some idea what’s going on, but none of them made it clear (to me) how to proceed. Any help would be appreciated, full error below.

```auto
[1%] Building Linux kernel module (limepcie) in dir: /home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c: In function ‘limeuart_start_tx’:
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:164:41: error: ‘struct uart_state’ has no member named ‘xmit’
  164 | struct circ_buf *xmit = &port->state->xmit;
      | ^~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:173:15: error: implicit declaration of function ‘uart_circ_empty’; did you mean ‘uart_lsr_tx_empty’? [-Werror=implicit-function-declaration]
  173 | else if (!uart_circ_empty(xmit))
      | ^ ~~~~~~~~~~~~~~
      | uart_lsr_tx_empty
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:175:20: error: invalid use of undefined type ‘struct circ_buf’
  175 | while (xmit->head != xmit->tail)
      | ^~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:175:34: error: invalid use of undefined type ‘struct circ_buf’
  175 | while (xmit->head != xmit->tail)
      | ^~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:177:22: error: invalid use of undefined type ‘struct circ_buf’
  177 | ch = xmit->buf[xmit->tail];
      | ^~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:177:32: error: invalid use of undefined type ‘struct circ_buf’
  177 | ch = xmit->buf[xmit->tail];
      | ^~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:178:17: error: invalid use of undefined type ‘struct circ_buf’
  178 | xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
      | ^~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:178:31: error: invalid use of undefined type ‘struct circ_buf’
  178 | xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
      | ^~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:184:9: error: implicit declaration of function ‘uart_circ_chars_pending’ [-Werror=implicit-function-declaration]
  184 | if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
      | ^ ~~~~~~~~~~~~~~~~~~~~~~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c: At top level:
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:434:15: error: initialization of ‘void (*)(struct platform_device *)’ from incompatible pointer type ‘int (*)(struct platform_device *)’ [-Werror=incompatible-pointer-types]
  434 | .remove = limeuart_remove,
      | ^ ~~~~~~~~~~~~~~
/home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.c:434:15: note: (near initialization for ‘limeuart_platform_driver.<anonymous>.remove’)
cc1: some warnings being treated as errors
make[5]: *** [scripts/Makefile.build:229: /home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9/limeuart.o] Error 1
make[4]: *** [/usr/src/linux-headers-6.12.7-3-t2-noble/Makefile:1937: /home/galahad/LimeSuiteNG/build/drivers/linux/limepcie/limepcie-0.1.9] Error 2
make[3]: *** [Makefile:224: __sub-make] Error 2
make[2]: *** [drivers/linux/limepcie/CMakeFiles/limepcie.dir/build.make:84: drivers/linux/limepcie/limepcie-0.1.9/limepcie.ko] Error 2
make[1]: *** [CMakeFiles/Makefile2:1129: drivers/linux/limepcie/CMakeFiles/limepcie.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

```

---

<div class="post-metadata">

### Author: ![ricardas](https://yyz2.discourse-cdn.com/flex034/user_avatar/discourse.myriadrf.org/ricardas/32/86_2.png) [@ricardas](https://discourse.myriadrf.org/u/ricardas)
#### Post date: [17 January 2025 01:37 UTC](https://discourse.myriadrf.org/t/limesuite-ng-build-error-ubuntu-24-04-xmit-circ-buf/8623/2 "2025-01-17T01:37:43Z")

</div>

FIxed [limeuart: replace circ\_buf with kfifo to allow compiling for latest k… · myriadrf/LimeSuiteNG@4a7a05c · GitHub](https://github.com/myriadrf/LimeSuiteNG/commit/4a7a05c34a9da3b052e68089c75c7bdeb5be418f)

---

<div class="post-metadata">

### Author: ![DrGalahad](https://avatars.discourse-cdn.com/v4/letter/d/7ba0ec/32.png) [@DrGalahad](https://discourse.myriadrf.org/u/DrGalahad)
#### Post date: [17 January 2025 02:25 UTC](https://discourse.myriadrf.org/t/limesuite-ng-build-error-ubuntu-24-04-xmit-circ-buf/8623/3 "2025-01-17T02:25:31Z")

</div>

Updated to `clang-format` on the develop branch. Build succeeded!  
I ran my test script (soapy + python) and I got good data with both a Lime USB and Mini 2, seems like it’s working correctly.  
Thanks for the help!
