linux-stable/drivers/mfd
Linus Torvalds 7ef58b32f5 Devicetree changes for v3.19
Lots of activity in the devicetree code for v3.18. Most of it is related
 to getting all of the overlay support code in place, but there are other
 important things in there.
 
 There are a few trivial merge conflicts. They shouldn't give you any
 trouble.
 
 Highlights:
 - OF_RECONFIG notifiers for SPI, I2C and Platform devices. Those
   subsystems can now respond to live changes to the device tree.
 - CONFIG_OF_OVERLAY method for applying live changes to the device tree
 - Removal of the of_allnodes list. This used to be used to iterate over
   all the nodes in the device tree, but it is unnecessary because the
   same thing can be done by iterating over the list of child pointers.
   Getting rid of of_allnodes saves some memory and avoids the
   possibility of of_allnodes being sorted differently from the child
   lists.
 - Support for retrieving original DTB blob via sysfs. Needed by kexec.
 - More unittests
 - Documentation and minor bug fixes
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUiaTJAAoJEMWQL496c2LNdKkP/1rk20JXzJc948Z3VFZPXkzf
 TUKXC+Qn0FmVjQhESkx6LxLDrMDTQlQLlWBmFuWRB87Fk5E32FEf5zzW7I9oQPS4
 msIqJoYf5T7EPlmJ/85156xjK5ezc0OyoKEizn23mcKrJE4bmXQEbVw99UUFhq4R
 Oz1a1ZPQQSSaMteKftOoRBiE3bJut3tJ3dfufNjwOuXi5rALJ0DVxuOeU/Hba13d
 t05qlImwocKXGBDd/B4psBI5fZl4Tf4AmGOD9aU7YHxrLg4jOCbvqies3DQQ0q3D
 o9YZBnuBw7A3tzJJ3F5KajRnFLazJBOV5BKGo7eYuTzT56mpZW/HF6eS9b1DbP9x
 4q71Vd5qhIuU9JsQAStfZ6pdx3FBXRNGpIXXfwzbCSdaePIuOKS17zvA/Iy5bWeA
 2TyqgMuKZwnXOXxQesMZJYIw2IEnIyobzh0A1wAnvReyos/nHF/tha/SA/Jutq1s
 +0gOkMlPW2EdpADmlfLPRSHgSqO8bfCPeNPihn672MS2dAv9H+XRLcoKuSNErhdl
 1gYtnR7IK+Sl0KmMC5YoMvXPchkV5YS2qEp1f3p+ZmgcMSWyHHKMtf8VwjNTaSBU
 e1AshH6HvmYEPt0cnntSMAxbw+N596QjkVp4RbHsLpyj7qeUVVY56/K/aiM7M69P
 BvJkuewrhsAxyM2X2OsD
 =ak0A
 -----END PGP SIGNATURE-----

Merge tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux

Pull devicetree changes from Grant Likely:
 "Lots of activity in the devicetree code for v3.18.  Most of it is
  related to getting all of the overlay support code in place, but there
  are other important things in there.

  Highlights:

   - OF_RECONFIG notifiers for SPI, I2C and Platform devices.  Those
     subsystems can now respond to live changes to the device tree.

   - CONFIG_OF_OVERLAY method for applying live changes to the device
     tree

   - Removal of the of_allnodes list.  This used to be used to iterate
     over all the nodes in the device tree, but it is unnecessary
     because the same thing can be done by iterating over the list of
     child pointers.  Getting rid of of_allnodes saves some memory and
     avoids the possibility of of_allnodes being sorted differently from
     the child lists.

   - Support for retrieving original DTB blob via sysfs.  Needed by
     kexec.

   - More unittests

   - Documentation and minor bug fixes"

* tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux: (42 commits)
  of: Delete unnecessary check before calling "of_node_put()"
  of: Drop ->next pointer from struct device_node
  spi: Check for spi_of_notifier when CONFIG_OF_DYNAMIC=y
  of: support passing console options with stdout-path
  of: add optional options parameter to of_find_node_by_path()
  of: Add bindings for chosen node, stdout-path
  of: Remove unneeded and incorrect MODULE_DEVICE_TABLE
  ARM: dt: fix up PL011 device tree bindings
  of: base, fix of_property_read_string_helper kernel-doc
  of: remove select of non-existant OF_DEVICE config symbol
  spi/of: Add OF notifier handler
  spi/of: Create new device registration method and accessors
  i2c/of: Add OF_RECONFIG notifier handler
  i2c/of: Factor out Devicetree registration code
  of/overlay: Add overlay unittests
  of/overlay: Introduce DT overlay support
  of/reconfig: Add OF_DYNAMIC notifier for platform_bus_type
  of/reconfig: Always use the same structure for notifiers
  of/reconfig: Add debug output for OF_RECONFIG notifiers
  of/reconfig: Add empty stubs for the of_reconfig methods
  ...
2014-12-11 13:06:58 -08:00
..
88pm80x.c
88pm800.c mfd: 88pm800: Fix I2C device resource leak if probe fails 2014-03-19 08:58:15 +00:00
88pm805.c mfd: 88pm805: msleep(1ms ~ 20ms) may not do what the caller intends 2014-07-09 16:38:02 +01:00
88pm860x-core.c mfd: 88pm860x-core: Repair formatting issues 2014-07-09 16:38:03 +01:00
88pm860x-i2c.c mfd: 88pm860x-i2c: Fix variable length array Sparse warning 2014-09-26 08:15:45 +01:00
Kconfig mfd: atmel-hlcdc: Add Kconfig option description and name 2014-12-01 13:03:30 +00:00
Makefile mfd: rtsx: Fix PM suspend for 5227 & 5249 2014-11-25 16:18:48 +00:00
aat2870-core.c mfd: aat2870-core: Stop using obsolte simple_strtoul() 2014-07-09 16:38:04 +01:00
ab3100-core.c mfd: ab3100-core: Correct code sytle problems 2014-07-09 16:38:05 +01:00
ab3100-otp.c
ab8500-core.c mfd: ab8500-core: Use 'ifdef' for config options 2014-08-20 13:28:02 +01:00
ab8500-debugfs.c mfd: ab8500-debugfs: BIG clean-up 2014-07-21 16:54:25 +01:00
ab8500-gpadc.c MFD / PM: Replace CONFIG_PM_RUNTIME with CONFIG_PM 2014-12-05 03:04:12 +01:00
ab8500-sysctrl.c mfd: ab8500-sysctrl: Drop ab8500_restart 2014-11-25 16:18:50 +00:00
abx500-core.c mfd: abx500-core: Remove unused function abx500_dump_all_banks() 2014-06-03 08:11:51 +01:00
adp5520.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
arizona-core.c MFD / PM: Replace CONFIG_PM_RUNTIME with CONFIG_PM 2014-12-05 03:04:12 +01:00
arizona-i2c.c mfd: arizona: Rid data size incompatibility warn when building for 64bit 2014-07-09 16:38:01 +01:00
arizona-irq.c mfd: arizona: Use handle_simple_irq for IRQ dispatch chip 2014-09-26 08:23:55 +01:00
arizona-spi.c mfd: arizona-spi: Add lines after declarations - checkpatch catch 2014-11-25 16:18:45 +00:00
arizona.h mfd: wm5110: Add new interrupt register definitions 2014-07-28 11:01:42 +01:00
as3711.c mfd: as3711: Make of_device_id array const 2014-06-03 08:11:38 +01:00
as3722.c mfd: as3722: Make FUSE7_REG readable 2014-03-19 08:58:37 +00:00
asic3.c driver:gpio remove all usage of gpio_remove retval in driver 2014-09-18 11:03:10 -07:00
atmel-hlcdc.c mfd: Add atmel-hlcdc driver 2014-11-25 16:18:43 +00:00
axp20x.c ACPI and power management updates for 3.19-rc1 2014-12-10 21:17:00 -08:00
bcm590xx.c Changes to existing drivers: 2014-06-06 12:08:39 -07:00
cros_ec.c mfd: cros_ec: wait for completion of commands that return IN_PROGRESS 2014-10-06 21:30:16 +01:00
cros_ec_i2c.c mfd: cros_ec: Use the proper size when looking at the cros_ec_i2c result 2014-07-09 16:38:21 +01:00
cros_ec_spi.c mfd: cros_ec: move locking into cros_ec_cmd_xfer 2014-10-06 21:29:50 +01:00
cs5535-mfd.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
da903x.c mfd: Use dev_get_platdata() 2013-07-31 13:01:29 +01:00
da9052-core.c mfd: da9052: Avoid setting read_flag_mask for da9052-i2c driver 2014-09-26 08:15:54 +01:00
da9052-i2c.c mfd: da9052-i2c: Remove duplicate test for I2C_FUNC_SMBUS_BYTE_DATA functionality 2014-09-26 08:15:41 +01:00
da9052-irq.c
da9052-spi.c mfd: da9052: Avoid setting read_flag_mask for da9052-i2c driver 2014-09-26 08:15:54 +01:00
da9055-core.c devicetree: Dialog Semiconductor consolidate existing vendor prefixes to standardise on 'dlg' 2014-08-29 09:26:29 +01:00
da9055-i2c.c mfd: da9055: Add DT support for PMIC 2014-03-19 08:58:39 +00:00
da9063-core.c mfd: da9063: Get irq base dynamically before registering device 2014-11-25 16:19:24 +00:00
da9063-i2c.c mfd: da9063: Add support for AD silicon variant 2014-07-28 08:09:25 +01:00
da9063-irq.c mfd: da9063: Add IRQ support 2013-08-20 03:16:00 +02:00
davinci_voicecodec.c mfd: davinci_voicecodec: Provide a regmap for register I/O 2013-09-02 10:27:49 +02:00
db8500-prcmu.c mfd: db8500-prcmu: Provide sane error path values 2014-11-25 16:18:50 +00:00
dbx500-prcmu-regs.h mfd: dbx500: Remove any mention of the BML8580CLK 2013-09-26 11:04:16 +02:00
dln2.c mfd: dln2: add support for USB-SPI module 2014-11-25 16:18:57 +00:00
dm355evm_msp.c mfd: dm355evm_msp: Fix checkpatch error: insert space after ',' 2014-07-22 13:17:06 +01:00
ezx-pcap.c mfd: ezx-pcap: Repair coding style errors picked up with checkpatch 2014-07-25 15:31:02 +01:00
hi6421-pmic-core.c mfd: Add HI6421 PMIC Core driver 2014-09-26 08:23:43 +01:00
htc-egpio.c mfd: Use dev_get_platdata() 2013-07-31 13:01:29 +01:00
htc-i2cpld.c Changes to existing drivers: 2014-10-15 06:58:16 +02:00
htc-pasic3.c mfd: Constify struct mfd_cell where possible 2014-01-06 09:13:29 +00:00
intel_msic.c mfd: fix comment 2014-06-19 15:23:36 +02:00
intel_soc_pmic_core.c mfd: intel_soc_pmic: Add CONFIG_PM_SLEEP check for suspend_fn/resume_fn 2014-09-26 08:23:52 +01:00
intel_soc_pmic_core.h mfd: intel_soc_pmic: Core driver 2014-06-17 15:59:20 +01:00
intel_soc_pmic_crc.c ACPI / PMIC: support PMIC operation region for CrystalCove 2014-11-26 23:32:05 +01:00
ipaq-micro.c mfd: ipaq-micro: Fix coding style errors/warnings reported by checkpatch 2014-07-25 15:31:45 +01:00
janz-cmodio.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
jz4740-adc.c mfd: Constify struct mfd_cell where possible 2014-01-06 09:13:29 +00:00
kempld-core.c mfd: kempld-core: Correct a variety of checkpatch warnings 2014-07-25 15:31:45 +01:00
lm3533-core.c mfd: Use dev_get_platdata() 2013-07-31 13:01:29 +01:00
lm3533-ctrlbank.c
lp3943.c mfd: lp3943: Make mfd_cell array const 2014-06-03 08:11:36 +01:00
lp8788-irq.c mfd: lp8788-irq: Fix 'missing blank line after declarations' warning 2014-07-25 15:31:39 +01:00
lp8788.c mfd: Constify struct mfd_cell where possible 2014-01-06 09:13:29 +00:00
lpc_ich.c mfd: lpc_ich: Add Device IDs for Intel 9 Series PCH 2014-09-26 08:15:44 +01:00
lpc_sch.c mfd: lpc_sch: Don't call mfd_remove_devices() 2014-11-25 16:18:52 +00:00
max8907.c mfd: max8907: Make of_device_id array const 2014-06-03 08:11:32 +01:00
max8925-core.c mfd: max8925-core: Fix 'missing blank line after declarations' warning 2014-07-25 15:31:41 +01:00
max8925-i2c.c mfd: max8925-i2c: Fix variable length array Sparse warning 2014-09-26 08:15:46 +01:00
max8997-irq.c
max8997.c mfd: max8997: Make of_device_id array const 2014-06-03 08:11:30 +01:00
max8998-irq.c
max8998.c mfd: max8998: Make of_device_id array const 2014-06-03 08:11:34 +01:00
max14577.c mfd: max14577: Fix obvious typo in company name in copyright 2014-11-25 16:19:24 +00:00
max77686.c mfd: max77686: Remove check which is always true 2014-09-26 08:15:32 +01:00
max77693.c Hi Linus, 2014-12-08 20:02:54 -08:00
mc13xxx-core.c mfd: mc13xxx: Configure WDI reset 2014-09-26 08:23:50 +01:00
mc13xxx-i2c.c mfd: mc13xxx: Simplify probe() & remove() 2014-01-21 08:28:10 +00:00
mc13xxx-spi.c mfd: mc13xxx: Add missing spi_setup() 2014-03-19 08:58:35 +00:00
mc13xxx.h mfd: mc13xxx: Use regmap irq framework for interrupts 2014-07-09 14:58:10 +01:00
mcp-core.c mfd: mcp-core: Fix 'blank line after declarations' warning 2014-07-22 13:17:02 +01:00
mcp-sa11x0.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
menelaus.c mfd: menelaus: Fix error return code 2014-09-26 08:15:41 +01:00
menf21bmc.c mfd: menf21bmc: Introduce MEN 14F021P00 BMC MFD Core driver 2014-09-24 13:30:16 +01:00
mfd-core.c mfd: core: Fix platform-device id generation 2014-11-25 16:18:43 +00:00
omap-usb-host.c mfd: omap-usb-host: Fix %d confusingly prefixed with 0x in format string 2014-08-20 13:26:52 +01:00
omap-usb-tll.c mfd: omap-usb-tll: Fix cppcheck sizeof warning 2014-03-13 22:21:48 +00:00
omap-usb.h
palmas.c regulator: palmas: add driver data and modularize the probe 2014-06-23 12:30:56 +01:00
pcf50633-adc.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
pcf50633-core.c mfd: pcf50633: Use sprintf directly 2014-09-26 08:23:49 +01:00
pcf50633-gpio.c
pcf50633-irq.c
pm8921-core.c mfd: pm8921-core: Remove unused variable 2014-07-09 14:58:09 +01:00
qcom-spmi-pmic.c mfd: Add support for Qualcomm SPMI PMICs 2014-09-26 08:24:00 +01:00
rc5t583-irq.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
rc5t583.c mfd: Constify struct mfd_cell where possible 2014-01-06 09:13:29 +00:00
rdc321x-southbridge.c mfd: rdc321x: Fix off-by-one for ngpio setting 2014-06-03 08:11:17 +01:00
retu-mfd.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
rk808.c mfd: rk808: Add register caching 2014-09-26 08:23:56 +01:00
rn5t618.c mfd: Add Ricoh RN5T618 PMIC core driver 2014-09-26 08:15:51 +01:00
rtl8411.c mfd: rtsx: Fix sparse non static symbol warning 2014-01-21 08:28:14 +00:00
rts5209.c mfd: mmc: rtsx: Change default tx phase 2013-08-30 14:24:07 +02:00
rts5227.c mfd: rtsx: Fix PM suspend for 5227 & 5249 2014-11-25 16:18:48 +00:00
rts5229.c mfd: mmc: rtsx: Change default tx phase 2013-08-30 14:24:07 +02:00
rts5249.c mfd: rtsx: Fix PM suspend for 5227 & 5249 2014-11-25 16:18:48 +00:00
rtsx_gops.c mfd: rtsx: Fix PM suspend for 5227 & 5249 2014-11-25 16:18:48 +00:00
rtsx_pcr.c mfd: rtsx: Fix build warnings for !PM 2014-11-10 15:21:59 +00:00
rtsx_pcr.h mfd: rtsx: Fix PM suspend for 5227 & 5249 2014-11-25 16:18:48 +00:00
rtsx_usb.c mfd: Use mfd_add_hotplug_devices() helper 2014-11-25 16:18:42 +00:00
sec-core.c Revert "mfd: sec-core: Prepare regulators for suspend state to reduce power-consumption" 2014-11-25 16:18:47 +00:00
sec-irq.c mfd: sec-core: Add support for S2MPS13 device 2014-11-25 15:55:01 +00:00
si476x-cmd.c mfd: si476x-cmd: Remedy checkpatch style complains 2014-07-25 15:31:44 +01:00
si476x-i2c.c mfd: Use dev_get_platdata() 2013-07-31 13:01:29 +01:00
si476x-prop.c
sm501.c Changes to existing drivers: 2014-10-15 06:58:16 +02:00
smsc-ece1099.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
ssbi.c mfd: ssbi: Mark match table const 2014-01-21 08:28:08 +00:00
sta2x11-mfd.c mfd: sta2x11-mfd: Use named constants for pci_power_t values 2014-01-21 08:29:00 +00:00
stmpe-i2c.c mfd: stmpe: Rid data size incompatibility warn when building for 64bit 2014-07-09 16:37:55 +01:00
stmpe-spi.c
stmpe.c mfd: stmpe: Support gpio over irq under device tree 2014-09-26 08:23:53 +01:00
stmpe.h mfd: stmpe: Fix STMPE24xx GPMR LSB 2014-11-10 15:21:58 +00:00
stw481x.c mfd: stw481x: Check the return value of devm_regmap_init_i2c 2014-03-19 08:58:17 +00:00
sun6i-prcm.c mfd: sun6i-prcm: Add support for Allwinner A23 PRCM 2014-07-21 16:54:25 +01:00
syscon.c mfd: syscon: Decouple syscon interface from platform devices 2014-11-25 16:18:41 +00:00
t7l66xb.c mfd: t7l66xb: prepare/unprepare clocks 2014-11-25 16:18:58 +00:00
tc3589x.c mfd: tc3589x: get rid of static base 2014-11-25 16:18:56 +00:00
tc6387xb.c mfd: tc6387xb: prepare/unprepare clocks 2014-11-25 16:18:58 +00:00
tc6393xb.c mfd: tc6393xb: Prepare/unprepare clocks 2014-11-25 16:18:54 +00:00
ti_am335x_tscadc.c mfd: ti_am335x_tscadc: Update logic in CTRL register for 5-wire TS 2014-09-26 08:24:03 +01:00
timberdale.c mfd: timberdale: Use pci_enable_msix_exact() instead of pci_enable_msix() 2014-03-19 08:58:34 +00:00
timberdale.h
tmio_core.c
tps6105x.c mfd: tps6105x: Use managed resources when allocating memory 2014-07-25 15:31:47 +01:00
tps6507x.c mfd: tps6507x: Make of_device_id array const 2014-06-03 08:11:27 +01:00
tps6586x.c mfd: tps6586x: Make of_device_id array const 2014-06-03 08:11:28 +01:00
tps65010.c mfd: tps65010: Use devm_*() functions 2013-08-20 08:51:48 +01:00
tps65090.c mfd: tps65090: Fix bonkers indenting strategy 2014-11-25 16:18:53 +00:00
tps65217.c mfd: tps65217: Add compatible string for subdevices 2014-11-25 16:18:38 +00:00
tps65218.c mfd: tps65218: Terminate of match table 2014-06-03 08:11:54 +01:00
tps65910.c mfd: tps65910: Work around silicon erratum SWCZ010 2014-09-26 08:15:48 +01:00
tps65911-comparator.c
tps65912-core.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
tps65912-i2c.c
tps65912-irq.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
tps65912-spi.c mfd: tps65912-spi: Remove unused variable 2014-07-28 08:10:06 +01:00
tps80031.c mfd: ti: Constify struct mfd_cell where possible 2014-01-06 09:13:29 +00:00
twl-core.c Immutable branch between MFD and Extcon due for v3.16 merge-window. 2014-06-03 08:08:40 +01:00
twl-core.h
twl4030-audio.c mfd: Use dev_get_platdata() 2013-07-31 13:01:29 +01:00
twl4030-irq.c mfd: twl4030-irq: Check return value from twl_i2c_write() - warn() on failure 2014-09-26 08:15:34 +01:00
twl4030-power.c Hi Linus, 2014-12-08 20:02:54 -08:00
twl6030-irq.c mfd: twl6030-irq: Extinguish coding style warnings 2014-07-25 15:31:42 +01:00
twl6040.c mfd: twl6040: Fix error return code 2014-09-26 08:15:37 +01:00
ucb1x00-assabet.c
ucb1x00-core.c driver:gpio remove all usage of gpio_remove retval in driver 2014-09-18 11:03:10 -07:00
ucb1x00-ts.c
ucb1400_core.c mfd: Use dev_get_platdata() 2013-07-31 13:01:29 +01:00
vexpress-sysreg.c of: Eliminate of_allnodes list 2014-11-04 13:29:38 +00:00
viperboard.c mfd: Use mfd_add_hotplug_devices() helper 2014-11-25 16:18:42 +00:00
vx855.c mfd: Remove DEFINE_PCI_DEVICE_TABLE macro 2014-01-21 08:27:45 +00:00
wl1273-core.c mfd: wl1273: Use devm_*() functions 2013-08-20 08:51:58 +01:00
wm831x-auxadc.c
wm831x-core.c mfd: wolfson: Constify struct mfd_cell where possible 2014-01-06 09:13:25 +00:00
wm831x-i2c.c mfd: wm831x: Use PM ops for shutdown 2014-01-21 08:27:51 +00:00
wm831x-irq.c mfd: Use dev_get_platdata() 2013-07-31 13:01:29 +01:00
wm831x-otp.c
wm831x-spi.c mfd: wm831x: Use PM ops for shutdown 2014-01-21 08:27:51 +00:00
wm5102-tables.c mfd: arizona: Document HP_CTRL_1L and HP_CTRL_1R registers 2014-11-25 16:18:55 +00:00
wm5110-tables.c mfd: wm5110: Add missing registers for AIF2 channels 3-6 2014-11-25 16:18:56 +00:00
wm8350-core.c mfd: wm8350-core: Fix probable mask then right shift defect 2014-11-25 16:18:51 +00:00
wm8350-gpio.c
wm8350-i2c.c mfd: wm8350-i2c: Replace spaces with tabs 2014-07-25 15:31:42 +01:00
wm8350-irq.c mfd: wm8350-irq: Fix 'line over 80 chars' warning 2014-07-22 13:17:05 +01:00
wm8350-regmap.c
wm8400-core.c mfd: wm8400-core: Make mfd_cell array const 2014-06-03 08:11:34 +01:00
wm8994-core.c MFD / PM: Replace CONFIG_PM_RUNTIME with CONFIG_PM 2014-12-05 03:04:12 +01:00
wm8994-irq.c mfd: wm8994: Export symbols ready for built-in => modular build 2014-09-26 08:15:35 +01:00
wm8994-regmap.c mfd: wm8994: Export symbols ready for built-in => modular build 2014-09-26 08:15:35 +01:00
wm8994.h
wm8997-tables.c mfd: arizona: Document HP_CTRL_1L and HP_CTRL_1R registers 2014-11-25 16:18:55 +00:00