The root cause of this issue is that the native VLAN can only be in a dot1q trunk. An attempt to change the native VLAN of a trunk port results in the port is a non-802.1q port error message.
Issue the show port capabilities command to determine the supported trunking encapsulations.
All releases of Catalyst OS (CatOS) software support this command for the Catalyst 4500/4000 and Catalyst 6500/6000 series switches. The Catalyst 5500/5000 series switches first introduced support for the show port capabilities command in release 4.1.
Native VLAN requires dot1q support on hardware. In other words, dot1q for trunking is a hardware-dependent factor. Most hardware supports dot1q for trunking, but some do not.
Issue the show port capabilities command to check whether a port or module supports dot1q. Also, before using dot1q for a port, check the hardware capabilities with the same command.