Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-15 Thread Kevin Grant
Currently we are aiming for Sigrok support for the Kingst LA2016 (200MHz sampling). The LA1016 uses the same hardware but is limited to 100MHz sampling. It operates in the same way and it could be supported quite easily once LA2016 support is in place. I had hoped that loading the LA2016 bitstr

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-10 Thread Kevin Grant
Hello, Here is the python code I have been using for LA2016 experiments. https://bitbucket.org/magellanic-clouds/klarty/src/master/ Included there is a text file with my thoughts on the PV code, see notes-sigrok-pv-issues.txt I used FX2 fw from KingstViz-linux v3.4.2 and FPGA bitstream extra

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-08 Thread Kevin Grant
Hi Helge, I am glad to hear you have the analyser somewhat working on Windows, that is good progress. I still suspect there are some issues, like setting triggers and logic thresholds, and I suspect the FPGA bitstream is not quite correct (maybe I am wrong). I think I have a good understandin

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-07 Thread Helge Kruse
Am 07.01.2021 um 21:03 schrieb Kevin Grant: > > Ray, > > FYI to extract the bitstream from USB packets I used (Windows, sorry) > Eltima Software USB Analyzer, free 14 day evaluation. > > Run it, select LA2014, start Kingst software. Select all the 4096 size > packets (INs and OUTs, so 90 frames) an

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-07 Thread Helge Kruse
Am 07.01.2021 um 19:27 schrieb Kevin Grant: > > Hello Helge, > > I have been researching the LA2016 a little to see if I can help with > the Sigrok integration. In summary, I would say it cannot work on > Linux or Windows at present. > I agree. There are at least two problems, I found. I sent a pul

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-07 Thread Ray Molenkamp
Could be they store different firmware/streams in the windows and linux versions of their software, still waiting for the hardware to arrive so this experiment will have to wait until that time. --Ray On 2021-01-07 1:03 p.m., Kevin Grant wrote: > > Ray, > > FYI to extract the bitstream from USB

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-07 Thread Kevin Grant
Ray, FYI to extract the bitstream from USB packets I used (Windows, sorry) Eltima Software USB Analyzer, free 14 day evaluation. Run it, select LA2014, start Kingst software. Select all the 4096 size packets (INs and OUTs, so 90 frames) and select export to bin. This will give you the bitstr

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-07 Thread Kevin Grant
Hi Ray, No luck, all significantly different to the USB-packet bitstream. Tests done with Kingst v3.4.2 Regards Kevin On 2021-01-07 19:07, Ray Molenkamp wrote: Still waiting on hardware, but i prodded around a bit over the Christmas break to prepare while the current script extracts the F

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-07 Thread Ray Molenkamp
Still waiting on hardware, but i prodded around a bit over the Christmas break to prepare while the current script extracts the FX2 firmware for all models it only seems to extract a single bitstream. You can extract the others with this patch. Do any of them match the stream you captured off

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-07 Thread Kevin Grant
Hello Helge, I have been researching the LA2016 a little to see if I can help with the Sigrok integration. In summary, I would say it cannot work on Linux or Windows at present. There are certainly issues in the protocol.c [1] file, for example some FPGA SPI register addresses are wrong; CTR

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-03 Thread Helge Kruse
Am 03.01.2021 um 16:39 schrieb Gerhard Sittig: > Sorry, but I cannot see how this is "a compiler bug". Well, the C standard doesn't specify how the compiler builds the layout of structs. The GCC add an implementation specific extension with the __attribute__ to force packing of the struct. If the

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-03 Thread Gerhard Sittig
On Sat, 2021-01-02 at 18:20 +0100, Helge Kruse wrote: > > I use the Kingst LA2016 logic analyser and found that it doesn't work in > Windows environment. There is an USB transfer that is built from a > packed struct: > > typedef struct sample_config { >     uint32_t sample_depth; >     uint32_t p

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-03 Thread Helge Kruse
|Hi Kevin, thanks for that hint. I already added a | |  __attribute__((gcc_struct)) __attribute__((packed)) | |what looks awkward. But since the attributes can be combined in one clause, it looks better. I also added | |  _Static_assert(sizeof(sample_config_t) == 16, "incompatible layout of sam

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-03 Thread Kevin Grant
Nice find Helge! The gcc_struct attribute might also do it. typedef struct sample_config { uint32_t sample_depth; uint32_t psa; uint16_t u1; uint32_t u2; uint16_t clock_divisor; } __attribute__((gcc_struct, packed)) sample_config_t; Rgds Kevin On 2021-01-02 22:51, Ray Molenkamp wrote: I

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-02 Thread Ray Molenkamp
I do not have the hardware to test on, but with a "hello world" style program -mno-ms-bitfield fixes the struct size from 18 back to 16 --Ray On 2021-01-02 11:19 a.m., Paul Fertser wrote: > Hi Helge, > > On Sat, Jan 02, 2021 at 06:20:54PM +0100, Helge Kruse wrote: >> The MXE compiler, that is us

Re: [sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-02 Thread Paul Fertser
Hi Helge, On Sat, Jan 02, 2021 at 06:20:54PM +0100, Helge Kruse wrote: > The MXE compiler, that is used for compiling the Windows version ignores > silently this attribute. This can be verified by a simple "Hello, World" > style program. This is a perfect find! Have you tried compiling with -mno-

[sigrok-devel] Patch proposal for Kingst LA2016 driver

2021-01-02 Thread Helge Kruse
Happy new year to everyone! I use the Kingst LA2016 logic analyser and found that it doesn't work in Windows environment. There is an USB transfer that is built from a packed struct: typedef struct sample_config {     uint32_t sample_depth;     uint32_t psa;     uint16_t u1;     uint32_t u2;