added prototype to soc.h