On Tue, 5 May 2026 at 19:03, Bernhard Beschow <[email protected]> wrote: > > > > Am 30. April 2026 18:26:02 UTC schrieb "Matyáš Bobek" > <[email protected]>: > >This series adds emulation of the FlexCAN CAN controller, version 2, > >found in NXP i.MX6 series SoCs. The controller is integrated into > >fsl-imx6 and the Sabrelite ARM board. > > > >The chip has two FlexCAN controllers, but the Linux Sabrelite > >device tree enables only one by default. Linux kernel with both > >controllers enabled has been tested to work properly (using a custom > >device tree). > >See docs/system/devices/can.rst for an example of QEMU command line > >invocation. > > > >More information about the implementation can be found in my bachelor > >thesis [1]. > > > >The headers (struct FlexcanRegs and flexcan_regs.h macros) were copied > >from the Linux kernel. Marc Kleine-Budde is the copyright holder. He > >has been kindly asked to provide consent, to confirm his approval for > >the inclusion of said header fragments into QEMU. The approval is still > >pending, hopefully it will be resolved soon. I will update the patchset > >on request if another wording/solution for the copyright statement is > >proposed/requested. > > Tested with imx8mp-evk: > https://github.com/shentok/qemu/commits/imx8mp-flexcan/ which works > excellent. Next step after this series is merged would be upstreaming that > branch. > > I guess the only open issue is the licensing of struct FlexcanRegs [1] which > originates from Linux? How do we proceed here? > > Best regards, > Bernhard > > [1] https://lore.kernel.org/qemu-devel/[email protected]/
Could you say what the problem is? In general there is no problem with taking header structs from the Linux kernel, as they are GPL-2-only and that is a QEMU-compatible license. The relevant source files or pieces of source files would need to be noted as 2-only rather than our default of 2-or-later, but that is doable -- we already do that for other things we have borrowed from the kernel. thanks -- PMM
