The Promise E-Class and M-Class product do not have a 2TB terabyte limitation.
Make sure the host bus adapter in question supports greater than 2TB volumes.
Linux 2.4 based kernels have a 2TB array limitation, Linux 2.6 kernels offer the Parted
utility to address greater than 2TB using GPT. If you need assistance running Parted please see below:

Make sure "Large Block Device" support is enabled (should be enabled by default) in the kernel.
Please check your kernel configuration file ".config" using make xconfig or make menuconfig.
Typically the source resides in "/src/linux2.6/.config

From with in the make menuconfig screen select "Device Drivers",
then "Block Devices.  The sub menu item is "Large Block Device" 
Make "Large Block Device" static vs. dynamic by adding an *.
Save and exit. You will need to recompile the kernel.
When this is all done. Reboot, boot the new kernel

Running Parted:
From root command line type:  parted /dev/sdx (x= array volume)
At the parted prompt, type:

(parted) Mklabel gpt <enter>

The disk geometry for your disk array will be displayed.

Next type:

(parted)p <enter>

This will show you the disk geometry in megabytes for your array (/dev/sdx).  Disreguard disk geometry:
Disk geometry for /dev/sdx: 0.000-2622488.000 megabytes

(parted) mkpart
Partition type?  [primary]? primary
File system type?  [ext2]? ext2
Start? 0
End? 2622488


Once the partition is created you can create the filesystem on the volume.
mkfs.ext3 /dev/sdx1 or mkfs.xfs /dev/sdx1