$2m for shoes: Nick Cannon donates to charity