OpenCloudOS-Kernel/include/linux/mfd
Linus Torvalds 48c1c40ab4 ARM: SoC drivers for v5.11
There are a couple of subsystems maintained by other people that
 merge their drivers through the SoC tree, those changes include:
 
  - The SCMI firmware framework gains support for sensor notifications
    and for controlling voltage domains.
 
  - A large update for the Tegra memory controller driver, integrating
    it better with the interconnect framework
 
  - The memory controller subsystem gains support for Mediatek MT8192
 
  - The reset controller framework gains support for sharing pulsed
    resets
 
 For Soc specific drivers in drivers/soc, the main changes are
 
  - The Allwinner/sunxi MBUS gets a rework for the way it handles
    dma_map_ops and offsets between physical and dma address spaces.
 
  - An errata fix plus some cleanups for Freescale Layerscape SoCs
 
  - A cleanup for renesas drivers regarding MMIO accesses.
 
  - New SoC specific drivers for Mediatek MT8192 and MT8183 power domains
 
  - New SoC specific drivers for Aspeed AST2600 LPC bus control
    and SoC identification.
 
  - Core Power Domain support for Qualcomm MSM8916, MSM8939, SDM660
    and SDX55.
 
  - A rework of the TI AM33xx 'genpd' power domain support to use
    information from DT instead of platform data
 
  - Support for TI AM64x SoCs
 
  - Allow building some Amlogic drivers as modules instead of built-in
 
 Finally, there are numerous cleanups and smaller bug fixes for
 Mediatek, Tegra, Samsung, Qualcomm, TI OMAP, Amlogic, Rockchips,
 Renesas, and Xilinx SoCs.
 
 There is a trivial conflict in the cedrus driver, with two branches
 adding the same CEDRUS_CAPABILITY_H265_DEC flag, and another trivial
 remove/remove conflict in linux/dma-mapping.h.
 
 Signed-off-by: Arnd Bergmann <arnd@arndb.de>
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAl/alSUACgkQmmx57+YA
 GNm7GRAAlNMVi7F0f4Ixf1bEh+J2QUonYIpZfrdxOLFwISGQ+nstGrFW2He/OeQv
 KAi027tZLl6Sdzjy809cLDPA4Z2IKwjVWhEbBHybvy1+irPYjnixtLd0x3YvPhjH
 iadlcjQ3uaGue8PvubK6CVnBEy82A+Pp29n9i4A4wX/8w+BVIhVsxwQWUBF8pFXE
 3La2UZYZMVMvVZMrpTOqwCgdmLDCk+RLMVZ1IiRqBEBq5/DVq03uIXgjGEOrq8tl
 PXC89w7K510Is891mbBdBThQf+pZkU1vwORuknDcEJKWs9ngbEha7ebVgp32kbFl
 pi8DEK205d106WQgfn0Zxkpbsp8XD058wDILwkhBcteXlBaUEL6btGVLDTUCJZuv
 /pkH8tL4lNGpThQFbCEXC8oHZBp2xk55P+SW9RRZOoA5tAp+sz7hlf3y3YKdCSxv
 4xybeeVOAgjl01WtbEC7CuIkqcKVSQ7njhLhC8r5ASteNywDThqxLT6nd0VegcQc
 YH3Eu9QRXpvFwQ35zMkTMWa27bMG5d60fp90bWT0R5amXZpxJJot87w8trFCxv74
 mE5KvCbefCRNsTt8GOBA/WR7hVaG369g07qOvs7g4LjJEM3Nl2h/A4/zVFef9O0t
 yq3Nm4YCGfDSAQXzGR2SJ3nxiqbDknzJTAtZPf4BmbaMuPOIJ5k=
 =BjJf
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc-drivers-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC driver updates from Arnd Bergmann:
 "There are a couple of subsystems maintained by other people that merge
  their drivers through the SoC tree, those changes include:

   - The SCMI firmware framework gains support for sensor notifications
     and for controlling voltage domains.

   - A large update for the Tegra memory controller driver, integrating
     it better with the interconnect framework

   - The memory controller subsystem gains support for Mediatek MT8192

   - The reset controller framework gains support for sharing pulsed
     resets

  For Soc specific drivers in drivers/soc, the main changes are

   - The Allwinner/sunxi MBUS gets a rework for the way it handles
     dma_map_ops and offsets between physical and dma address spaces.

   - An errata fix plus some cleanups for Freescale Layerscape SoCs

   - A cleanup for renesas drivers regarding MMIO accesses.

   - New SoC specific drivers for Mediatek MT8192 and MT8183 power
     domains

   - New SoC specific drivers for Aspeed AST2600 LPC bus control and SoC
     identification.

   - Core Power Domain support for Qualcomm MSM8916, MSM8939, SDM660 and
     SDX55.

   - A rework of the TI AM33xx 'genpd' power domain support to use
     information from DT instead of platform data

   - Support for TI AM64x SoCs

   - Allow building some Amlogic drivers as modules instead of built-in

  Finally, there are numerous cleanups and smaller bug fixes for
  Mediatek, Tegra, Samsung, Qualcomm, TI OMAP, Amlogic, Rockchips,
  Renesas, and Xilinx SoCs"

* tag 'arm-soc-drivers-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (222 commits)
  soc: mediatek: mmsys: Specify HAS_IOMEM dependency for MTK_MMSYS
  firmware: xilinx: Properly align function parameter
  firmware: xilinx: Add a blank line after function declaration
  firmware: xilinx: Remove additional newline
  firmware: xilinx: Fix kernel-doc warnings
  firmware: xlnx-zynqmp: fix compilation warning
  soc: xilinx: vcu: add missing register NUM_CORE
  soc: xilinx: vcu: use vcu-settings syscon registers
  dt-bindings: soc: xlnx: extract xlnx, vcu-settings to separate binding
  soc: xilinx: vcu: drop useless success message
  clk: samsung: mark PM functions as __maybe_unused
  soc: samsung: exynos-chipid: initialize later - with arch_initcall
  soc: samsung: exynos-chipid: order list of SoCs by name
  memory: jz4780_nemc: Fix potential NULL dereference in jz4780_nemc_probe()
  memory: ti-emif-sram: only build for ARMv7
  memory: tegra30: Support interconnect framework
  memory: tegra20: Support hardware versioning and clean up OPP table initialization
  dt-bindings: memory: tegra20-emc: Document opp-supported-hw property
  soc: rockchip: io-domain: Fix error return code in rockchip_iodomain_probe()
  reset-controller: ti: force the write operation when assert or deassert
  ...
2020-12-16 16:38:41 -08:00
..
abx500 mfd: Switch the AB8500 GPADC to IIO 2019-10-18 19:37:45 +01:00
arizona mfd: wm8998: Remove some unused registers 2019-11-11 08:45:02 +00:00
da9052 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
da9055 mfd: da9055: pdata.h: Drop a duplicated word 2020-08-13 07:49:59 +01:00
da9062 regulator: da9061/62: Adjust LDO voltage selection minimum value 2019-06-20 13:07:19 +01:00
da9063 mfd: da9063: Add support for latest DA silicon revision 2020-08-13 07:49:50 +01:00
da9150 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
madera mfd: madera: Add special errata reset handling for cs47l15 2020-11-19 08:34:22 +00:00
mt6323 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mt6358 mfd: Add support for the MediaTek MT6358 PMIC 2020-05-21 08:55:29 +01:00
mt6397 rtc: mt6397: Remove unused member dev 2020-10-15 12:01:29 +02:00
pcf50633 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
samsung Merge branch 'regulator-5.3' into regulator-next 2019-07-04 17:34:32 +01:00
syscon soc: xilinx: vcu: add missing register NUM_CORE 2020-12-09 19:36:33 +01:00
wcd934x mfd: wcd934x: Add support to wcd9340/wcd9341 codec 2020-01-29 11:18:40 +00:00
wm831x watchdog: wm831x_wdt: Remove GPIO handling 2020-03-18 11:15:24 +01:00
wm8350 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
wm8994 mfd: wm8994: Fix comment spelling 2020-03-17 20:48:41 +01:00
88pm80x.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
88pm860x.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
aat2870.h mfd: aat2870: No need to check return value of debugfs_create functions 2019-08-12 07:27:40 +01:00
ab3100.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 2019-05-30 11:29:22 -07:00
abx500.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 2019-05-30 11:29:22 -07:00
ac100.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
adp5520.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 2019-05-30 11:25:18 -07:00
altera-a10sr.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 2019-05-30 11:29:52 -07:00
altera-sysmgr.h mfd: altera-sysmgr: Add SOCFPGA System Manager 2019-04-02 07:37:45 +01:00
as3711.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 312 2019-06-05 17:37:04 +02:00
as3722.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
asic3.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
atmel-hlcdc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
axp20x.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
bcm590xx.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
bcm2835-pm.h soc: bcm: bcm2835-pm: Add support for power domains under a new binding. 2019-01-09 16:55:09 +01:00
bd9571mwv.h mfd: bd9571mwv: Add DDR Backup Power register bit definitions 2018-04-23 17:53:41 +01:00
core.h mfd: mfd-core: Add mechanism for removal of a subset of children 2020-08-13 07:50:50 +01:00
da8xx-cfgchip.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
da903x.h
davinci_voicecodec.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
db8500-prcmu.h mfd: dbx500-prcmu: Drop DSI pll clock functions 2020-01-24 07:33:58 +00:00
dbx500-prcmu.h mfd: dbx500-prcmu: Drop DSI pll clock functions 2020-01-24 07:33:58 +00:00
dln2.h
dm355evm_msp.h
ds1wm.h
ezx-pcap.h
gsc.h mfd: Add Gateworks System Controller core driver 2020-05-20 10:28:57 +01:00
hi655x-pmic.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
hi6421-pmic.h mfd: Replace HTTP links with HTTPS ones 2020-08-13 07:50:59 +01:00
hi6421-spmi-pmic.h staging: mfd: hi6421-spmi-pmic: get rid of interrupt properties 2020-08-18 17:05:14 +02:00
htc-pasic3.h
imx25-tsadc.h
ingenic-tcu.h mfd: ingenic-tcu: Fix bit field description in header 2019-01-03 08:32:42 +00:00
intel-m10-bmc.h mfd: intel-m10-bmc: Add Intel MAX 10 BMC chip support for Intel FPGA PAC 2020-09-30 17:46:21 +01:00
intel_msic.h mfd: Convert Intel PMIC drivers to use SPDX identifier 2018-10-23 08:58:34 +01:00
intel_pmc_bxt.h platform/x86: intel_pmc_ipc: Convert to MFD 2020-04-24 11:18:44 +01:00
intel_soc_pmic.h mfd: intel_soc_pmic: Add SCU IPC member to struct intel_soc_pmic 2020-04-24 11:17:52 +01:00
intel_soc_pmic_bxtwc.h mfd: Convert Intel PMIC drivers to use SPDX identifier 2018-10-23 08:58:34 +01:00
intel_soc_pmic_mrfld.h mfd: Add support for Merrifield Basin Cove PMIC 2019-09-02 11:09:03 +01:00
ipaq-micro.h
iqs62x.h mfd: Add support for Azoteq IQS620A/621/622/624/625 2020-03-27 08:25:37 +00:00
janz.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
kempld.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 424 2019-06-05 17:37:15 +02:00
khadas-mcu.h mfd: Add support for the Khadas System control Microcontroller 2020-06-18 11:23:16 +01:00
lm3533.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
lochnagar.h mfd: lochnagar: Add support for the Cirrus Logic Lochnagar 2019-02-07 10:44:00 +00:00
lochnagar1_regs.h mfd: lochnagar: Add support for the Cirrus Logic Lochnagar 2019-02-07 10:44:00 +00:00
lochnagar2_regs.h mfd: lochnagar: Add support for the Cirrus Logic Lochnagar 2019-02-07 10:44:00 +00:00
lp873x.h mfd: Replace HTTP links with HTTPS ones 2020-08-13 07:50:59 +01:00
lp3943.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
lp8788-isink.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
lp8788.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
lp87565.h mfd: lp87565: Add LP87524-Q1 variant 2020-09-30 16:25:29 +01:00
lpc_ich.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 300 2019-06-05 17:37:00 +02:00
max8907.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
max8925.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
max8997-private.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
max8997.h mfd: max8997: Enale irq-wakeup unconditionally 2018-10-23 08:58:34 +01:00
max8998-private.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
max8998.h regulator: max8998: Add charger regulator 2020-05-22 13:11:05 +01:00
max14577-private.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
max14577.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
max77620.h mfd: max77620: Do not allocate IRQs upfront 2019-11-11 08:45:02 +00:00
max77650.h mfd: Add new driver for MAX77650 PMIC 2019-05-08 12:06:21 +01:00
max77686-private.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
max77686.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
max77693-common.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
max77693-private.h mfd: max77693-private: Drop a duplicated word 2020-08-13 07:50:01 +01:00
max77693.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
max77843-private.h mfd: maxim: Add SPDX license identifiers 2018-10-23 08:58:34 +01:00
mc13xxx.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mc13783.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mc13892.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mcp.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 2019-05-30 11:29:19 -07:00
menelaus.h
motorola-cpcap.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mp2629.h iio: adc: mp2629: Add support for mp2629 ADC driver 2020-05-26 10:41:47 +01:00
mt6360.h mfd: Add support for PMIC MT6360 2020-05-27 07:46:18 +01:00
mxs-lradc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
palmas.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
qcom_rpm.h
rave-sp.h mfd: rave-sp: Add legacy EEPROM access command translation 2018-07-27 08:13:25 +01:00
rc5t583.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 2019-05-30 11:29:52 -07:00
rdc321x.h
retu.h
rk808.h mfd: rk808: Convert RK805 to shutdown/suspend hooks 2020-03-30 07:35:28 +01:00
rn5t618.h mfd: rn5t618: Add RTC related registers 2020-03-27 09:42:18 +00:00
rohm-bd718x7.h clk: bd718x7: Support ROHM BD71828 clk block 2020-01-24 07:22:47 +00:00
rohm-bd70528.h rtc: bd70528: add BD71828 support 2020-01-24 07:23:06 +00:00
rohm-bd71828.h rtc: bd70528: add BD71828 support 2020-01-24 07:23:06 +00:00
rohm-generic.h regulator: bd718x7: Split driver to common and bd718x7 specific parts 2020-01-24 07:22:53 +00:00
rohm-shared.h rtc: bd70528: add BD71828 support 2020-01-24 07:23:06 +00:00
rt5033-private.h mfd: rt5033: Fix errorneous defines 2020-11-19 08:34:23 +00:00
rt5033.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 450 2019-06-05 17:37:18 +02:00
sc27xx-pmic.h mfd: sc27xx: Add USB charger type detection support 2020-03-30 07:35:28 +01:00
si476x-core.h mfd: si476x-core.h: Fix "regulator" spelling in comment 2020-11-27 13:18:53 +00:00
si476x-platform.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 2019-06-05 17:36:37 +02:00
si476x-reports.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 2019-06-05 17:36:37 +02:00
sky81452.h backlight: sky81452: Privatize platform data 2020-07-01 10:40:11 +01:00
sta2x11-mfd.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
stm32-lptimer.h mfd: stm32: Add defines to be used for clkevent purpose 2020-06-18 11:19:42 +01:00
stm32-timers.h pwm: stm32: Remove clutter from ternary operator 2019-10-21 16:50:05 +02:00
stmfx.h mfd: stmfx: Disable IRQ in suspend to avoid spurious interrupt 2020-05-26 10:51:21 +01:00
stmpe.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 464 2019-06-19 17:09:10 +02:00
stpmic1.h mfd: stpmic1: Add STPMIC1 driver 2019-01-16 13:59:34 +00:00
stw481x.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 2019-05-30 11:29:22 -07:00
sun4i-gpadc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
syscon.h mfd: syscon: Add syscon_regmap_lookup_by_phandle_optional() function. 2020-11-19 08:30:11 +00:00
t7l66xb.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
tc3589x.h gpio: tc35894: Disable Direct KBD interrupts to enable gpio irq 2020-09-09 11:33:07 +02:00
tc6387xb.h
tc6393xb.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ti-lmu-register.h LED updates for 5.3-rc1 2019-07-09 08:59:39 -07:00
ti-lmu.h LED updates for 5.3-rc1 2019-07-09 08:59:39 -07:00
ti_am335x_tscadc.h mfd: Replace HTTP links with HTTPS ones 2020-08-13 07:50:59 +01:00
tmio.h mmc: tmio: set max_busy_timeout 2020-12-04 13:28:25 +01:00
tps6105x.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 2019-05-30 11:29:22 -07:00
tps6507x.h
tps6586x.h regulator: tps6586x: Add support for TPS658624 2018-04-20 11:44:34 +01:00
tps65010.h
tps65086.h mfd: Replace HTTP links with HTTPS ones 2020-08-13 07:50:59 +01:00
tps65090.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 2019-05-21 11:28:39 +02:00
tps65217.h mfd: Replace HTTP links with HTTPS ones 2020-08-13 07:50:59 +01:00
tps65218.h mfd: Replace HTTP links with HTTPS ones 2020-08-13 07:50:59 +01:00
tps65910.h mfd: tps65910: Remove unused pointers 2020-11-19 08:34:22 +00:00
tps65912.h mfd: Replace HTTP links with HTTPS ones 2020-08-13 07:50:59 +01:00
tps68470.h mfd: Update to SPDX license identifier 2018-05-16 09:21:48 +01:00
tps80031.h
twl.h mfd: twl: Endian fixups in i2c write and read wrappers 2019-11-11 08:45:02 +00:00
twl4030-audio.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 2019-06-05 17:37:07 +02:00
twl6040.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 2019-06-05 17:37:07 +02:00
ucb1x00.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 2019-05-30 11:29:19 -07:00
viperboard.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
wl1273-core.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 2019-06-05 17:37:07 +02:00
wm97xx.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
wm8400-audio.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
wm8400-private.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
wm8400.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00