21:19Lyude: skeggsb: making progress with separating the twod code in nouveau from fbcon. BTW, am I right in assuming the only reason we seem to wait for the channel to idle between operations (at least I think that's what nouveau_fbcon.c does if I'm understanding the purpose of nouveau_fbcon_sync() correctly) is because we never bothered to hook up fence support for twod?
21:20Lyude: I'm assuming twod supports some sort of fences, but I'm mostly just making that assumption off the fact there seems to be a NV902D_SET_NOTIFY_A method
21:24Lyude: ( imirkin, any chance you might know? ^)
21:30Lyude: ah, looks like those probably aren't what one uses for setting up fences (judging based off the CE code in nouveau_boa0b5 which doesn't seem to know anything about fences), but I guess my question still
21:30Lyude: *still stands
21:34skeggsb: fbcon_sync() does emit a fence, it just waits on it immediately
21:34skeggsb: there didn't seem to be much/any point emitting them after each draw
21:35Lyude: skeggsb: so it does fence wait, and then draw?
21:35skeggsb: no, the draws just happen, they don't need to syncronise with anything
21:36skeggsb: when fbcon needs to sync for whatever reason, it'll stick a fence at the end of all the pending draws and wait on it
21:37Lyude: gotcha, guess I should probably have the code for handling fences just live in where ever the hw accelerated zfill code lives
21:38Lyude: btw - since I think I'm going to make it so we can do zfills with either twod or ce (depending on what's available), I might hook up ce for some spots in fbcon because why not