Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kernel 4! #23

Open
ghost opened this issue Jul 24, 2016 · 27 comments
Open

Kernel 4! #23

ghost opened this issue Jul 24, 2016 · 27 comments

Comments

@ghost
Copy link

ghost commented Jul 24, 2016

Update to 4 kernel please!!!

@ghost
Copy link
Author

ghost commented Jul 24, 2016

@fmntf
Copy link
Collaborator

fmntf commented Jul 24, 2016

If you want to test Linux 4 on UDOO Quad or Dual, there is this port based on linux-imx: https://github.com/fmntf/linux_kernel/tree/4.1.15_1.x-udoo

Howver, UDOO Neo it not supported (the HDMI module must be ported).

@patrykk
Copy link
Collaborator

patrykk commented Aug 1, 2016

Hi, have you tried run udoo neo on your 4.1 kernel? I have problem with detection of mmc card. Maybe you have some other config or I do something wrong. I have run udoo neo on kernel 4.2 but with very ugly mmc driver. best regards. btw. There are very simple changes for magnetometer.

@fmntf
Copy link
Collaborator

fmntf commented Aug 1, 2016

No, since the HDMI module has to be ported, I did not even try to compile for UDOO Neo.
Anyway, if you have fixes for Neo, pull requests are welcome. After august I will work on Ubuntu 16.04 with Kernel 4.1

@fmntf
Copy link
Collaborator

fmntf commented Sep 20, 2016

An update for UDOO Neo. Now Linux 4.1 boots and HDMI driver has been ported.

@patrykk
Copy link
Collaborator

patrykk commented Oct 5, 2016

have you tested wifi on 4.1? Is it more stable than on backported 3.14 ?

@fmntf
Copy link
Collaborator

fmntf commented Oct 5, 2016

Using native 4.1 or the backported one on 3.14 (as on Android 6) should be the same. On Android 6, the 4.1 stack is definitely more stable. Remember also to upgrade the firmware blob.

@patrykk
Copy link
Collaborator

patrykk commented Oct 5, 2016

I have tested many firmware blobs with 3.14 and it wasn't usable. I'll try with 4.4.

@fmntf
Copy link
Collaborator

fmntf commented Oct 5, 2016

4.1 stack backported on 3.14 (see 4485040) plus firmware 0.36 (UDOOboard/android_device_udoo@6aeaf10) are really stable on Android 6 (continuously downloading several ~1GB files for hours, no disconnection nor instability).

@patrykk
Copy link
Collaborator

patrykk commented Dec 15, 2016

kernel doesnt boot on udoo quad. Probably problem with usb. Kernel doesnt support gcc 6.x and I have many warnings because of declared but not used macros/functions.

@patrykk
Copy link
Collaborator

patrykk commented Dec 15, 2016

BTW. All problems are simple to fix.

@fmntf
Copy link
Collaborator

fmntf commented Dec 15, 2016

If you have a fix you can submit a pull request.

@patrykk
Copy link
Collaborator

patrykk commented Dec 15, 2016

I'll do that when I'll run kernel on quad without problems.

@gorghino
Copy link

Did you succeed in compiling linux4.1 for UDOO NEO?
I tried with the branch 4.1.15_1.x-udoo.
But ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make dtbs -j5 fails:

DTC arch/arm/boot/dts/imx6sx-sdb-reva-ldo.dtb
Error: arch/arm/boot/dts/imx6sx-sabreauto-m4.dts:62.2-3 label or path, 'rpmsg', not found
FATAL ERROR: Syntax error parsing input tree
scripts/Makefile.lib:293: set di istruzioni per l'obiettivo "arch/arm/boot/dts/imx6sx-sabreauto-m4.dtb" non riuscito
make[1]: *** [arch/arm/boot/dts/imx6sx-sabreauto-m4.dtb] Errore 1
make[1]: *** Attesa per i processi non terminati....
arch/arm/Makefile:327: set di istruzioni per l'obiettivo "dtbs" non riuscito

@patrykk
Copy link
Collaborator

patrykk commented Jan 26, 2017

just get rid of the line with label rpmsg or 'make zImage modules'. But probably kernel will hangs during boot.

@fmntf
Copy link
Collaborator

fmntf commented Jan 26, 2017

This kernel works both for Neo and Quad. Do not use "make dtbs", it will build sabre stuff which does not compile. Use this line instead:

ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make imx6sx-udoo-neo-{basic,basicks,extended,full}{-hdmi,-lvds7,-lvds15,}{-m4,}.dtb zImage modules firmware -j8

@gorghino
Copy link

I'm not getting the zImage, because of this error (imho):

[...]
CC lib/proportions.o
drivers/char/imx_amp/imx_udooneo_mcc_tty.c:31:36: fatal error: linux/mcc_config_linux.h: File o directory non esistente
compilation terminated.
scripts/Makefile.build:258: set di istruzioni per l'obiettivo "drivers/char/imx_amp/imx_udooneo_mcc_tty.o" non riuscito
make[3]: *** [drivers/char/imx_amp/imx_udooneo_mcc_tty.o] Errore 1
scripts/Makefile.build:403: set di istruzioni per l'obiettivo "drivers/char/imx_amp" non riuscito
make[2]: *** [drivers/char/imx_amp] Errore 2
scripts/Makefile.build:403: set di istruzioni per l'obiettivo "drivers/char" non riuscito
make[1]: *** [drivers/char] Errore 2
make[1]: *** Attesa per i processi non terminati....
CC lib/radix-tree.o
CC drivers/clk/clk-mux.o
CC drivers/clk/clk-composite.o
CC [M] fs/nfs/callback.o
CC [M] fs/nfs/callback_xdr.o
CC [M] net/bluetooth/hidp/sock.o
CC lib/ratelimit.o
CC drivers/clk/clk-fractional-divider.o
CC lib/rbtree.o
CC drivers/clk/clk-gpio-gate.o
CC [M] sound/usb/stream.o
LD [M] net/bluetooth/hidp/hidp.o
LD net/bluetooth/rfcomm/built-in.o
CC lib/seq_buf.o
CC [M] net/bluetooth/rfcomm/core.o
CC [M] fs/nfs/callback_proc.o
CC drivers/clk/clk-conf.o
CC lib/sha1.o
CC [M] fs/nfs/nfs4namespace.o
LD net/bridge/netfilter/built-in.o
CC [M] net/bridge/br.o
CC lib/show_mem.o
LD drivers/clk/built-in.o
Makefile:947: set di istruzioni per l'obiettivo "drivers" non riuscito
make: *** [drivers] Errore 2
make: *** Attesa per i processi non terminati....

[...]

@fmntf
Copy link
Collaborator

fmntf commented Jan 26, 2017

Disable CONFIG_IMX_UDOONEO_MCC, it has to be ported to Linux 4.
NXP deprecated ttyMCC from 3.14.52 (UDOO Neo officially uses 3.14.56, which is a 3.14.28 + patches). They use RPMSG now. Arduino firmwares should use RPMSG for Linux 4, but the porting is unplanned.

If you use Linux 4 on UDOO Neo, you cannot use the internal serial port (you can still bridge UART6 with Serial1 btw).

@gorghino
Copy link

Uhmmm...that will make my attempt useless. I'm figuring out how to fix the pradeep bug but I'll open a new issue.

@graugans
Copy link

This posting from @tcmichals looks like he got some success in booting mainline kernel on UDOO Neo maybe he is willing to share his experience here. I guess the folks @UDOOboard are bussy with bringing UDOO x86 to life. Which is a bad thing for UDOO mx6. From @fmntf we know Arduino will not be possible with kernels > 3.14.28-udoo. Do you really need Arduino on the MX? There are several other possibilities available. I am open to work on a Port to latest Mainline Kernel.

@fmntf
Copy link
Collaborator

fmntf commented Jan 27, 2017

Hi @graugans, I know UDOO Neo can be booted with mainline kernel. We are in touch we NXP guys to merge our patches upstream, however I doubt there will be complete support in mainline kernel as we have in ours.

iMX6 is not abandoned however; or maybe there will be space for iMX8...

@graugans
Copy link

@fmntf are you working on getting Neo to vanilla kernel, or to the NXP kernels? Frankly I am quite unsure if i.mx8 will be a big shot. They announced it years ago. I hope they have fixed all those nasty bandwidth limittations and provide a stable OpenCL implementation.

@fmntf
Copy link
Collaborator

fmntf commented Jan 27, 2017

My work is (was) to boot the NXP 4.1 kernel. NXP folks are proposing patches to kernel.org to use the mainline. Probably they want to stay with the vanilla kernel for the future, instead of maintaining their own kernel.

@tcmichals
Copy link

@graugans Yes it is possible to get a mainline kernel running on the Neo, the last version I was wokring on was 4.6, it was used for wireless router project using the TI WiFi and USB wifi. Did not look into getting the M4 booting.
The last time I looked at this there were some issues on which direction for IPC for M4, MMC vs openAMP.
Would be nice to know which direction NXP is heading for IMX6SX.

@cyrilfr
Copy link

cyrilfr commented Jan 31, 2017

I tried to compile the Kernel 4.1.15 from @fmntf 's repository for the UDOO NEO. The TI Wireless module (wlcore) fails to compile:

| CC [M] drivers/video/fbdev/mxc/mxc_dcic.o
| CHK drivers/net/wireless/ti/wlcore/version.h
| cat: drivers/net/wireless/ti/wlcore/release_version.h: No such file or directory

@myoung34
Copy link

@fmntf on udoo quad, compiling with arch=ARM make zImage causes

$ ARCH=arm make zImage  -j8
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
  CHK     include/generated/bounds.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
make[3]: *** No rule to make target `drivers/char/imx_amp/imx_mcc_test.o', needed by `drivers/char/imx_amp/built-in.o'.  Stop.
make[2]: *** [drivers/char/imx_amp] Error 2
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
make: *** Waiting for unfinished jobs....

@fmntf
Copy link
Collaborator

fmntf commented Jun 22, 2017

Yes, ttyMCC module should be removed from the defconfig

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants