Eric Aasen
Appearances
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
Yeah. So notably we, uh, we're able to take the BM. So in Ruby AMD made this BMC board called a Hawaii board that has an a speed BMC and kind of all your, your traditional BMC stuff, but it's on an OCP card. So we can pull that out. And so we developed our own OCP, uh, form factor card. And we, uh, we call that the grapefruit.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
and that goes into that bmc slot and connects to the ocp connector but it has rsp and rot and uh xilinx fpga there and some flash and you know kind of basic so i3c level translators that kind of thing so we can kind of hotwire into the the ruby dev platform with our you know what is effectively our bmc topology and do some development there
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
And so that's kind of... I've been working on Grapefruit a lot the last few months, I guess, and doing some of the FPGA work and trying to get the thing integrated so that Hubris runs on it and we've got, you know, our Ethernet stack runs on it and all of that. And that's all going pretty smoothly. And we're getting close to... being able to use our grapefruit board as an eSpy boot target.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
So I don't know that we have talked a lot about eSpy boot.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
Yeah, so Turin supports... You can do the standard Spynor boot, like all of these devices have done for a while. But they added eSpy boot, which is based off an Intel standard. And so it's an extension to eSpy, which is kind of like an LPC replacement. But it's an extension to that that allows you to have...
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
what they call slave attached storage and or slave attached file storage or some flash storage something like that and That allows you to boot off of over the spy network and it's basically built exactly for the server use case So, you know you have a BMC or some kind of device sitting there and then the flash is hiding behind that and so you talk spy to that device and then it goes off and fetches the flash and does whatever it needs to do and
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
you know out of spy nor and and or I guess you could you know do it off of NVMe or something if you'd like and You just feed it the bytes that it requested back over the east by interface and so and why that's how we're planning So so what's that what why is what why did we need to enhance spy to do that?
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
Well, I mean so you can talk spy to a nor flash, but that's that's basically all you can do is And the eSpy protocol kind of sits on top of what looks like a fairly standard spy, like QuadSpy interface. But it allows you to go request transactions, and then you just wait until the device goes and gets them. So, you know, Flash is notoriously slow.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
And so if you are the only device talking to a, uh, like a quad spy and you ask it for something or you ask it to go do an erase or whatever, you basically just kind of have to hang out and spin your tires until it finishes and wants to give you that data back. And over the eSpy interface, they do posted and non-posted transactions.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
So you can do these non-posted transactions and say, hey, I want a kilobyte of flash from this address. And you send that message. And then you can continue on using eSpy, talking to the device, doing other things, while whatever the eSpy target is goes off and does the work to get you your kilobyte of flash. And then it'll let you know with an alert that it has data for you.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
And you can come by and fetch it when you want.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
Right. And on Gimlet, what we did is we put actual analog spy muxes in so we could flip between our A-boot and B-boot flash images. So we'd actually just swap between chips that way. With eSpy, none of these images are very large, so you end up buying a commodity flash part with, say, a gigabit of flash storage. And you only need 32 megabytes or something like that.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
You know, you need these small like PSP images there. So with eSpy, we can also go down to one flash part. And then the the FPGA that's acting like the eSpy target will just translate, you know, into the high or low pages basically of the flash. And but the AMD doesn't really have to know the difference. So that makes things a little simpler on our end.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
I will say, one of the other major reasons for using eSpy was that it gains us back our second UART channel, which we lost in Turin.
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
uh because we like hardware handshaking and the second you are in turin doesn't have hardware handshaking and so we you know we're going to plan to do our ipcc protocol between the sp and the uh and the sp5 or the the turin processor over e-spy as well so that'll be a multiplex path and that was something that we had to solve regardless of east east by boot
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
uh so the good good news is with with the e-spy i think we can get significantly faster than three meg too so it'll be interesting to see what that looks like in practice uh e-spy is a little weird it's like it's it's simplex so you can only transmit one direction you know at any one time uh but you can get you can do quad at 66 megahertz so we should be able to get uh something a little bit faster than three meg i think and that is yeah sorry george go ahead
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
via that link and being able to go faster than three megabaud is going to be really really nice right yeah yeah i mean that's that's kind of the big thing i think the big hope here is that for cosmo when we do recovery we could potentially use the you know like i don't know i'm hoping to get it you know somewhere up in the 12 megabaud but it's going to depend on you know how busy we are doing other things on that link too because it's a shared resource so
Oxide and Friends
Unshrouding Turin (or Benvenuto a Torino)
Yeah, and I think we're replacing the Spinar image basically over 3 megabot. So it's, you know, slow. Yeah.