From: Stefan Wahren <stefan.wahren@i2se.com>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: devel@driverdev.osuosl.org,
Stefan Wahren <stefan.wahren@i2se.com>,
Takashi Iwai <tiwai@suse.de>, Eric Anholt <eric@anholt.net>,
linux-arm-kernel@lists.infradead.org,
Dave Stevenson <dave.stevenson@raspberrypi.org>,
Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Subject: [PATCH 04/10] staging: vchiq_arm: Fix camera device registration
Date: Thu, 6 Dec 2018 19:28:54 +0100 [thread overview]
Message-ID: <1544120940-13716-5-git-send-email-stefan.wahren@i2se.com> (raw)
In-Reply-To: <1544120940-13716-1-git-send-email-stefan.wahren@i2se.com>
Since the camera driver isn't probed via DT, we need to properly setup DMA.
Fixes: 37b7b3087a2f ("staging/vc04_services: Register a platform device for the camera driver.")
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
---
.../vc04_services/interface/vchiq_arm/vchiq_arm.c | 27 +++++++++++++++++++---
1 file changed, 24 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
index 0caee2d..f2c1dcd 100644
--- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
+++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
@@ -49,6 +49,7 @@
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/compat.h>
+#include <linux/dma-mapping.h>
#include <soc/bcm2835/raspberrypi-firmware.h>
#include "vchiq_core.h"
@@ -3479,6 +3480,28 @@ static const struct of_device_id vchiq_of_match[] = {
};
MODULE_DEVICE_TABLE(of, vchiq_of_match);
+static struct platform_device *
+vchiq_register_child(struct platform_device *pdev, const char *name)
+{
+ struct platform_device_info pdevinfo;
+ struct platform_device *child;
+
+ memset(&pdevinfo, 0, sizeof(pdevinfo));
+
+ pdevinfo.parent = &pdev->dev;
+ pdevinfo.name = name;
+ pdevinfo.id = PLATFORM_DEVID_NONE;
+ pdevinfo.dma_mask = DMA_BIT_MASK(32);
+
+ child = platform_device_register_full(&pdevinfo);
+ if (IS_ERR(child)) {
+ dev_warn(&pdev->dev, "%s not registered\n", name);
+ child = NULL;
+ }
+
+ return child;
+}
+
static int vchiq_probe(struct platform_device *pdev)
{
struct device_node *fw_node;
@@ -3529,9 +3552,7 @@ static int vchiq_probe(struct platform_device *pdev)
VCHIQ_VERSION, VCHIQ_VERSION_MIN,
MAJOR(vchiq_devid), MINOR(vchiq_devid));
- bcm2835_camera = platform_device_register_data(&pdev->dev,
- "bcm2835-camera", -1,
- NULL, 0);
+ bcm2835_camera = vchiq_register_child(pdev, "bcm2835-camera");
return 0;
--
2.7.4
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2018-12-06 18:30 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-06 18:28 [PATCH 00/10] staging: vc04_services: Improve driver load/unload Stefan Wahren
2018-12-06 18:28 ` [PATCH 01/10] staging: bcm2835-camera: Abort probe if there is no camera Stefan Wahren
2018-12-06 18:28 ` [PATCH 02/10] staging: bcm2835-camera: fix module autoloading Stefan Wahren
2018-12-06 18:28 ` [PATCH 03/10] staging: bcm2835-camera: Move module info to the end Stefan Wahren
2018-12-06 18:28 ` Stefan Wahren [this message]
2018-12-06 18:28 ` [PATCH 05/10] staging: vchiq_arm: Register a platform device for audio Stefan Wahren
2018-12-06 18:28 ` [PATCH 06/10] staging: bcm2835-audio: Enable compile test Stefan Wahren
2018-12-06 18:28 ` [PATCH 07/10] staging: bcm2835-audio: use module_platform_driver() macro Stefan Wahren
2018-12-06 18:28 ` [PATCH 08/10] staging: bcm2835-audio: Drop DT dependency Stefan Wahren
2018-12-06 18:28 ` [PATCH 09/10] staging: bcm2835-camera: Provide more specific probe error messages Stefan Wahren
2018-12-06 18:29 ` [PATCH 10/10] staging: bcm2835-camera: Add hint about possible faulty config Stefan Wahren
2018-12-07 6:21 ` [PATCH 00/10] staging: vc04_services: Improve driver load/unload Dan Carpenter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1544120940-13716-5-git-send-email-stefan.wahren@i2se.com \
--to=stefan.wahren@i2se.com \
--cc=dave.stevenson@raspberrypi.org \
--cc=devel@driverdev.osuosl.org \
--cc=eric@anholt.net \
--cc=gregkh@linuxfoundation.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=nsaenzjulienne@suse.de \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox