My 2 yr (today) yr old son wakes between 5:30 and 6 most mornings.. What we have started doing is making sure he is really warm before he goes to bed as we think it was him uncovering himself and getting cold that woke him.. Some mornings we are lucky and he comes back to bed with us till 7 but mostly he lays in our bed talking away.

If you wake in the night I would just check he is covered.. Maybe use darker curtains in his room.. That is another thing that we have found worked.. We bought blinds for the bedroom.. He wakes now between 6 and 7