Cannot open device file (in /dev) after reboot

I have a custom 3.8.13 build running on the BBB with my own device tree overlay, as well as my own kernel module.

On a fresh build, (the first time the BBB boots up) the kernel module loads automatically on boot, and the driver and device work perfectly. However, after rebooting the system and manually modprob-ing the driver, my userspace program tries to open the device in the /dev folder and returns (using perror() ) “No such device or address.” The file exists in the /dev folder and is listed correctly in both /proc/devices and /sys/class. As soon as i re-create a new image and boot it up, it works fine again, until a reboot occurs.

I’m using printk debug statements within the kernel module that show that the module is actually inserting and running correctly.

Also, i have two other kernel modules using the exact same initialization routines, process, etc, and neither have this problem.

Is this an error with my device tree overlay, or is this incorrect initialization/cleanup within my kernel module? Thanks for the help.