[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4688: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4690: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4691: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4692: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
Parallella Community • View topic - FPGA access in Linux 4.4

FPGA access in Linux 4.4

Using Zynq Programmable Logic and Xilinx tools to create custom board configurations

FPGA access in Linux 4.4

Postby sebraa » Fri May 06, 2016 2:51 pm

sebraa
 
Posts: 495
Joined: Mon Jul 21, 2014 7:54 pm

Re: FPGA access in Linux 4.4

Postby kirill » Sat May 07, 2016 12:23 pm

Not sure why you are having issues with UIO sebraa, looks like you enabled the right modules in config and supplied correct kernel cmdline. I have been able to use uio driver using 2016.3 release. I also tried to enable synz fpga module, but it fails to load with some error, I haven't investigated further. Instead I switched to Xilinx version of the Linux Kernel. It was relatively straightforward to copy Epiphany driver over. I have made a patch and build script:

https://github.com/Kirill888/parallella ... ter/kernel

Tested on 7010 parallella, xdevcfg works and epiphany driver also seems to work, but I didn't test it rigorously, just ran some sample apps.
kirill
 
Posts: 38
Joined: Mon Sep 28, 2015 7:24 am

Re: FPGA access in Linux 4.4

Postby sebraa » Sat May 07, 2016 11:49 pm

Well, after some random fiddling, I got the /dev/uio0 device to appear, using the parallella-linux kernel. I have no clue why it works now.

However, while I can build your kernel (Xilinx + Epiphany patch), it won't boot. Unfortunately, I don't have a serial cable and can't see why. I only noticed that the Xilinx kernel is much smaller (~2.2 MB) than the parallella-linux kernel (~6 MB), both using parallella_defconfig.

I have looked into the CONFIG_GS_FPGABOOT (or gs_fpga) staging driver, which seems a suitable replacement for Xilinx /dev/xdevcfg driver. However, it doesn't seem functional yet. The xl_init_io() function in drivers/staging/gs_fpgaboot/io.c always returns -1, which results in a "GPIO INIT FAIL!!" error when trying to load (use) the driver. So I have to figure out how to get the Xilinx kernel running. Sigh.

In any case, thank you for your help and the tutorials. I plan on following them as soon as I get the required infrastructure working. :-)
sebraa
 
Posts: 495
Joined: Mon Jul 21, 2014 7:54 pm

Re: FPGA access in Linux 4.4

Postby kirill » Sun May 08, 2016 6:52 am

I strongly recommend getting a usb to uart adaptor, they are like $3 on ebay. It helps a lot, just make sure to use 3.3V version.

It is worth making sure that boot partition has no errors. Debugging without uart is hard, but possible. For example you can clear /var/log/ folder before booting, then check if anything was written to it during "unsuccessful boot", it could be just a network problem for example.

The size of the kernel sounds about right, this is what works on my setup. Although I would expect parallella kernel would also be closer to 2M if you used my config and not default one.

EDIT: removed note about u-boot and uart, got things confused with zedboard problems I have had in the past, on parallella u-boot only drops into prompt if it can't read sd-card.
kirill
 
Posts: 38
Joined: Mon Sep 28, 2015 7:24 am

Re: FPGA access in Linux 4.4

Postby sebraa » Mon May 09, 2016 10:57 pm

sebraa
 
Posts: 495
Joined: Mon Jul 21, 2014 7:54 pm

Re: FPGA access in Linux 4.4

Postby kirill » Mon May 09, 2016 11:26 pm

Hm, looks like one of IIO drivers (Industrial I/O) is chocking while parsing device tree. By the way I have added some more drivers to the default config as they seemed to be explicitly added to parallella config. Not sure what version of the patch you are using. Also are you using 7010 or 7020?
kirill
 
Posts: 38
Joined: Mon Sep 28, 2015 7:24 am

Re: FPGA access in Linux 4.4

Postby sebraa » Tue May 10, 2016 4:01 pm

I am a step further, but still no cake. I have just updated the patch and I am using a Zynq 7020, btw.

Removing the Xilinx XADC driver (or IIC support altogether) or removing the "xlnx,channels" subnode of the adc@f8007100 node removes the panic. So this is fixed now. Now the kernel actually reaches userspace, but hangs shortly thereafter (before doing DHCP). Sigh.

Are you using the device-tree from the Xilinx kernel? That will be my next step, but I won't have time for it today.

Doing this is way more work than I anticipated.
sebraa
 
Posts: 495
Joined: Mon Jul 21, 2014 7:54 pm

Re: FPGA access in Linux 4.4

Postby kirill » Tue May 10, 2016 10:16 pm

Well maybe you are better off trying to go the other way and add xdevcfg to the kernel that works for you.

Here is the patch it should apply cleanly against 2016.3 release. Unfortunately you can't just compile it as a module that can be used with the pre-compiled kernel because some extra functions are added to the kernel itself, so you'll need to rebuild kernel as well.

I am using devicetree from Adapteva, patched a bit to add my uio devices. Your hang is probably due to thermal service kicking in and failing in some way due to changes in kernel or device tree. See /etc/init/parallella-thermald.conf
Attachments
0001-Adding-xilinx_devconfig-driver.patch.gz
(10.14 KiB) Downloaded 1723 times
kirill
 
Posts: 38
Joined: Mon Sep 28, 2015 7:24 am

Re: FPGA access in Linux 4.4

Postby sebraa » Wed May 11, 2016 1:03 pm

sebraa
 
Posts: 495
Joined: Mon Jul 21, 2014 7:54 pm

Re: FPGA access in Linux 4.4

Postby olajep » Thu May 12, 2016 1:02 pm

_start = 266470723;
olajep
 
Posts: 140
Joined: Mon Dec 17, 2012 3:24 am
Location: Sweden

Next

Return to FPGA Design

Who is online

Users browsing this forum: No registered users and 7 guests

cron