What's the difference in contents of `/odm` and `/vendor` directories?
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.