Eating the endian description for now.
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
                                ret = -errno;
                                goto error_free_filename;
                        }
-                       fscanf(sysfsfp,
-                              "%c%u/%u>>%u", &signchar, bits_used,
-                              &padint, shift);
+
+                       ret = fscanf(sysfsfp,
+                                    "%ce:%c%u/%u>>%u",
+                                    &endianchar,
+                                    &signchar,
+                                    bits_used,
+                                    &padint, shift);
+                       if (ret < 0) {
+                               printf("failed to pass scan type description\n");
+                               return ret;
+                       }
                        *bytes = padint / 8;
                        if (*bits_used == 64)
                                *mask = ~0;
                                *is_signed = 1;
                        else
                                *is_signed = 0;
+                       fclose(sysfsfp);
+                       free(filename);
+
+                       filename = 0;
                }
 error_free_filename:
        if (filename)