Federal officials have charged suspended Charleston County magistrate judge James Gosnell on several counts of possessing and distributing child pornography.