u-boot-brain/arch/mips
John Robertson 81b543a4e6 mips: dts: Fix PIC32MZDA GPIO register definitions
GPIO state cannot be changed via the device tree (e.g. with gpio-hog) or
using the 'gpio' command from the console.

The root cause is a discrepancy between the driver and the device tree:
the driver code expects an absolute I/O address in the <reg> property,
while the device tree defines the address relative to a declaration in
the parent pinctrl node.

Changing the device tree to fix a driver issue would normally be wrong,
however:
- I have run the first version of U-Boot in which this driver appears
  (v2016.03) and the same problem exists, so this is not a regression;
- There is no code that references a parent device tree node that might
  suggest the intent of the author was to parse the DT as it exists now;
- The equivalent Linux PIC32 GPIO driver also uses absolute addresses
  for the GPIO <reg> property. This change brings the U-Boot DT more
  into line with Linux.

Additionally, the data sheet (Microchip ref. 60001361H) shows that the
register set to control a GPIO bank spans 0xE0 bytes, but the device
tree specified size is only 0x48 bytes.

Signed-off-by: John Robertson <john.robertson@simiatec.com>
2020-09-23 00:14:28 +02:00
..
cpu mips: Add CONFIG_MIPS_MACH_EARLY_INIT for very early mach init code 2020-07-18 14:23:25 +02:00
dts mips: dts: Fix PIC32MZDA GPIO register definitions 2020-09-23 00:14:28 +02:00
include/asm mips: sync asm/mipsregs.h with Linux 5.7 2020-07-18 14:23:25 +02:00
lib mips: sync asm/mipsregs.h with Linux 5.7 2020-07-18 14:23:25 +02:00
mach-ath79 common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
mach-bmips common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
mach-jz47xx common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
mach-mscc mscc: Drop dm.h header file 2020-08-03 22:19:54 -04:00
mach-mtmips common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
mach-octeon mips: octeon: Add minimal Octeon 3 EBB7304 EVK support 2020-07-18 15:47:50 +02:00
mach-pic32 common: Drop init.h from common header 2020-05-18 17:33:33 -04:00
config.mk kconfig / kbuild: Re-sync with Linux 4.19 2020-04-10 11:18:32 -04:00
Kconfig mips: octeon: Update Octeon Kconfig 2020-08-03 21:14:48 +02:00
Makefile mips: octeon: Initial minimal support for the Marvell Octeon SoC 2020-07-18 15:47:50 +02:00
Makefile.postlink SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00