On Mon, Jun 17, 2013 at 11:59 PM, Oliver Schinagl <oliver+l...@schinagl.nl> wrote: > From: Oliver Schinagl <oli...@schinagl.nl> > > Allwinner has electric fuses (efuse) on their line of chips. This driver > reads those fuses, seeds the kernel entropy and exports them as a sysfs node. > > These fuses are most likly to be programmed at the factory, encoding > things like Chip ID, some sort of serial number etc and appear to be > reasonable unique. > While in theory, these should be writeable by the user, it will probably > be inconvinient to do so. Allwinner recommends that a certain input pin, > labeled 'efuse_vddq', be connected to GND. To write these fuses, 2.5 V > needs to be applied to this pin. > > Even so, they can still be used to generate a board-unique mac from, board > unique RSA key and seed the kernel RNG. >
> +++ b/drivers/misc/eeprom/sunxi_sid.c > @@ -0,0 +1,147 @@ > +#include <linux/compiler.h> I don't think you have to use this header explicitly. > +#define DRV_NAME "sunxi-sid" > + if (size > (SID_SIZE - pos)) Useless internal braces. > +static int sunxi_sid_remove(struct platform_device *pdev) > +{ > + device_remove_bin_file(&pdev->dev, &sid_bin_attr); > + dev_dbg(&pdev->dev, "%s driver unloaded\n", DRV_NAME); It's useless to use DRV_NAME in conjunction with dev_* macros. dev_* will print driver name as a prefix. -- With Best Regards, Andy Shevchenko -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/