this function), removes the problem.
I guess it's just the printk buffer that's being output again to the new
console, when the console subsystem switches from early console to real
console.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeve
.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Ulrich Hecht
Reviewed-by: Eugeniu Rosca
Tested-by: Eugeniu Rosca
---
v5:
- Add Reviewed-by, Tested-by,
v4:
- Add Reviewed-by,
- Rename gpiod_lookup.chip_label.
- Use U16_MAX instead of (u16)-1,
v3:
- New.
---
drivers/gpio/gpiolib.c
Currently GPIO controllers can only be referred to by label in GPIO
lookup tables.
Add support for looking them up by "gpiochipN" name, with "N" the
corresponding GPIO device's ID number.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Ulrich Hecht
Reviewed-by: Eugeniu
or virtual machine.
- Generic GPIO Driver
This is useful for industrial control, where it can provide
userspace access to a simple GPIO-operated device described in DT,
cfr. e.g. spidev for SPI-operated devices.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Eugeniu Rosca
Tested-by
Add a maintainership section for the GPIO Aggregator, covering
documentation and driver source code.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Eugeniu Rosca
Tested-by: Eugeniu Rosca
---
v5:
- Add Reviewed-by, Tested-by,
v4:
- Drop controversial GPIO repeater,
v3:
- New
Document the GPIO Aggregator, and the two typical use-cases.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Ulrich Hecht
Reviewed-by: Eugeniu Rosca
Tested-by: Eugeniu Rosca
---
v5:
- Add Reviewed-by, Tested-by,
- Fix inconsistent indentation.
v4:
- Add Reviewed-by,
- Drop
t;
(https://lore.kernel.org/r/20181003152521.23144-1-geert+rene...@glider.be/)
[7] "Getting To Blinky: Virt Edition / Making device pass-through
work on embedded ARM"
(https://fosdem.org/2019/schedule/event/vai_getting_to_blinky/)
Geert Uytterhoeven (5):
gpiolib: Ad
Hi Randy,
On Tue, Feb 18, 2020 at 7:30 PM Randy Dunlap wrote:
> On 2/18/20 7:18 AM, Geert Uytterhoeven wrote:
> > Document the GPIO Aggregator, and the two typical use-cases.
> >
> > Signed-off-by: Geert Uytterhoeven
> > --- /dev/null
> > +++ b/Do
On Tue, Feb 18, 2020 at 4:18 PM Geert Uytterhoeven
wrote:
> Currently GPIOs can only be referred to by GPIO controller and offset in
> GPIO lookup tables.
>
> Add support for looking them up by line name.
> Rename gpiod_lookup.chip_label to gpiod_lookup.key, to make it clear
> t
Hi Rob,
On Thu, Dec 5, 2019 at 10:06 PM Rob Herring wrote:
> On Wed, Nov 27, 2019 at 09:42:50AM +0100, Geert Uytterhoeven wrote:
> > Add Device Tree bindings for a GPIO repeater, with optional translation
> > of physical signal properties. This is useful for describing exp
Hi Linus,
On Thu, Dec 12, 2019 at 2:20 PM Linus Walleij wrote:
> On Wed, Nov 27, 2019 at 9:43 AM Geert Uytterhoeven
> wrote:
> > Currently GPIO controllers can only be referred to by label in GPIO
> > lookup tables.
> >
> > Add support for looking them up by &qu
Hi Linus,
On Thu, Dec 12, 2019 at 3:42 PM Linus Walleij wrote:
> On Wed, Nov 27, 2019 at 9:43 AM Geert Uytterhoeven
> wrote:
> > +The GPIO Aggregator allows access control for individual GPIOs, by
> > aggregating
> > +them into a new gpio_chip, which can be assigned
Hi Linus,
On Thu, Dec 12, 2019 at 3:34 PM Linus Walleij wrote:
> On Wed, Nov 27, 2019 at 9:43 AM Geert Uytterhoeven
> wrote:
> > GPIO controllers are exported to userspace using /dev/gpiochip*
> > character devices. Access control to these devices is provided by
> > s
Currently GPIOs can only be referred to by GPIO controller and offset in
GPIO lookup tables.
Add support for looking them up by line name.
Signed-off-by: Geert Uytterhoeven
---
If this is rejected, the GPIO Aggregator documentation and code must be
updated.
v3:
- New.
---
drivers/gpio
Add a maintainership section for the GPIO Aggregator/Repeater, covering
documentation, Device Tree bindings, and driver source code.
Signed-off-by: Geert Uytterhoeven
---
Harish: Do you want to be listed as maintainer, too?
v3:
- New.
---
MAINTAINERS | 8
1 file changed, 8
Currently GPIO controllers can only be referred to by label in GPIO
lookup tables.
Add support for looking them up by "gpiochipN" name, with "N" either the
corresponding GPIO device's ID number, or the GPIO controller's first
GPIO number.
Signed-off-by: Geer
The string literal "gpiochip" is used in several places.
Add a definition for it, and use it everywhere, to make sure everything
stays in sync.
Signed-off-by: Geert Uytterhoeven
---
v3:
- New.
---
drivers/gpio/gpiolib-sysfs.c | 7 +++
drivers/gpio/gpiolib.c | 4 ++--
dr
ore.kernel.org/linux-renesas-soc/20190607172958.20745-1-ero...@de.adit-jv.com/
Signed-off-by: Geert Uytterhoeven
---
v3:
- New.
---
.../bindings/gpio/gpio-repeater.yaml | 53 +++
1 file changed, 53 insertions(+)
create mode 100644 Documentation/devicetree/bindings/gpi
renesas-soc/20181003152521.23144-1-geert+rene...@glider.be/)
[5] "Getting To Blinky: Virt Edition / Making device pass-through
work on embedded ARM"
(https://fosdem.org/2019/schedule/event/vai_getting_to_blinky/)
Geert Uytterhoeven (7):
gpiolib: Add GPIOCHIP_NAME definiti
Document the GPIO Aggregator/Repeater, and the three typical use-cases.
Signed-off-by: Geert Uytterhoeven
---
v3:
- New.
---
.../admin-guide/gpio/gpio-aggregator.rst | 111 ++
Documentation/admin-guide/gpio/index.rst | 1 +
2 files changed, 112 insertions
e "driver_override" in sysfs
+*/
+ {},
+};
+MODULE_DEVICE_TABLE(of, gpio_aggregator_dt_ids);
+#endif
+
+static struct platform_driver gpio_aggregator_driver = {
+ .probe = gpio_aggregator_probe,
+ .driver = {
+ .name = DRV_NAME,
+ .groups = gpio_aggregator_groups,
+ .of_match_table = of_match_ptr(gpio_aggregator_dt_ids),
+ },
+};
+
+static int __init gpio_aggregator_init(void)
+{
+ return platform_driver_register(&gpio_aggregator_driver);
+}
+module_init(gpio_aggregator_init);
+
+static void __exit gpio_aggregator_exit(void)
+{
+ gpio_aggregator_remove_all();
+ platform_driver_unregister(&gpio_aggregator_driver);
+}
+module_exit(gpio_aggregator_exit);
+
+MODULE_AUTHOR("Geert Uytterhoeven ");
+MODULE_DESCRIPTION("GPIO Aggregator/Repeater");
+MODULE_LICENSE("GPL v2");
--
2.17.1
Hi Eugeniu,
On Wed, Nov 27, 2019 at 3:15 PM Eugeniu Rosca wrote:
> On Wed, Nov 27, 2019 at 09:42:51AM +0100, Geert Uytterhoeven wrote:
> > +static bool isrange(const char *s)
> > +{
> > + size_t n = strlen(s);
>
> Cppcheck 1.40-18521-ge6d692d96058:
> driver
n -EPROBE_DEFER;
So gpiod_get_index() nevers return -EPROBE_DEFER, but returns -ENOENT
instead?
How can a driver distinguish between "GPIO not found" and "gpiochip driver
not yet initialized"?
Worse, so the *_optional() variants will return NULL in both cases, too, so
CC arnd
On Sun, Jun 5, 2022 at 9:32 AM Stafford Horne wrote:
> On Sun, Jun 05, 2022 at 10:58:14AM +0900, Stafford Horne wrote:
> > On Fri, Jun 03, 2022 at 09:05:09AM +0200, Geert Uytterhoeven wrote:
> > > On Thu, Jun 2, 2022 at 9:59 PM Stafford Horne wrote:
> > > >
The link
> contains the corresponding Linux patch.
>
> Link: https://lore.kernel.org/lkml/20220626111509.330159-1-ja...@zx2c4.com/
> Based-on: <20220625152318.120849-1-ja...@zx2c4.com>
> Reviewed-by: Laurent Vivier
> Signed-off-by: Jason A. Donenfeld
Rev
little endian.
Unfortunately m68k got this wrong, cfr.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2e2ac4a3327479f7e2744cdd88a5c823f2057bad
Please don't duplicate this bad behavior for new architectures.
Gr{oetje,eeting}s,
Geert
--
Geert
Hi Stafford,
On Thu, Jun 2, 2022 at 9:59 PM Stafford Horne wrote:
> On Thu, Jun 02, 2022 at 09:08:52PM +0200, Geert Uytterhoeven wrote:
> > On Thu, Jun 2, 2022 at 1:42 PM Joel Stanley wrote:
> > > On Fri, 27 May 2022 at 17:27, Stafford Horne wrote:
> > > > This
The new Linux SH7750 clock driver uses the registers for power-down
mode control, causing a crash:
byte read to SH7750_STBCR_A7 (0x1fc4) not supported
Aborted (core dumped)
Fix this by adding support for the Standby Control Registers STBCR and
STBCR2.
Signed-off-by: Geert
Hi Adrian,
On Wed, Oct 18, 2023 at 2:46 PM John Paul Adrian Glaubitz
wrote:
> On Wed, 2023-10-18 at 14:40 +0200, Geert Uytterhoeven wrote:
> > The new Linux SH7750 clock driver uses the registers for power-down
> > mode control, causing a crash:
> >
> > b
Hi Sato-san,
On Thu, Oct 19, 2023 at 4:03 AM Yoshinori Sato
wrote:
> On Wed, 18 Oct 2023 21:40:23 +0900,
> Geert Uytterhoeven wrote:
> > The new Linux SH7750 clock driver uses the registers for power-down
> > mode control, causing a crash:
> >
> >
ode duplication
> - mention the ramfb regression fixed by this patch in the
> commit message.
Thanks for looking into this!
After applying "hw/arm/sysbus-fdt: Add support for instantiating generic
devices", "-device vfio-platform,host=ee30.sata" still works fine.
Allow the instantation of generic dynamic vfio-platform devices again,
without the need to create a new device-specific vfio type.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Eric Auger
Tested-by: Eric Auger
---
v5:
- Drop reference to commit 6f2062b9758ebc64 ("hw/arm/virt: Allow
=e090.xgmac
or using the new option line:
-device vfio-platform,host=e090.xgmac
Signed-off-by: Eric Auger
[geert: Match using compatible values in sysfs instead of user-supplied
manufacturer/model options, reword]
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Eric Auger
: Geert Uytterhoeven
Reviewed-by: Eric Auger
Tested-by: Eric Auger
---
v5:
- Fix path leak on error,
- Add Reviewed-by, Tested-by,
v4:
- Propagate g_file_get_contents() errors through errp,
v3:
- Read all compatible values from sysfs instead of using user-supplied
manufacturer and model
form,host=ee30.sata
and GPIO (needs VFIO No-IOMMU support):
-device vfio-platform,host=e6055400.gpio
Thanks for applying!
Auger Eric (2):
vfio/platform: Make the vfio-platform device non-abstract
hw/arm/sysbus-fdt: Allow device matching with DT compatible value
Geert Uyt
Hi Paolo,
On Tue, Sep 11, 2018 at 3:11 PM Paolo Bonzini wrote:
> On 05/09/2018 15:11, Geert Uytterhoeven wrote:
> > As of commit 18e8cf159177100e ("serial: sh-sci: increase RX FIFO trigger
> > defaults for (H)SCIF") in Linux v4.11-rc1, the serial console on the
> >
igned-off-by: Geert Uytterhoeven
---
Thanks for your comments!
---
backends/Makefile.objs | 2 +
backends/gpiodev.c | 183 +++
configure| 29 +++
hw/arm/virt.c| 6 ++
include/sysemu/gpiodev.h | 11 +++
qemu-o
ce vfio-platform,host=ee300000.sata
Signed-off-by: Geert Uytterhoeven
---
Note: Also tested with GPIO, which needs "vfio: No-IOMMU mode support":
-device vfio-platform,host=e6055400.gpio
v5:
- Replace copying of a fixed list of properties (and ignoring all
others), by scanning
Hi Eric,
Thanks for your comments!
On Wed, Jan 9, 2019 at 4:56 PM Auger Eric wrote:
> On 1/3/19 10:42 AM, Geert Uytterhoeven wrote:
> > Add a fallback for instantiating generic devices without a type-specific
> > or compatible-specific instantiation method. This will be used wh
Hi Peter,
Thanks for your comments!
On Wed, Jan 9, 2019 at 5:03 PM Peter Maydell wrote:
> On Wed, 9 Jan 2019 at 15:55, Auger Eric wrote:
> > On 1/3/19 10:42 AM, Geert Uytterhoeven wrote:
> > > Add a fallback for instantiating generic devices without a type-specific
> >
onforms to
a default speed of 9600 bps, which is fine for any interactive console.
Reported-by: Rob Landley
Signed-off-by: Geert Uytterhoeven
Tested-by: Ulrich Hecht
Tested-by: Rob Landley
Tested-by: Rich Felker
---
v2:
- Add Tested-by,
- Fix spelling in patch description.
---
hw/char/s
=e090.xgmac
or using the new option line:
-device vfio-platform,host=e090.xgmac
Signed-off-by: Eric Auger
[geert: Match using compatible values in sysfs instead of user-supplied
manufacturer/model options, reword]
Signed-off-by: Geert Uytterhoeven
Tested-by: Eric Auger
d on a Renesas Salvator-XS board with R-Car H3 ES2.0
with SATA:
-device vfio-platform,host=ee30.sata
and GPIO (needs VFIO No-IOMMU support):
-device vfio-platform,host=e6055400.gpio
Thanks for applying!
Auger Eric (2):
vfio/platform: Make the vfio-platform device non-abstract
hw/ar
: Geert Uytterhoeven
---
v4:
- Propagate g_file_get_contents() errors through errp,
v3:
- Read all compatible values from sysfs instead of using user-supplied
manufacturer and model options,
- Reword patch description,
- Drop RFC state,
v2:
- No changes,
v1:
- Rebase, Set
Allow the instantation of generic dynamic vfio-platform devices again,
without the need to create a new device-specific vfio type.
This is more or less a partial revert of commit 6f2062b9758ebc64
("hw/arm/virt: Allow only supported dynamic sysbus devices").
Signed-off-by: Geert Uy
g err to NULL after ignoring the error.
Fixes: 9481cf2e5f2f2bb6 ("hw/arm/sysbus-fdt: helpers for clock node generation")
Signed-off-by: Geert Uytterhoeven
---
hw/arm/sysbus-fdt.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/arm/sysbus-fdt.c b/hw/arm/sysbus-fdt.c
index 0
Allow the instantation of generic dynamic sysbus devices again, without
the need to create a new device-specific vfio type.
This is more or less a partial revert of commit 6f2062b9758ebc64
("hw/arm/virt: Allow only supported dynamic sysbus devices").
Signed-off-by: Geert Uytterhoev
has been tested on a Renesas Salvator-XS board with R-Car H3 ES2.0
with SATA:
-device vfio-platform,host=ee30.sata
and GPIO (needs VFIO No-IOMMU support):
-device vfio-platform,host=e6055400.gpio
Signed-off-by: Geert Uytterhoeven
---
v3:
- New.
---
hw/arm/sysbus-fdt.c | 102 ++
: Geert Uytterhoeven
---
v3:
- Read all compatible values from sysfs instead of using user-supplied
manufacturer and model options,
- Reword patch description,
- Drop RFC state,
v2:
- No changes,
v1:
- Rebase, Set user_creatable=true,
v0:
- Original version from Eric.
---
hw/vfio
pio
Thanks!
Auger Eric (2):
vfio/platform: Make the vfio-platform device non-abstract
hw/arm/sysbus-fdt: Allow device matching with DT compatible value
Geert Uytterhoeven (2):
hw/arm/virt: Allow dynamic sysbus devices again
hw/arm/sysbus-fdt: Add support for instantia
amd-xgbe,host=e090.xgmac
or using the new option line:
-device vfio-platform,host=e090.xgmac
Signed-off-by: Eric Auger
[geert: Match using compatible values in sysfs instead of user-supplied
manufacturer/model options, reword]
Signed-off-by: Geert Uytterhoeven
---
Not tested w
onforms to
a default speed of 9600 bps, which is fine for any interative console.
Reported-by: Rob Landley
Signed-off-by: Geert Uytterhoeven
---
hw/char/sh_serial.c | 20
1 file changed, 20 insertions(+)
diff --git a/hw/char/sh_serial.c b/hw/char/sh_serial.c
index 373a40
Hi Eric,
On Tue, Aug 7, 2018 at 4:18 PM Auger Eric wrote:
> On 07/25/2018 04:34 PM, Geert Uytterhoeven wrote:
> > From: Auger Eric
> >
> > Up to now the vfio-platform device has been abstract and could not be
> > instantiated. The integration of a new vfio platform d
Hi Eric,
On Tue, Aug 7, 2018 at 4:19 PM Auger Eric wrote:
> On 07/25/2018 04:34 PM, Geert Uytterhoeven wrote:
> > Add a fallback for instantiating generic devices without a type-specific
> > or compatible-specific instantation method. This will be used when no
> >
Hi Eric,
On Tue, Aug 7, 2018 at 7:21 PM Auger Eric wrote:
> On 08/07/2018 05:32 PM, Geert Uytterhoeven wrote:
> > On Tue, Aug 7, 2018 at 4:19 PM Auger Eric wrote:
> >> On 07/25/2018 04:34 PM, Geert Uytterhoeven wrote:
> >>> Add a fallback for instantiating
Hi Eric,
On Wed, Aug 8, 2018 at 3:16 PM Auger Eric wrote:
> On 08/08/2018 02:59 PM, Geert Uytterhoeven wrote:
> > On Tue, Aug 7, 2018 at 7:21 PM Auger Eric wrote:
> >> On 08/07/2018 05:32 PM, Geert Uytterhoeven wrote:
> >>> On Tue, Aug 7, 2018 at 4:19 PM Auger Eri
3 KiB when built with symbols/fixup support).
Signed-off-by: Geert Uytterhoeven
---
device_tree.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/device_tree.c b/device_tree.c
index a24ddff02bdd857c..1ba9b8e0a49e6bbc 100644
--- a/device_tree.c
+++ b/device_tree.c
@@ -29,7
eated from the Linux sources is
70 KiB large (93 KiB when built with symbols/fixup support).
Signed-off-by: Geert Uytterhoeven
---
v2:
- Enlarge from 128 KiB to 1 MiB, as suggested by Peter Maydell.
---
device_tree.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/device_tre
Hi Eric,
On Wed, Feb 14, 2018 at 11:37 AM, Auger Eric wrote:
> On 09/02/18 16:17, Geert Uytterhoeven wrote:
>> Allow the instantation of generic dynamic sysbus devices again, without
>> the need to create a new device-specific vfio type.
>>
>> This is a partial revert
eated from the Linux sources is
ca. 75 KiB large (100 KiB when built with symbols/fixup support).
Signed-off-by: Geert Uytterhoeven
---
v3:
- Update example size figures,
v2:
- Enlarge from 128 KiB to 1 MiB, as suggested by Peter Maydell.
---
device_tree.c | 2 +-
1 file changed, 1 insertion(
Hi Peter,
On Fri, Feb 9, 2018 at 4:27 PM, Peter Maydell wrote:
> On 9 February 2018 at 15:17, Geert Uytterhoeven
> wrote:
>> Allow the instantation of generic dynamic sysbus devices again, without
>> the need to create a new device-specific vfio type.
>>
>> This
Hi Alex,
On Fri, Feb 9, 2018 at 4:50 PM, Alex Williamson
wrote:
> On Fri, 9 Feb 2018 16:17:35 +0100
> Geert Uytterhoeven wrote:
>> From: Xiao Feng Ren
>>
>> Add qemu support for the newly introduced VFIO No-IOMMU driver.
>>
>> We need to add special handl
The GPIO6 block will be exported to a guest. As long as the guest won't
manage its module clock, it must be kept running by the host.
Not-Signed-off-by: Geert Uytterhoeven
---
TODO: Find a way to manage module clocks using PM Domains and Runtime
PM on the guest.
---
drivers/clk/re
appended to the individual patches.
Please see https://elinux.org/R-Car/Virtualization/VFIO for full usage
instructions of this prototype.
Thanks for your comments!
Geert Uytterhoeven (6):
vfio: platform: Allow runtime override of reset_required
vfio: Ignore real IOMMUs if CONFIG_VFIO_NOIOMM
sysbus-fdt does not support the instantiation of the vfio-platform
device yet.
Signed-off-by: Eric Auger
[geert: Rebase, Set user_creatable=true]
Signed-off-by: Geert Uytterhoeven
---
hw/vfio/platform.c | 20 ++--
include/hw/vfio/vfio-platform.h | 2 ++
2 files
Add a simple defconfig for virtualized arm64 machines, based on an
OpenWRT config. This expects "initramfs.cpio" to exist, which can be
extracted from e.g. an OpenWRT image using binwalk.
CONFIG_GPIO_RCAR is enabled for testing GPIO pass-through on R-Car Gen3.
Not-Signed-off
Allow use of the No-IOMMU mode even if a real IOMMU is present.
This is useful in case the device is not part of an actual IOMMU group.
Not-Signed-off-by: Geert Uytterhoeven
---
Question:
- Some devices (e.g. rcar-gpio) don't use DMA, so why do they need an
IOMMU group?
- Even de
orm/parameters/reset_required
Not-Signed-off-by: Geert Uytterhoeven
---
TODO: Implement a vfio reset driver instead.
---
drivers/vfio/platform/vfio_platform.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/vfio/platform/vfio_platform.c
b/drivers/vfio/platform/vfio_platfor
guest, containing
compatible, reg, gpio-controller, and #gpio-cells properties.
Not-Yet-Signed-off-by: Geert Uytterhoeven
---
Question:
- Why do we need the manufacturer=foo,model=bar syntax? Can't this
just be extracted from the host DT?
TODO:
- Copy properties from the host D
Allow the instantation of generic dynamic sysbus devices again, without
the need to create a new device-specific vfio type.
This is a partial revert of commit 6f2062b9758ebc64 ("hw/arm/virt:
Allow only supported dynamic sysbus devices").
Not-Yet-Signed-off-by: Geert Uytterhoeven
-
Enable VFIO_PLATFORM for platform device pass-through.
Enable VFIO_NOIOMMU for devices not part of an IOMMU group.
Not-Signed-off-by: Geert Uytterhoeven
---
Not intended for upstream merge.
---
arch/arm64/configs/renesas_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm64
fio-amd-xgbe,host=e090.xgmac
or new option line:
-device
vfio-platform,host=e090.xgmac,manufacturer=amd,model=xgbe-seattle-v1a
Signed-off-by: Eric Auger
Signed-off-by: Geert Uytterhoeven
---
hw/arm/sysbus-fdt.c | 61 +
1 file changed,
vfio_kvm_device_add_group.
Signed-off-by: Xiao Feng Ren
[geert: Rebase]
Signed-off-by: Geert Uytterhoeven
---
hw/vfio/common.c | 61 ++-
include/hw/vfio/vfio-common.h | 2 ++
2 files changed, 50 insertions(+), 13 deletions(-)
diff --git a/hw/vfio/common.c
instructions of this prototype.
Thanks for your comments!
Auger Eric (2):
vfio/platform: make the vfio-platform device non abstract
hw/arm/sysbus-fdt: Allow device matching with compat string
Geert Uytterhoeven (2):
hw/arm/virt: Allow dynamic sysbus devices again
hw/arm/sysbus-fdt: Enable rcar
Allow to enable the driver if virtualization is enabled.
Handle the absence of clocks and interrupts, to support guests that
don't provide these yet.
Not-Signed-off-by: Geert Uytterhoeven
---
To be dropped once clocks and interrupts are supported on the guest.
---
drivers/gpio/Kconfig
| 6 +-
drivers/mfd/sm501.c | 24 +-
include/linux/gpio/consumer.h | 8 +
include/linux/gpio/machine.h | 15 +-
13 files changed, 776 insertions(+), 48 deletions(-)
create mode 100644 Documentation/admin-guide/gpio/gpio-aggregator.rst
Add a maintainership section for the GPIO Aggregator, covering
documentation and driver source code.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Eugeniu Rosca
Tested-by: Eugeniu Rosca
---
v6:
- No changes,
v5:
- Add Reviewed-by, Tested-by,
v4:
- Drop controversial GPIO repeater,
v3
-off-by: Geert Uytterhoeven
---
v6:
- New.
---
drivers/gpio/gpiolib.c| 28 ++--
include/linux/gpio/consumer.h | 8
2 files changed, 30 insertions(+), 6 deletions(-)
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index c756602e249c052e
: Geert Uytterhoeven
Reviewed-by: Ulrich Hecht
Reviewed-by: Eugeniu Rosca
Tested-by: Eugeniu Rosca
---
v6:
- Update Documentation/driver-api/gpio/board.rst,
- Reword rationale,
v5:
- Add Reviewed-by, Tested-by,
v4:
- Add Reviewed-by,
- Rename gpiod_lookup.chip_label.
- Use U16_MAX
Document the GPIO Aggregator, and the two typical use-cases.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Ulrich Hecht
Reviewed-by: Eugeniu Rosca
Tested-by: Eugeniu Rosca
---
v6:
- Fix "allows" without object:
-> provides a mechanism to aggregate GPIOs,
->
i801_add_mux() fills in the GPIO lookup table by manually populating an
array of gpiod_lookup structures. Use the existing GPIO_LOOKUP() helper
macro instead, to relax a dependency on the gpiod_lookup structure's
member names.
Signed-off-by: Geert Uytterhoeven
Cc: Jean Delvare
Cc:
impd1_probe() fills in the GPIO lookup table by manually populating an
array of gpiod_lookup structures. Use the existing GPIO_LOOKUP() helper
macro instead, to relax a dependency on the gpiod_lookup structure's
member names.
Signed-off-by: Geert Uytterhoeven
Cc: linux-ar
i801_add_mux() fills in the GPIO lookup table by manually populating an
array of gpiod_lookup structures. Use the existing GPIO_LOOKUP_IDX()
helper macro instead, to relax a dependency on the gpiod_lookup
structure's member names.
Signed-off-by: Geert Uytterhoeven
Cc: Lee Jones
---
While
or virtual machine.
- Generic GPIO Driver
This is useful for industrial control, where it can provide
userspace access to a simple GPIO-operated device described in DT,
cfr. e.g. spidev for SPI-operated devices.
Signed-off-by: Geert Uytterhoeven
Reviewed-by: Eugeniu Rosca
Tested-by
Hi Linus,
On Thu, Mar 26, 2020 at 10:26 PM Linus Walleij wrote:
> On Tue, Mar 24, 2020 at 2:57 PM Geert Uytterhoeven
> wrote:
> > The GPIO Aggregator will need a method to forward a .set_config() call
> > to its parent gpiochip. This requires obtaining the gpio_chip and
>
: Geert Uytterhoeven
---
v2:
- New.
---
hw/gpio/pl061.c | 35 +++
qemu-options.hx | 9 +
2 files changed, 44 insertions(+)
diff --git a/hw/gpio/pl061.c b/hw/gpio/pl061.c
index 74ba733a8a5e8ca5..98204f9a586ae8c8 100644
--- a/hw/gpio/pl061.c
+++ b/hw/gpio
,
- The number of GPIO lines mapped is limited to the number of GPIO
lines available on the virtual GPIO controller.
Future work:
- GPIO inputs,
- GPIO line configuration,
- Optimizations for controlling multiple GPIO lines at once,
- ...
Signed-off-by: Geert Uytterhoeven
---
v2
(https://lore.kernel.org/linux-gpio/20181003152521.23144-1-geert+rene...@glider.be/)
[3] "Getting To Blinky: Virt Edition / Making device pass-through work
on embedded ARM"
(https://fosdem.org/2019/schedule/event/vai_getting_to_blinky/)
Geert Uytterhoeven (5):
ARM: PL061: Mo
Move the definition of TYPE_PL061 to a new header file, so it can be
used outside the driver.
Signed-off-by: Geert Uytterhoeven
---
v2:
- New.
---
MAINTAINERS | 1 +
hw/gpio/pl061.c | 2 +-
include/hw/gpio/pl061.h | 16
3 files changed, 18 insertions
Add support for dynamically instantiating PL061 GPIO controller
instances in ARM virt. Device tree nodes are created dynamically.
Signed-off-by: Geert Uytterhoeven
---
v2:
- New.
---
hw/arm/sysbus-fdt.c | 18 ++
hw/arm/virt.c | 1 +
2 files changed, 19 insertions
uot;#interrupt-cells" and "interrupt-controller"
properties.
Signed-off-by: Geert Uytterhoeven
---
v2:
- New.
---
hw/arm/virt.c | 20 +++-
hw/gpio/pl061.c | 42 +
include/hw/gpio/pl061.h | 7 ++
Hi Philippe,
Thanks for your comments!
On Thu, Apr 23, 2020 at 11:28 AM Philippe Mathieu-Daudé wrote:
> On 4/23/20 11:01 AM, Geert Uytterhoeven wrote:
> > Add a GPIO controller backend, to connect virtual GPIOs on the guest to
> > physical GPIOs on the host. This allows the g
Hi Philippe,
On Thu, Apr 23, 2020 at 12:08 PM Philippe Mathieu-Daudé wrote:
> On 4/23/20 11:33 AM, Philippe Mathieu-Daudé wrote:
> > On 4/23/20 11:01 AM, Geert Uytterhoeven wrote:
> >> Make the PL061 GPIO controller user-creatable, and allow the user to tie
> >> a
Hi Eugeniu,
On Sat, Jan 18, 2020 at 2:46 AM Eugeniu Rosca wrote:
> On Wed, Nov 27, 2019 at 09:42:46AM +0100, Geert Uytterhoeven wrote:
> > - Create aggregators:
> >
> > $ echo e6052000.gpio 19,20 \
> > > /sys/bus/platform/drivers/gpio-aggregator/new
On Tue, Jul 9, 2019 at 4:59 PM Bartosz Golaszewski
wrote:
> pon., 8 lip 2019 o 12:24 Geert Uytterhoeven napisał(a):
> > On Mon, Jul 8, 2019 at 11:45 AM Bartosz Golaszewski
> > wrote:
> > > pt., 5 lip 2019 o 18:05 Geert Uytterhoeven
> > >
Hi Bartosz,
On Fri, Jul 12, 2019 at 11:27 AM Bartosz Golaszewski
wrote:
> wt., 9 lip 2019 o 17:59 Geert Uytterhoeven napisał(a):
> > On Tue, Jul 9, 2019 at 4:59 PM Bartosz Golaszewski
> > wrote:
> > > pon., 8 lip 2019 o 12:24 Geert Uytterhoeven
> > > napisa
Export the gpiochip_get_desc() symbol, so modular GPIO driver can make
use of this function again.
This is a partial revert of commit 1bd6b601fe196b6f ("gpio: make
gpiochip_get_desc() gpiolib-private").
Signed-off-by: Geert Uytterhoeven
---
ERROR: "gpiochip_get_desc"
> /sys/bus/platform/drivers/gpio-aggregator/delete_device
Signed-off-by: Geert Uytterhoeven
---
v2:
- Add missing initialization of i in gpio_virt_agg_probe(),
- Update for removed .need_valid_mask field and changed
.init_valid_mask() signature,
- Drop "virtual", rename to
Make gpio_name_to_desc() global, and export its symbol, so modular GPIO
driver can make use of this function.
This will be used by the GPIO Aggregator.
Signed-off-by: Geert Uytterhoeven
---
drivers/gpio/gpiolib.c | 3 ++-
drivers/gpio/gpiolib.h | 1 +
2 files changed, 3 insertions(+), 1
Export the gpiod_request() and gpiod_free() symbols, so modular GPIO
library code can make use of these functions.
Signed-off-by: Geert Uytterhoeven
---
ERROR: "gpiod_free" [drivers/gpio/gpiolib-fwd.ko] undefined!
ERROR: "gpiod_request" [drivers/gpio/gpiolib-fwd.ko] unde
1 - 100 of 142 matches
Mail list logo