Yes, whichever usb port your system has attached to the Rev2, of course. They're all ports, whether USB or DIN or whatever, you know. In MIDI parlance, the input or output endpoint across which the 16 channels are conceptualized is a "port". So you need to make sure that whatever software is actually generating the CCs for bank select is spitting them out the right port, regardless of the port's physical nature.
Actually, I stand corrected about previously: I was able to make it work with MIDI Param Rcv on NRPN too - so you may not be SOL. What firmware version are you running? I'm on 1.1.5.9, the latest I'm aware of.
For instance, to make this work in Ableton Live, I create a MIDI track, set the output of the track to the MIDI port "Rev2" (which is what the Rev2 looks like on USB on a Mac), set the channel of the track to 13, which is the MIDI channel of my Rev2, and create a clip on the track with "Sub" (the sub-bank value) set to 1, 2, 3, 4, 5, 6, 7, or 8. Other values will be ignored. Bank is left on ---, but you might be able to use the lowest value (0 is actually sent, whether your DAW displays 0 or 1 is up to the DAW) as well. Upon playing the track, when the playhead enters the clip, the Rev2 updates the bank value to the indicated bank, and all is well. In Ableton, for this to work, I believe the Rev2 object MIDI output port settings must have "Track" enabled (in Ableton's preferences), but I did this once and haven't touched it since. I can't help you with any other DAW or OS.
I grok the whole "port" thing. I was just trying to make certain that I wasn't missing some arcane bit of terminology. And I'm well aware of how the program/bank section works in Ableton. Getting to work within a clip is easy. What I've been trying to do is be able to surf through all the programs and banks on all of my external desktop synths (Rev 2, Peak, Virus Ti2) from a central controller, my S88mk2. I've spent my life at a keyboard, one hand on the keys, and the other (usually 6-12 inches away) on a knob/dial/button scrolling through patches.
With all these desktops in different locations, and some being further out of reach than others, I've been trying to be able to control that surfing with the assignable MIDI knobs on the S88. Seems simple enough, right? Not really. Patch changes, once ordained, are just numbers, and once you make sure you're assignments are correct (is 0 really 0, or is it 1?) you're good. Bank change commands vary from manufacturer to manufacturer and involve an MSB, LSB, and then the bank number/letter. Which is not info that can be sent as CC data from a dial.
So, it became apparent to me, while scouring the internet for answers, that this was a REALLY common problem. So, I thought it would be easy enough to create a Max device that would interpret my CC info into bank change info and then I could MIDI map it to the CC knobs. But first, a Max for Live search to see if anyone else had been down this road before me.
And, of course, they had. My first MFL search turned up exactly what I needed on the first try. A little MFL device that had two knobs: one for program changes and one for bank select.
Downloaded and installed one of those before each external instrument plugin in, MIDI mapped them to the knobs I wanted, and then opened Komplete Kontrol and tailored each of the knobs bank change behavior to match its corresponding synth. Virus=30 banks, Rev 2=8 banks, Peak=4 banks. That made the knobs behave in a smoother manner so you weren't flying by all your banks with a tiny turn of the knob.
Make that a template and VOILA! Every time I open a new Live session, it's done. And I can sit there and scroll to my hearts content without being stretched out like I'm in a game of twister, which makes you not even want to fuck with it.
So, VICTORY! And thank you so much for all your help along the way. Tedious, I know.