Fixed init struct allocation bug

Change-Id: I5c12db3a36c2da9282e74f4a0581156d57c094d5
Added code to read method. The driver is not working, has a setup error (still
unknown) at the init method. Must be fixed.

Change-Id: I81250f605c3c9190b56a12c80f3f5ba8d9c42527
Added init and exit prototypes.

Change-Id: Idc59c989d5a20163d7f54f71441bbe0e67bb3055