emul: Expose struct emul objects
emul: Expose struct emul objects

Give struct emul objects defined by EMUL_DEFINE external linkage.
Generate a struct emul prototype for each node in the device tree in
emul.h.

Define EMUL_DT_NAME_GET and deprecate EMUL_REG_NAME, which was only used
in EMUL_DEFINE.

This partially addresses #45976 by making it possible to statically
refer to struct emuls.

Signed-off-by: Abe Levkoy <2e1ad7039298f93262cf06bbb457275fb3e2ecb5@google.com>

zephyrproject-rtos/zephyr,zephyrproject-rtos/zephyr,galak/zephyr,galak/zephyr,zephyrproject-rtos/zephyr,finikorg/zephyr,galak/zephyr,finikorg/zephyr,galak/zephyr,finikorg/zephyr,finikorg/zephyr,galak/zephyr,finikorg/zephyr,zephyrproject-rtos/zephyr,zephyrproject-rtos/zephyr