<duskwuff[m]>
Finally getting back to the 25x thing. whitequark (@_discord_182174208896401419:catircservices.org): I think you got the pin order backwards in commit 97f8db87; I had to explicitly pass in `--pin-cs=0 --pins-io=3,1,2,5 --pin-sck=4` to connect to a device that was working with the default mapping before the QSPI migration.
<duskwuff[m]>
Or was it backwards before and this fixed it?
siriusfox_ has joined #glasgow
siriusfox has quit [Ping timeout: 276 seconds]
trh has quit [Quit: weg]
trh has joined #glasgow
redstarcomrade has quit [Read error: Connection reset by peer]
jstein has joined #glasgow
redstarcomrade has joined #glasgow
redstarcomrade has quit [Changing host]
redstarcomrade has joined #glasgow
whitequark[m] has joined #glasgow
<whitequark[m]>
that seems rather unlikely
<whitequark[m]>
I think it might've been backwards before, my bad
js[m] has joined #glasgow
<js[m]>
I also had the impression it's backwards now
<js[m]>
what should have been 1,3,6,7 for me actually needed to be 3,1,6,7
<whitequark[cis]>
hm
<whitequark[m]>
so the QSPI controller's pinout is COPI,CIPO,WP#,HOLD#
<whitequark[m]>
this seems to me to be exactly right wrt the pinout
<urja>
previous memory-25x is CS,CIPO,WP,COPI,SCK,HOLD
<whitequark[m]>
the pinout *did* change wrt previous memory-25x pinout, which is a breaking change, but since the arguments changed as well I decided that that's fine (since there is no way you could e.g. destroy the flash by using an old command line)
<urja>
ah yeah QSPI is D0, D1, D2, D3, essentially, while previous is going around the chip
<whitequark[m]>
the old pinout was intended for easy use with the SOIC clips, but i think that never really quite worked out
<whitequark[m]>
for one the SOIC clips are kind of awful to use
<urja>
Oh yeah, i did personally implement the output driver enable/disable (only affects CS with glasgow, but still) for spi-flashrom, i guess i'll need to look at that again wrt the QSPI controller :P
<whitequark[cis]>
urja: QSPI controller has output enable/disable for most pins
<whitequark[cis]>
if you push in a Dummy cycle, it disables IO1:IO3, and if you don't have a chip selected during that cycle, it disables SCK
<urja>
yeah so did the previous one - for everything except CS (which kinda makes sense for you know, a normal SPI bus, but not for doing ISP)
<whitequark[cis]>
however, CS# is always enabled
<whitequark[cis]>
i think the way to do this is to have an OE override somewhere in GlasgowPort
redstarcomrade has quit [Read error: Connection reset by peer]
<urja>
I've also been doodling a "flash addon" (DIL32 or PLCC32) in kicad (i started from the prom-addon by esden)
<urja>
I feel like it'd be fun to drive FWH/LPC with glasgow (as opposed to it being a wild hack that's technically allowed by the spec for bitbanging with a microcontroller)
<urja>
(the PCI-derived clock is allowed to vary between DC and 33 Mhz, but it being bitbanged at whatever the 16Mhz AVR can keep up with might not be what was intended :P)
<whitequark[cis]>
there is an LPC device applet in a branch, LPC host would be pretty easy yes
<whitequark[cis]>
LPC device was one of the big things that prompted the development of Amaranth, then nMigen
<whitequark[cis]>
you couldn't have an async reset domain in Migen, which is nonsense
<js[m]>
one nice improvement would be though to not having to specify dummy pins
FFY00 has quit [Remote host closed the connection]
<whitequark[cis]>
the next step here would be to make SPI controller function like QSPI controller
<whitequark[cis]>
and then the gateware could decide between the two based on the presence of the last two pins
mal has quit [Ping timeout: 248 seconds]
mal has joined #glasgow
mal has quit [Ping timeout: 264 seconds]
<whitequark[m]>
gsuberland (@_discord_429990674406965278:catircservices.org) poke re: the PR
<gsuberland[m]>
Done the actual documentation work. Currently fighting with git to try to squash. It's being a huge pain, creating conflicts on every single commit and making me resolve them manually.
<gsuberland[m]>
Tempted to just make a separate branch and send it as a new PR since it's at least an hour less effort.