I am not sure what is going on here, I tried with a vanilla microSD card and I was able to create the logical volumes, here's the fdisk:
root@usbarmory:~# fdisk -l /dev/mmcblk0
Disk /dev/mmcblk0: 29 GiB, 31104958464 bytes, 60751872 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0007a96b
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 10240 7167999 7157760 3.4G 83 Linux
/dev/mmcblk0p2 7168000 60751871 53583872 25.6G 8e Linux LVM
My process was:
1. fdisk and add the new partition (applying the right start sector otherwise it will be created before the existing one and be very small)
2. reboot
3. Create the LVM:
root@usbarmory:~# pvcreate /dev/mmcblk0p2 # initialize physical volume
Physical volume "/dev/mmcblk0p2" successfully created
root@usbarmory:~# vgcreate lvmvolume /dev/mmcblk0p2 # create volume group
Volume group "lvmvolume" successfully created
root@usbarmory:~# lvcreate -L 20G -n encryptedfs lvmvolume # create logical volume of 20 GB
Logical volume "encryptedfs" created
So I'm really not sure why it's failing in your case. I suggest re-flashing the microSD card just to be sure.
Thanks!