[CORE] vmm_devdrv: Add necessary infrastructure for pinctrl

The pinctrl framework requires device driver framework to obtain
per-device pins before probing driver hence this patch adds the
"void *pins" in struct vmm_device and vmm_devdrv_pinctrl_bind()
for this. The vmm_devdrv_pinctrl_bind() will be implemented by the
linux-compatible pinctrl framework and vmm_devdrv will only include
a dummy and weak implementation of vmm_devdrv_pinctrl_bind().

In addition to above, this patch also replaces all usage of
list_for_each() macro with list_for_each_entry() macro.

Signed-off-by: Anup Patel <anup@brainfault.org>