What's the difference in contents of `/odm` and `/vendor` directories? I have a little idea about the /odm but no idea of /vendor dir. Can someone please explain in the best way possible?  I looked up on Google and it didn't help.
What I'm really confused is with whether OEM's make changes to the files underlying these directories or is it the Android's source.

Reference:


  
    From /system, init launches and starts mounting all the other partitions, such as /vendor, /oem, and /odm
You could obtain this informacion in Source Android Documentation

ODM -&gt; This partition contains original design manufacturer (ODM) customizations to system-on-chip (SoC) vendor board-support packages (BSPs). Such customizations enable ODMs to replace or customize SoC components, and implement kernel modules for board-specific components, daemons, and ODM-specific features on hardware abstraction layers (HALs). This partition is optional; typically, it's used to contain customizations so that devices can use a single vendor image for multiple hardware SKUs
Vendor -&gt; This partition contains any binary that isn't distributable to AOSP. If the device doesn't contain proprietary information, you can omit this partition.