u-boot-brain/drivers
Philipp Tomsich 49cd8e85eb rockchip: efuse: add (misc) driver for RK3399 non-secure efuse block
This adds a simple driver for reading the efuse block of the RK3399.
It should be easy enough to add drivers for other devices (e.g. the
RK3328, RK3368, etc.) by passing the device details via driver_data.

Unlike the kernel driver (using the nvmem subsystem), we don't expose
the efuse as multiple named cells, but rather as a linear memory that
can be read using misc_read(...).

The primary use case (as of today) is the generation of a 'serial#'
(and a 'cpuid#') environment variable for the RK3399-Q7 (Puma)
system-on-module.

Note that this adds a debug-only (i.e. only if DEBUG is defined)
command 'rk3399_dump_efuses' that dumps the efuse block's content.
N.B.: The name 'rk3399_dump_efuses' was intentionally chosen to
      include a SoC-name (together with a comment in the function) to
      remind whoever adds support for additional SoCs that this
      function currently makes assumptions regarding the size of the
      fuse-box based on the RK3399. The hope is that the function is
      adjusted to reflect any changes resulting from generalising the
      driver for multiple SoCs and is then renamed.

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>

Reviewed-by: Simon Glass <sjg@chromium.org>
2017-06-07 07:29:17 -06:00
..
adc dm: adc: Convert uclass to livetree 2017-06-01 07:03:13 -06:00
bios_emulator bios_emulator: Fix cast for 64-bit compilation 2016-10-11 11:55:33 +08:00
block dm: blk: Improve block device claiming 2017-06-01 07:03:05 -06:00
bootcount Blackfin: Remove 2017-04-05 13:52:01 -04:00
clk dm: clk: fixed: Update to support livetree 2017-06-01 07:03:14 -06:00
core dm: Add more livetree helpers and definitions 2017-06-01 07:03:12 -06:00
cpu dm: core: Update device_bind_driver_to_node() to use ofnode 2017-06-01 07:03:08 -06:00
crypto Convert CONFIG_CMD_HASH to Kconfig 2017-05-22 12:38:15 -04:00
ddr common: arm: freescale: layerscape: Move header files out of common.h 2017-06-05 14:12:59 -04:00
demo dm: core: Replace of_offset with accessor 2017-02-08 06:12:14 -07:00
dfu dfu: dfu_sf: Fix read offset 2017-06-03 19:08:31 +02:00
dma dm: Rename dev_addr..() functions 2017-06-01 07:03:01 -06:00
firmware dm: core: Rename of_device_is_compatible() 2017-06-01 07:03:06 -06:00
fpga FPGA: drivers/fpga/ivm_core.c: incorrect printf 2017-04-18 10:29:23 -04:00
gpio gpio: samsung: Drop s3c2440_gpio driver 2017-06-05 11:02:29 -04:00
i2c samsung: Drop more references fo s3c24x0 2017-06-05 11:02:31 -04:00
input cros_ec: Update the cros_ec keyboard driver to livetree 2017-06-01 07:03:16 -06:00
led dm: core: Update device_bind_driver_to_node() to use ofnode 2017-06-01 07:03:08 -06:00
mailbox dm: mailbox: Update uclass to support livetree 2017-06-01 07:03:15 -06:00
memory memory: Move TI_AEMIF config to KCONFIG 2016-04-18 17:11:43 -04:00
misc rockchip: efuse: add (misc) driver for RK3399 non-secure efuse block 2017-06-07 07:29:17 -06:00
mmc samsung: mmc: Drop s3c_sdi driver 2017-06-05 11:02:30 -04:00
mtd samsung: nand: Drop s3c2410_nand driver 2017-06-05 11:02:31 -04:00
net common: freescale: Move arch-specific declarations 2017-06-05 12:30:55 -04:00
pch dm: Use dm_scan_fdt_dev() directly where possible 2016-07-27 14:15:54 -06:00
pci common: freescale: Move arch-specific declarations 2017-06-05 12:30:55 -04:00
pcmcia Kconfig: Add a CONFIG_IDE option 2017-05-22 12:45:27 -04:00
phy sandbox: phy: Update driver for livetree 2017-06-01 07:03:15 -06:00
pinctrl dm: core: Update device_bind_driver_to_node() to use ofnode 2017-06-01 07:03:08 -06:00
power rockchip: rk8xx: allocate priv structure for driver 2017-06-07 06:57:49 -06:00
pwm dm: Rename dev_addr..() functions 2017-06-01 07:03:01 -06:00
qe QE: add QE support on SD boot 2017-06-01 19:56:54 -07:00
ram drivers: ram: stm32: fix compilation issue 2017-06-05 14:13:13 -04:00
remoteproc dm: core: Replace of_offset with accessor 2017-02-08 06:12:14 -07:00
reset reset: sti: add deassert counter in reset channel descriptor 2017-06-05 14:13:02 -04:00
rtc dm: sandbox: i2c_rtc: Drop fdtdec.h header 2017-06-01 07:03:16 -06:00
serial dm: core: Update lists_bind_fdt() to use ofnode 2017-06-01 07:03:08 -06:00
soc Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
sound dm: gpio: Add live tree support 2017-06-01 07:03:10 -06:00
spi dm: spi: Convert uclass to livetree 2017-06-01 07:03:16 -06:00
spmi dm: Rename dev_addr..() functions 2017-06-01 07:03:01 -06:00
sysreset dm: sandbox: sysreset: Convert driver to livetree 2017-06-01 07:03:17 -06:00
thermal thermal: imx: fix calculation 2017-05-18 11:23:31 +02:00
timer dm: core: Update lists_bind_fdt() to use ofnode 2017-06-01 07:03:08 -06:00
tpm dm: Rename dev_addr..() functions 2017-06-01 07:03:01 -06:00
usb Merge git://git.denx.de/u-boot-usb 2017-06-05 21:05:51 -04:00
video common: Drop inclusion of pci.h 2017-06-05 11:02:26 -04:00
watchdog dm: Rename dev_addr..() functions 2017-06-01 07:03:01 -06:00
Kconfig Drop digital thermometer and thermostat (DTT) drivers 2017-05-22 08:37:11 -04:00
Makefile Drop digital thermometer and thermostat (DTT) drivers 2017-05-22 08:37:11 -04:00