Read this article about resolving this issue.
You can fix this problem by (re)formating the ‘in memory SD Card’.
- At your HTC Diamond cell phone
- Boot into MS Windows Mobile mode
- Connect your mobile phone using a USB cable to your PC running your favorite Linux flavor (i.e. Ubuntu).
- While connection choose ‘Disk drive’. So not: ‘ActiveSync’ nor ‘Internet Sharing’.
- At your PC running Linux (MS Windows users please check the ‘HP Format Tool’
- Copy contents of ‘memory card’ to a safe location / create backup. Don’t forget to copy hidden files.
- Unmount memory card
- Start `gparted`. Same can be reached using `fdisk` to delete/create partitions in combination with `mkdosfs -F 32 /dev/sde1` to format the new created partition as FAT32 filesystem. In the next steps I assume you use `gparted`.
- Select the path to your HTC device i.e. /dev/sde
- Remove all existing partitions (if any)
- Create new partition: maximum size (i.e. 0-3773 4GB card), File system: FAT32 (because MS Windows Mobile must have access to ‘memory card’ too).
- Format new partition as FAT32
Your ‘memory card’ is ready to use. Mount your card (discconnect/connect USB cable) and restore backed up files to ‘memory card’.
Next time you boot into Android at your cell phone you should be able to access your ‘SD card’.
Handle with caution. During this process data loss is possible. I’m not responsible for this nor damage at your devices.