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

/devices.h: plz Add P25Q32H 4 MiB flash chip support. #3515

Open
hanyelkomy opened this issue Oct 7, 2020 · 7 comments
Open

/devices.h: plz Add P25Q32H 4 MiB flash chip support. #3515

hanyelkomy opened this issue Oct 7, 2020 · 7 comments

Comments

@hanyelkomy
Copy link

@hanyelkomy hanyelkomy commented Oct 7, 2020

Hi, Could you please add support to this external flash cause i cant get my hand on any of the supported flash devices with uson 2x3package and greater than 2MB except this one.
Thanks in advance!

Datasheet:
PUYA-P25Q32H-UXH-IR.pdf

@hanyelkomy
Copy link
Author

@hanyelkomy hanyelkomy commented Oct 7, 2020

Table ID Definitions

@veng1
Copy link

@veng1 veng1 commented Oct 7, 2020

While doing this, why not add the support for the full line of GigaDevice 25QCTxxx? It appears that the 32M will work.

And it looks like the board could be routed for the wider package. Then up to 128M would fit.

@tannewt
Copy link
Collaborator

@tannewt tannewt commented Oct 7, 2020

@hanyelkomy The device definitions are here: https://github.com/adafruit/circuitpython/blob/main/supervisor/shared/external_flash/devices.h Please make a PR for it. I don't have that flash so I can't test it.

@veng1 You are welcome to add more definitions as well.

@hanyelkomy
Copy link
Author

@hanyelkomy hanyelkomy commented Oct 15, 2020

@tannewt if u can guide me maybe i can be of help to test this flash ship and get it working.

@bd34n
Copy link

@bd34n bd34n commented Oct 15, 2020

@hanyelkomy, take a look here for great instructions:

https://learn.adafruit.com/contribute-to-circuitpython-with-git-and-github

If you're already familiar with git, it'll be a breeze. If not, the instructions are detailed so you shouldn't have any problems.

Basically you'll fork the CircuitPython repo, check out your fork to your local system, create a branch to make your changes on, build and test them, push your changes to your fork, then submit a pull request to get them merged.

-Brian Dean

@hanyelkomy
Copy link
Author

@hanyelkomy hanyelkomy commented Oct 15, 2020

@bd34n Thanks again for your answer, but i meant how can i test this spi flash and get its settings?

@bd34n
Copy link

@bd34n bd34n commented Oct 15, 2020

Unless the chip is really weird, which on first glance it doesn't appear to be, it's a matter of reading the data sheet for the various parameters needed for the definition block. You've got the device ID above in your pasted image - 0x85, 0x60, and 0x16 - that will allow it to be detected and configured based on the other parameters. Tthen verify how many status registers, startup time, speed, etc, and update the values in the definition. That should all be available in the datasheet. If there's another chip from the same mfg in devices.h, it's sometimes helpful to spot check against those since most mfgs are fairly consistent within their own chip lines. Sorry I'm not more help - that's the general process.

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

Successfully merging a pull request may close this issue.

None yet
5 participants
You can’t perform that action at this time.