The 20-year-old spent last season on loan with the Robins and has now put pen to paper on a two-year contract.
"We know what Marlon can do, we saw him last season and we know he is only going to get better as a player," Town boss Mark Yates told the club's official website.
"I've said before that I would like build a team around him because he has got all the required attributes. He is tall, can head the ball, he is mobile and can pass the ball. We will have to keep working hard to try to improve him.
"Marlon needed to tidy up a few loose ends with Portsmouth but a few people at our club have work really hard to get this deal done sooner rather than later and I'm very pleased to have Marlon back on board."