Message ID | 20230923143200.268063-1-umang.jain@ideasonboard.com (mailing list archive) |
---|---|
Headers | show |
Series | staging: vc04_services: vchiq: Register devices with a custom bus_type | expand |
Hi all, On 9/23/23 8:01 PM, Umang Jain wrote: > The patch series added a new bus type vchiq_bus_type and registers > child devices in order to move them away from using platform > device/driver. > > Tested on RPi-3-b with media tree master branch. > > Patch 1/6 and 2/6 adds explicit DMA mask to bcm2835-camera > and bcm2835-audio respectively to avoid regression when moving > to away from platform device/driver model. > > Patch 3/6 and 4/6 adds a new bus_type and registers them to vchiq > interface > > Patch 5/6 and 6/6 moves the bcm2835-camera and bcm2835-audio > to the new bus respectively > > Patch 5/5 removes a platform registeration helper which is no > longer required. Please ignore theĀ just above line, forgot to delete while editing the cover letter. > > Changes in v12: > - Add initial two patches to set DMA Mask explicitly to avoid regression > - fixup vchiq_device.c bad squash in v11 > - Rename vchiq_device.[ch] to vchiq_bus.[ch] > - Fix memory leak if device cannot be registered > - Make vchiq_bus_type_match() use bool values > - vchiq_register_child() helper removal folded in 6/6 > instead of creating extra patch. > > Changes in v11: > - Move setting of DMA mask in child devices (3/5 and 4/5) > - Fixes "DMA mask not set issue" reported in v10. > > Changes in v10: > - fix dma_attr WARN issue with bcm2835-audio module loading > - Unregister bus on parent platform device fails to register > - Reword commit to highlight bcm2835_audio to bcm2835-audio name change > > Changes in v9: > - Fix module autoloading > - Implement bus_type's probe() callback to load drivers > - Implement bus_type's uevent() to make sure appropriate drivers are > loaded when device are registed from vchiq. > > Changes in v8: > - Drop dual licensing. Instead use GPL-2.0 only for patch 1/5 > > Changes in v7: > (5 out of 6 patches from v6 merged) > - Split the main patch (6/6) as requested. > - Use struct vchiq_device * instead of struct device * in > all bus functions. > - Drop additional name attribute displayed in sysfs (redundant info) > - Document vchiq_interface doesn't enumerate device discovery > - remove EXPORT_SYMBOL_GPL(vchiq_bus_type) > > Changes in v6: > - Split struct device and struct driver wrappers in vchiq_device.[ch] > - Move vchiq_bus_type definition to vchiq_device.[ch] as well > - return error on bus_register() failure > - drop dma_set_mask_and_coherent > - trivial variable name change > > Changes in v5: > - Fixup missing "staging: " in commits' subject line > - No code changes from v4 > > Changes in v4: > - Introduce patches to drop include directives from Makefile > > Changes in v3: > - Rework entirely to replace platform devices/driver model > > -v2: > https://lore.kernel.org/all/20221222191500.515795-1-umang.jain@ideasonboard.com/ > > -v1: > https://lore.kernel.org/all/20221220084404.19280-1-umang.jain@ideasonboard.com/ > > Umang Jain (6): > staging: vc04_services: bcm2835-camera: Explicitly set DMA mask > staging: vc04_services: bcm2835-audio: Explicitly set DMA mask > staging: vc04_services: vchiq_arm: Add new bus type and device type > staging: vc04_services: vchiq_arm: Register vchiq_bus_type > staging: bcm2835-camera: Register bcm2835-camera with vchiq_bus_type > staging: bcm2835-audio: Register bcm2835-audio with vchiq_bus_type > > drivers/staging/vc04_services/Makefile | 1 + > .../vc04_services/bcm2835-audio/bcm2835.c | 26 +++-- > .../bcm2835-camera/bcm2835-camera.c | 23 ++-- > .../interface/vchiq_arm/vchiq_arm.c | 52 ++++----- > .../interface/vchiq_arm/vchiq_bus.c | 100 ++++++++++++++++++ > .../interface/vchiq_arm/vchiq_bus.h | 54 ++++++++++ > 6 files changed, 209 insertions(+), 47 deletions(-) > create mode 100644 drivers/staging/vc04_services/interface/vchiq_arm/vchiq_bus.c > create mode 100644 drivers/staging/vc04_services/interface/vchiq_arm/vchiq_bus.h > > > base-commit: 0bb80ecc33a8fb5a682236443c1e740d5c917d1d
Am 23.09.23 um 16:31 schrieb Umang Jain: > The patch series added a new bus type vchiq_bus_type and registers > child devices in order to move them away from using platform > device/driver. > > Tested on RPi-3-b with media tree master branch. > > Patch 1/6 and 2/6 adds explicit DMA mask to bcm2835-camera > and bcm2835-audio respectively to avoid regression when moving > to away from platform device/driver model. > > Patch 3/6 and 4/6 adds a new bus_type and registers them to vchiq > interface > > Patch 5/6 and 6/6 moves the bcm2835-camera and bcm2835-audio > to the new bus respectively > > Patch 5/5 removes a platform registeration helper which is no > longer required. > > Changes in v12: > - Add initial two patches to set DMA Mask explicitly to avoid regression > - fixup vchiq_device.c bad squash in v11 > - Rename vchiq_device.[ch] to vchiq_bus.[ch] > - Fix memory leak if device cannot be registered > - Make vchiq_bus_type_match() use bool values > - vchiq_register_child() helper removal folded in 6/6 > instead of creating extra patch. The whole series is Reviewed-by: Stefan Wahren <wahrenst@gmx.net>
On Sat, Sep 23, 2023 at 08:01:54PM +0530, Umang Jain wrote: > The patch series added a new bus type vchiq_bus_type and registers > child devices in order to move them away from using platform > device/driver. > > Tested on RPi-3-b with media tree master branch. Thanks for sticking with this through so many different revisions. I only had minor comments on the series, you can address them in follow-on patches if needed (one at the least is needed.) All are now queued up in my tree. greg k-h