I had a (Chinese) 8GB class 10 sdcard that tested fine with h2Testw but gave mmc0: Timeout waiting for hardware interrupt - cmd18 in the Raspberry PI.
So it was unusable to boot the PI but I also found that I could not get rid of the partioning using windows. All methods I tried only formatted the 56MB first parttion. On my Windows 8 PC disk manager showed only one partition.
I finally managed to recover the card for use on windows using a portable running CentOs 6 linux.
After you inserted the SD card in the reader you can use dmesg to get the name of the device.
[root@nhq-lenovo raspberry]# dmesg | tail ... mmc0: card 0002 removed mmc0: new high speed SDHC card at address 0002 mmcblk0: mmc0:0002 SDMMC 7.41 GiB mmcblk0: p1 p2
Once you know the device use fdisk to remove the partitions. Make sure you're working on the correct device, all data on the disk/card will be lost. Display the current partition to check the size are what you expect before deleting.
[root@nhq-lenovo raspberry]# fdisk /dev/mmcblk0
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): p
Disk /dev/mmcblk0: 7964 MB, 7964983296 bytes
4 heads, 16 sectors/track, 243072 cylinders
Units = cylinders of 64 * 512 = 32768 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00014d34
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 129 1920 57344 c W95 FAT32 (LBA)
Partition 1 does not end on cylinder boundary.
/dev/mmcblk0p2 1921 59200 1832960 83 Linux
Partition 2 does not end on cylinder boundary.
Command (m for help): d
Partition number (1-4): 2
Command (m for help): d
Selected partition 1
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
I had thought the above steps would be sufficient but windows still could not use the disk. I first had to create a new partition on linux. After that the card could be formatted on windows.
[root@nhq-lenovo raspberry]# fdisk /dev/mmcblk0
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-243072, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-243072, default 243072):
Using default value 243072
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@nhq-lenovo raspberry]#