I am learning repository pattern and was reading Repository Pattern with Entity Framework 4.1 and Code First and Generic Repository Pattern - Entity Framework, ASP.NET MVC and
It's also an advantage to keep your queries in a central place; otherwise your queries are scattered around and are harder to maintain.
And the first point you mention: "To hide EF" is a good thing! For instance, saving logic can be hard to implement. There are multiple strategies that apply best in different scenarios. Especially when it comes to saving entities which also have changes in related entities.
Using repositories (in combination with UnitOfWork) can centralize this logic too.
Here are some videos with a nice explanation.