Messages in this thread | | | Date | Tue, 18 Jun 2013 08:41:41 +0300 | Subject | Re: [PATCH 1/2] Initial support for Allwinner's Security ID fuses | From | Andy Shevchenko <> |
| |
On Mon, Jun 17, 2013 at 11:59 PM, Oliver Schinagl <oliver+list@schinagl.nl> wrote: > From: Oliver Schinagl <oliver@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
| |