The max is 32GB. (Shown as 29.7GB in the system(That's due to the varying measures of space that hardware and software systems use))
I've been running a 32GB RAID0 configuration on my psp3000 for a while now, Using a little adapter that holds 2 MicroSDHC cards . I would have gone for dual 32GB sticks but I heard some pretty bad stories about people that tried that and only were able to read 29.9GB. So in my knowledge of coding, It seems to be a limit set deep within the firmware, not just some single variable change would fix this either. A CFW coder will have to look at mostly an entire FW to find any hints of the built in limit. But tbh, I still have 11GB free on my PSP, I have the whole first season of My Little Pony friendship is magic on it, 27 PSP titles in Iso and CSO format, 3 Emulators with over 25 Games each. and I have never really wanted to put anything more on it... I use a PSPgo for all my music so thats 7GB shaved off my use for that final 11GB of data.
P.S
I do not recommend trying to mix two differing capacity cards into a RAID styled adapter like the CR-3100! Raid0 works by striping data across 2 cards instead of 1, usually giving a higher speed of read/write, but in this case gives more capacity, the two cards can NEVER BE USED INDEPENDENTLY AFTER THIS CONFIGURATION! But in my experience with similar setups, a 32GB and a 16GB card or anything to try and get 50 or 58GB of capacity would be a useless experiment, because the hardware needs to have an even slate to write on, and the odd match up would give some pretty serious problems with read/write and capacity count... It most likely would not see the card all together like this.