Only Cisco switch platforms that still support `isl` trunking need to have the trunking protocol configured. 

Newer platforms have no support for isl trunking anymore, so the interface command `switchport trunk encapsulation dot1q` is default/implicit/unsupported, and there's no need to configure it. Just set `switchport mode trunk`.

Of the ones that still support isl, Cat3750, 3550, 3560 spring to mind, and the Cat4000 and Cat4500 Series (incl their 4900M and 4948 cousins), and probably a few of the older ones, too. 

EDIT: the following section is incorrect as it seems that the 29xx range never had support for isl trunking at all. 

----------
I couldn't say when ISL trunking support was dropped from the 2950/2960G/2960-S/2960-X product line. 

----------

Eventually, it's just a matter of trying. If the switchport won't accept `switchport mode trunk`, then setting the trunking encapsulation is probably needed.