Just the built-in Ethernet ports.
I'm also curious about the 2900s and 3900s, just in case there's a data sheet somewhere for all the ISRs.
The maximum number of interfaces (physical, subinterface, or virtual) a router can handle depends on the maximum number of SWIDBs that the router can use. The IDB limit indicates the maximum number of interfaces a router can handle, if you assume that other resources, such as memory, CPU, and so forth, are available.
In order to see the maximum number of IDBs, and the number of IDBs currently in use, along with their memory consumption, use the show idb IOS command.
Or you can check this IDB limits table for ISR platforms:
**Please grade this post if you find it useful.
How many subinterfaces are you wanting? And what kind of subinterface. If it were a Frame Relay interface that you are doing subinterfaces then the number of subinterfaces would be the number of available DLCIs. If you are creating subinterfaces on an Ethernet interfaces to do VLAN trunking then the number depends on how many VLANs are supported.
The other thing that controls the number of subinterfaces is the number of IDB (Interface Descriptor Blocks) supported on the platform. I do not have a 1941 that I can check on. But there should be a show idb command that would tell you what the number is.