On 2024-12-10 17:17, Anastasia Klimchuk wrote:
I think these two lines show the error:

cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341b_spi_spi_send_command: Failed to read 4 bytes

These 4 bytes are supposed to be device ID returned by the chip, and
because of timeout we don't know the ID, and so can't finish the
probing operation. This also explains why none of the chips work -
probably the same timeout for each?

On Tue, Dec 10, 2024 at 10:02 PM S. <[email protected]> wrote:

Hello,

in fact it was the lack of dependencies, which I have fixed now, on my
PC only libjaylink 0.3.0 is missing (I only have version 0.2.0), but I
don't need j-link.

Now flashrom recognizes the programmer but not the chip, I tested the
follwing chips: Winbond 25Q16DV, Winbond W24X40 and Macronix 25L4005A

xc@pcs:~/flashrom$ flashrom -p ch341b_spi -c W25Q16.V --flash-name -VVV
flashrom v1.5.0 on Linux 6.8.0-49-generic (x86_64)
flashrom is free software, get the source code at https://flashrom.org
flashrom was built with GCC 11.4.0, little endian
Command line (6 args): flashrom -p ch341b_spi -c W25Q16.V --flash-name -VVV Strange: Empty eraseblock definition with non-empty erase function. Not
an error.
Initializing ch341b_spi programmer
Device revision is 3.0.4
Wrote 3 bytes:
  aa 61 00
Wrote 4 bytes:
  ab b7 7f 20
The following protocols are supported: SPI.
Probing for Winbond W25Q16.V, 2048 kB: master_map_flash_region: mapping
W25Q16.V from 0x00000000ffe00000 to 0x0000000000000000
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341b_spi_spi_send_command: Failed to read 4 bytes
master_unmap_flash_region: unmapped 0x0000000000000000
No EEPROM/flash device found.
Note: flashrom can never write if the flash chip isn't found automatically.
Wrote 4 bytes:
  ab b7 40 20

Regards
Stephan



Am 10.12.24 um 07:05 schrieb Anastasia Klimchuk:
> It seems libusb dependency is not recognised, in your case you need libusb.
> When you are building from source, in the beginning meson prints lots
> of info, find what it says about libusb.
> For example, on my environment here I have this line:
>
> Run-time dependency libusb-1.0 found: YES 1.0.27
>
> I suspect you have NO and you need to achieve YES
> Check the instructions about libraries, especially section on Ubuntu:
> https://flashrom.org/dev_guide/building_from_source.html
>
> For your work to add support for CH341b it would be really good to
> have a patch eventually.
> Similar thing was implemented for ch347_spi recently, see how now it
> knows about two devices IDs and tries each of them:
> https://github.com/flashrom/flashrom/blob/main/ch347_spi.c#L60
>
> On Mon, Dec 9, 2024 at 9:26 PM S. <[email protected]> wrote:
>>
>> Hello,
>>
>> I've never programmed in C languages before, but it seemed easy to me
>> since the only difference between ch341a and ch341b is that ch341b no
>> longer needs an external crystal
>> https://www.wch-ic.com/downloads/file/16.html (Chapter 3., Note). I
>> therefore changed the PID in line 90 of ch341a_spi.c from 5512 to 5523
>> and added an entry for the ch341b in flashrom_udev.rules :
>>
>> # Winchiphead (WCH) CH341b based programmer
>> ATTRS{idVendor}==“1a86”, ATTRS{idProduct}==“5523”, MODE=“664”,
>> GROUP="plugdev”
>>
>> The result is that the flashrom call only shows a few programmers, I can
>> no longer select the ch341:
>>
>> flashrom v1.5.0 on Linux 6.8.0-49-generic (x86_64)
>> flashrom is free software, get the source code at https://flashrom.org
>> Please select a programmer with the --programmer parameter.
>> Valid choices are:
>> dummy, serprog, buspirate_spi, rayer_spi, pony_spi, linux_mtd, linux_spi.
>>
>> flashrom 1.2 is delivered with Ubuntu, more programmers are offered:
>>
>> flashrom v1.2 on Linux 6.8.0-49-generic (x86_64)
>> flashrom is free software, get the source code at https://flashrom.org
>> Please select a programmer with the --programmer parameter.
>> To choose the mainboard of this computer use 'internal'.
>> Valid choices are:
>> internal, dummy, nic3com, nicrealtek, gfxnvidia, drkaiser, satasii,
>> atavia, it8212, ft2232_spi, serprog, buspirate_spi, dediprog,
>> developerbox, rayer_spi, pony_spi, nicintel, nicintel_spi,
>> nicintel_eeprom, ogp_spi, satamv, linux_mtd, linux_spi, usbblaster_spi,
>> pickit2_spi, ch341a_spi, digilent_spi, stlinkv3_spi.
>>
>> Regards
>> Stephan
>>
>>
>>
>> Am 09.12.24 um 01:11 schrieb Anastasia Klimchuk:
>>> Hello Stephan,
>>>
>>> It's so good that you are trying to do things by yourself!
>>>
>>> I understand you have written some code locally, which you are now
>>> trying to make work. Would you be comfortable to share this as a
>>> patch? This way people can look and perhaps give advice.
>>>
>>> The instructions how to send a patch are here:
>>> https://flashrom.org/dev_guide/development_guide.html
>>>
>>> You can add in the commit title "WIP", "doesn't work yet", or
>>> something like this. And post the link to the patch in this thread.
>>> Thank you!
>>>
>>> On Sun, Dec 8, 2024 at 12:14 AM S. <[email protected]> wrote:
>>>>
>>>> Next errormessage, now he likes the VID 5523:
>>>>
>>>> flashrom v1.5.0 on Linux 6.8.0-49-generic (x86_64)
>>>> flashrom is free software, get the source code at https://flashrom.org
>>>>
>>>> Using default 2000kHz clock. Use 'spispeed' parameter to override.
>>>> linux_spi_init: failed to set speed to 2000000Hz: Inappropriate ioctl
>>>> for device
>>>> Error: Programmer initialization failed.
>>>>
>>>> Stephan
>>>>
>>>>
>>>> Am 07.12.24 um 13:58 schrieb S.:
>>>>> Hello,
>>>>> now I have tried it myself, the only difference I know between ch341a
>>>>> and ch341b is PID:VID 1A86:5523 (instead of 1A86:5512). So I changed the
>>>>> VID in ch341a_spi.c and flashrom_udev.rules. But unfortunately this does
>>>>> not help, I get the error message “Couldn't open device 1a86:5512” when
>>>>> starting flashrom, although in the source code PID:VID is now set to
>>>>> 1a86:5523. Strange.
>>>>> Stephan
>>>>>
>>>>> Am 25.10.24 um 15:36 schrieb S.:
>>>>>> flashrom supports only programmers with ch341a, but many programmers
>>>>>> sold now have ch341b onboard, pid:vid is then 1a86:5523
>>>>>>
>>>>>> tnx in advance
>>>>>> Stephan
>>>>>> _______________________________________________
>>>>>> flashrom mailing list -- [email protected]
>>>>>> To unsubscribe send an email to [email protected]
>>>>> _______________________________________________
>>>>> flashrom mailing list -- [email protected]
>>>>> To unsubscribe send an email to [email protected]
>>>> _______________________________________________
>>>> flashrom mailing list -- [email protected]
>>>> To unsubscribe send an email to [email protected]
>>>
>>>
>>>
>> _______________________________________________
>> flashrom mailing list -- [email protected]
>> To unsubscribe send an email to [email protected]
>
>
>
_______________________________________________
flashrom mailing list -- [email protected]
To unsubscribe send an email to [email protected]

_______________________________________________
flashrom mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to