clarification on multiple access in data link layer In physical layer, we already have methods to share a common link by dividing into channels using FDM etc. 

Then why do we need to think about multiple access at data link layer? I.e why csma, csma/cd are needed? We shouldn't be seeing any collision at all when I'm using a different channel for communication right? 
Do these protocols come into play only when i'm using a less bandwidth link due to which I can't share them by dividing into frequency bands  at all?
If each communication is on a separate channel, you need to figure out what channels are free before you start communicating. How do you propose to do that? If you try to ask somebody, that requires communication, so how do you find out which channels are free for that communication? If you try to just listen to what comes past and figure out which channels are free at the moment, how do you know that a channel that's quiet at the moment is really free, and it's not just that its users have paused for a moment. What do you do if somebody else also starts transmitting on that channel at the same time as you?

Alternatively, you need to preallocate $\tfrac12n(n-1)$ channels to your $n$ hosts, so that each pair of hosts has a specific channel to talk on. But that doesn't scale.