Chen-Yu Tsai
c5fda170e8
pinctrl: sunxi: Add support for fetching pinconf settings from hardware
...
The sunxi pinctrl driver only caches whatever pinconf setting was last
set on a given pingroup. This is not particularly helpful, nor is it
correct.
Fix this by actually reading the hardware registers and returning
the correct results or error codes. Also filter out unsupported
pinconf settings. Since this driver has a peculiar setup of 1 pin
per group, we can support both pin and pingroup pinconf setting
read back with the same code. The sunxi_pconf_reg helper and code
structure is inspired by pinctrl-msm.
With this done we can also claim to support generic pinconf, by
setting .is_generic = true in pinconf_ops.
Also remove the cached config value. The behavior of this was never
correct, as it only cached 1 setting instead of all of them. Since
we can now read back settings directly from the hardware, it is no
longer required.
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2016-11-15 10:20:27 +01:00
..
accessibility
acpi
More ACPI updates for v4.9-rc1
2016-10-14 12:50:05 -07:00
amba
android
ata
ahci: qoriq: Revert "ahci: qoriq: Disable NCQ on ls2080a SoC"
2016-09-30 10:28:51 +02:00
atm
auxdisplay
auxdisplay: img-ascii-lcd: driver for simple ASCII LCD displays
2016-10-06 17:03:41 +02:00
base
memory-hotplug: fix store_mem_state() return value
2016-10-07 18:46:28 -07:00
bcma
block
rbd: don't retry watch reregistration if header object is gone
2016-10-15 23:22:09 +02:00
bluetooth
Bluetooth: btusb: Fix atheros firmware download error
2016-10-07 09:46:56 +02:00
bus
ARM: SoC driver updates for v4.9
2016-10-07 21:23:40 -07:00
cdrom
char
A small bug fix and a new driver for acting as an IPMI device.
2016-10-23 15:56:23 -07:00
clk
ARM: SoC: late DT updates for v4.9
2016-10-07 21:34:49 -07:00
clocksource
Revert "clocksource/drivers/timer_sun5i: Replace code by clocksource_mmio_init"
2016-10-20 21:58:58 +02:00
connector
cpufreq
More power management updates for v4.9-rc1
2016-10-14 12:46:13 -07:00
cpuidle
Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus
2016-10-15 09:26:12 -07:00
crypto
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2016-10-10 14:04:16 -07:00
dax
Merge branch 'for-4.9/dax' into libnvdimm-for-next
2016-10-07 16:46:30 -07:00
dca
devfreq
PM / devfreq: Skip status update on uninitialized previous_freq
2016-10-11 00:01:20 +02:00
dio
dma
dmaengine updates for 4.8-rc1
2016-10-06 17:13:54 -07:00
dma-buf
Merge tag 'drm-for-v4.9' of git://people.freedesktop.org/~airlied/linux
2016-10-11 18:12:22 -07:00
edac
* Altera Arria10 enablement of NAND, DMA, USB, QSPI and SD-MMC FIFO
2016-10-04 12:06:26 -07:00
eisa
extcon
firewire
firewire: nosy: do not ignore errors in ioremap_nocache()
2016-10-09 11:38:11 +02:00
firmware
efi/arm: Fix absolute relocation detection for older toolchains
2016-10-19 14:49:44 +02:00
fmc
fpga
gpio
pinctrl: Add SX150X GPIO Extender Pinctrl Driver
2016-10-24 16:30:40 +02:00
gpu
Merge branch 'drm-etnaviv-fixes' of git://git.pengutronix.de/lst/linux into drm-fixes
2016-10-21 13:27:55 +10:00
hid
HID: add quirk for Akai MIDImix.
2016-10-10 10:58:22 +02:00
hsi
hv
Drivers: hv: get rid of id in struct vmbus_channel
2016-09-27 12:35:49 +02:00
hwmon
hwmon: (max31790) potential ERR_PTR dereference
2016-10-17 10:16:20 -07:00
hwspinlock
hwtracing
i2c
i2c: 'i2c-bus' node support for v4.8-rc1
2016-10-11 23:37:26 +02:00
ide
idle
nmi_backtrace: generate one-line reports for idle cpus
2016-10-07 18:46:30 -07:00
iio
Staging/IIO patches for 4.9-rc1
2016-10-05 14:50:51 -07:00
infiniband
Merge branch 'gup_flag-cleanups'
2016-10-19 08:39:47 -07:00
input
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2016-10-14 13:19:30 -07:00
iommu
IOMMU Updates for Linux v4.9
2016-10-11 12:52:41 -07:00
ipack
irqchip
GIC updates for Linux 4.9-rc2
2016-10-21 21:40:29 +02:00
isdn
leds
lguest
lightnvm
Merge branch 'for-4.9/block' of git://git.kernel.dk/linux-block
2016-10-07 14:42:05 -07:00
macintosh
mailbox
Merge branch 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration
2016-10-06 17:36:53 -07:00
mcb
mcb: Add a dma_device to mcb_device
2016-09-27 12:33:47 +02:00
md
kthread: kthread worker API cleanup
2016-10-11 15:06:33 -07:00
media
Merge branch 'gup_flag-cleanups'
2016-10-19 08:39:47 -07:00
memory
ARM: SoC driver updates for v4.9
2016-10-07 21:23:40 -07:00
memstick
memstick: rtsx_usb_ms: Manage runtime PM when accessing the device
2016-10-17 15:43:05 +02:00
message
mfd
- Core Frameworks
2016-10-07 08:35:35 -07:00
misc
powerpc fixes for 4.9 #3
2016-10-21 19:13:00 -07:00
mmc
mmc: rtsx_usb_sdmmc: Handle runtime PM while changing the led
2016-10-17 15:43:03 +02:00
mtd
UBI: Fix crash in try_recover_peb()
2016-10-20 00:06:06 +02:00
net
Merge of the qedr RoCE driver
2016-10-14 13:43:08 -07:00
nfc
ntb
nubus
nvdimm
Merge branch 'for-4.9/dax' into libnvdimm-for-next
2016-10-07 16:46:30 -07:00
nvme
Merge branch 'for-linus' of git://git.kernel.dk/linux-block
2016-10-21 10:54:01 -07:00
nvmem
ARM: SoC driver updates for v4.9
2016-10-07 21:23:40 -07:00
of
Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus
2016-10-15 09:26:12 -07:00
oprofile
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2016-10-10 20:16:43 -07:00
parisc
parport
pci
PCI: designware-plat: Update author email address
2016-10-21 09:54:46 -05:00
pcmcia
perf
perf: xgene: Remove bogus IS_ERR() check
2016-10-17 15:50:07 +01:00
phy
pinctrl
pinctrl: sunxi: Add support for fetching pinconf settings from hardware
2016-11-15 10:20:27 +01:00
platform
platform-drivers-x86 for 4.9-2
2016-10-19 11:45:06 -07:00
pnp
power
power supply and reset changes for the v4.9 series
2016-10-06 18:21:15 -07:00
powercap
pps
pps: kc: fix non-tickless system config dependency
2016-10-11 15:06:32 -07:00
ps3
ptp
drivers/ptp: Fix kernel memory disclosure
2016-10-13 10:20:06 -04:00
pwm
rapidio
mm: replace get_user_pages() write/force parameters with gup_flags
2016-10-19 08:11:43 -07:00
ras
regulator
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
2016-10-12 11:05:23 -07:00
remoteproc
rpmsg updates for v4.9
2016-10-06 17:03:49 -07:00
reset
rpmsg
rtc
RTC for 4.9
2016-10-14 13:13:44 -07:00
s390
scsi: zfcp: spin_lock_irqsave() is not nestable
2016-10-14 16:21:08 -04:00
sbus
scsi
SCSI fixes on 20161021
2016-10-21 10:57:09 -07:00
sfi
sh
sn
soc
powerpc updates for 4.9 #2
2016-10-14 11:07:42 -07:00
spi
kthread: kthread worker API cleanup
2016-10-11 15:06:33 -07:00
spmi
spmi: pmic-arb: Return an error code if sanity check fails
2016-09-27 12:43:34 +02:00
ssb
staging
mm: replace get_user_pages() write/force parameters with gup_flags
2016-10-19 08:11:43 -07:00
target
target/tcm_fc: use CPU affinity for responses
2016-10-21 01:19:44 -07:00
tc
thermal
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
2016-10-12 11:05:23 -07:00
thunderbolt
tty
kthread: kthread worker API cleanup
2016-10-11 15:06:33 -07:00
uio
usb
Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus
2016-10-15 09:26:12 -07:00
uwb
vfio
vfio_pci: use pci_alloc_irq_vectors
2016-09-29 13:36:38 -06:00
vhost
video
Merge branch 'gup_flag-cleanups'
2016-10-19 08:39:47 -07:00
virt
mm: replace get_user_pages() write/force parameters with gup_flags
2016-10-19 08:11:43 -07:00
virtio
vlynq
vme
vme: fake: remove unexpected unlock in fake_master_set()
2016-09-27 12:43:35 +02:00
w1
watchdog
Merge branches 'acpi-wdat' and 'acpi-cppc'
2016-10-21 22:24:23 +02:00
xen
xen: features and fixes for 4.9-rc0
2016-10-06 11:19:10 -07:00
zorro
Kconfig
Makefile
A small bug fix and a new driver for acting as an IPMI device.
2016-10-23 15:56:23 -07:00