From: noralf@tronnes.org (Noralf Trønnes)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/3 v8] mailbox: Enable BCM2835 mailbox support
Date: Thu, 07 May 2015 19:28:23 +0200 [thread overview]
Message-ID: <554BA0B7.8040600@tronnes.org> (raw)
In-Reply-To: <1430857666-18877-2-git-send-email-eric@anholt.net>
Den 05.05.2015 22:27, skrev Eric Anholt:
> From: Lubomir Rintel <lkundrak@v3.sk>
>
> This mailbox driver provides a single mailbox channel to write 32-bit
> values to the VPU and get a 32-bit response. The Raspberry Pi
> firmware uses this mailbox channel to implement firmware calls, while
> Roku 2 (despite being derived from the same firmware tree) doesn't.
>
> The driver was originally submitted by Lubomir, based on the
> out-of-tree 2708 mailbox driver. Eric Anholt fixed it up for
> upstreaming, with the major functional change being that it now has no
> notion of multiple channels (since that is a firmware-dependent
> concept) and instead the raspberrypi-firmware driver will do that
> bit-twiddling in its own messages.
...
> +static struct platform_driver bcm2835_mbox_driver = {
> + .driver = {
> + .name = "bcm2835-mbox",
> + .owner = THIS_MODULE,
> + .of_match_table = bcm2835_mbox_of_match,
> + },
> + .probe = bcm2835_mbox_probe,
> + .remove = bcm2835_mbox_remove,
> +};
> +module_platform_driver(bcm2835_mbox_driver);
I have tested this driver and the firmware driver booting directly
from the VideoCore bootloader (no uboot).
The mailbox driver loads too late to turn on USB power:
[ 0.754258] platform soc:firmware: Driver raspberrypi-firmware
requests probe deferral
[ 2.041136] dwc2 20980000.usb: 256 invalid for
host_nperio_tx_fifo_size. Check HW configuration.
[ 2.050058] dwc2 20980000.usb: 512 invalid for
host_perio_tx_fifo_size. Check HW configuration.
[ 4.140894] dwc2 20980000.usb: dwc2_core_reset() HANG! Soft Reset
GRSTCTL=80000001
[ 4.148583] dwc2 20980000.usb: dwc2_core_init(): Reset failed, aborting
[ 4.155281] dwc2 20980000.usb: dwc2_hcd_init() FAILED, returning -16
[ 4.161720] dwc2: probe of 20980000.usb failed with error -16
[ 4.272027] bcm2835-mbox 2000b880.mailbox: mailbox enabled
When I move mailbox module init to arch_initcall, USB power is turned on.
[ 0.548481] bcm2835-mbox 2000b880.mailbox: mailbox enabled
[ 1.733669] raspberrypi_firmware_set_power *** I have added this
[ 2.242699] USB: Power-on latency exceeded, new value 509026000 ns
[ 3.109748] dwc2 20980000.usb: DWC OTG Controller
[ 3.114690] dwc2 20980000.usb: new USB bus registered, assigned bus
number 1
[ 3.121890] dwc2 20980000.usb: irq 33, io mem 0x00000000
This silences the warning:
struct raspberrypi_power_domain raspberrypi_power_domain_usb = {
.base = {
.power_on_latency_ns = 600000000,
Noralf.
WARNING: multiple messages have this Message-ID (diff)
From: "Noralf Trønnes" <noralf-L59+Z2yzLopAfugRpC6u6w@public.gmane.org>
To: Eric Anholt <eric-WhKQ6XTQaPysTnJN9+BGXg@public.gmane.org>,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Jassi Brar
<jassisinghbrar-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-rpi-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: Re: [PATCH 2/3 v8] mailbox: Enable BCM2835 mailbox support
Date: Thu, 07 May 2015 19:28:23 +0200 [thread overview]
Message-ID: <554BA0B7.8040600@tronnes.org> (raw)
In-Reply-To: <1430857666-18877-2-git-send-email-eric-WhKQ6XTQaPysTnJN9+BGXg@public.gmane.org>
Den 05.05.2015 22:27, skrev Eric Anholt:
> From: Lubomir Rintel <lkundrak-NGH9Lh4a5iE@public.gmane.org>
>
> This mailbox driver provides a single mailbox channel to write 32-bit
> values to the VPU and get a 32-bit response. The Raspberry Pi
> firmware uses this mailbox channel to implement firmware calls, while
> Roku 2 (despite being derived from the same firmware tree) doesn't.
>
> The driver was originally submitted by Lubomir, based on the
> out-of-tree 2708 mailbox driver. Eric Anholt fixed it up for
> upstreaming, with the major functional change being that it now has no
> notion of multiple channels (since that is a firmware-dependent
> concept) and instead the raspberrypi-firmware driver will do that
> bit-twiddling in its own messages.
...
> +static struct platform_driver bcm2835_mbox_driver = {
> + .driver = {
> + .name = "bcm2835-mbox",
> + .owner = THIS_MODULE,
> + .of_match_table = bcm2835_mbox_of_match,
> + },
> + .probe = bcm2835_mbox_probe,
> + .remove = bcm2835_mbox_remove,
> +};
> +module_platform_driver(bcm2835_mbox_driver);
I have tested this driver and the firmware driver booting directly
from the VideoCore bootloader (no uboot).
The mailbox driver loads too late to turn on USB power:
[ 0.754258] platform soc:firmware: Driver raspberrypi-firmware
requests probe deferral
[ 2.041136] dwc2 20980000.usb: 256 invalid for
host_nperio_tx_fifo_size. Check HW configuration.
[ 2.050058] dwc2 20980000.usb: 512 invalid for
host_perio_tx_fifo_size. Check HW configuration.
[ 4.140894] dwc2 20980000.usb: dwc2_core_reset() HANG! Soft Reset
GRSTCTL=80000001
[ 4.148583] dwc2 20980000.usb: dwc2_core_init(): Reset failed, aborting
[ 4.155281] dwc2 20980000.usb: dwc2_hcd_init() FAILED, returning -16
[ 4.161720] dwc2: probe of 20980000.usb failed with error -16
[ 4.272027] bcm2835-mbox 2000b880.mailbox: mailbox enabled
When I move mailbox module init to arch_initcall, USB power is turned on.
[ 0.548481] bcm2835-mbox 2000b880.mailbox: mailbox enabled
[ 1.733669] raspberrypi_firmware_set_power *** I have added this
[ 2.242699] USB: Power-on latency exceeded, new value 509026000 ns
[ 3.109748] dwc2 20980000.usb: DWC OTG Controller
[ 3.114690] dwc2 20980000.usb: new USB bus registered, assigned bus
number 1
[ 3.121890] dwc2 20980000.usb: irq 33, io mem 0x00000000
This silences the warning:
struct raspberrypi_power_domain raspberrypi_power_domain_usb = {
.base = {
.power_on_latency_ns = 600000000,
Noralf.
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: "Noralf Trønnes" <noralf@tronnes.org>
To: Eric Anholt <eric@anholt.net>, linux-arm-kernel@lists.infradead.org
Cc: devicetree@vger.kernel.org, Jassi Brar <jassisinghbrar@gmail.com>,
linux-kernel@vger.kernel.org,
linux-rpi-kernel@lists.infradead.org
Subject: Re: [PATCH 2/3 v8] mailbox: Enable BCM2835 mailbox support
Date: Thu, 07 May 2015 19:28:23 +0200 [thread overview]
Message-ID: <554BA0B7.8040600@tronnes.org> (raw)
In-Reply-To: <1430857666-18877-2-git-send-email-eric@anholt.net>
Den 05.05.2015 22:27, skrev Eric Anholt:
> From: Lubomir Rintel <lkundrak@v3.sk>
>
> This mailbox driver provides a single mailbox channel to write 32-bit
> values to the VPU and get a 32-bit response. The Raspberry Pi
> firmware uses this mailbox channel to implement firmware calls, while
> Roku 2 (despite being derived from the same firmware tree) doesn't.
>
> The driver was originally submitted by Lubomir, based on the
> out-of-tree 2708 mailbox driver. Eric Anholt fixed it up for
> upstreaming, with the major functional change being that it now has no
> notion of multiple channels (since that is a firmware-dependent
> concept) and instead the raspberrypi-firmware driver will do that
> bit-twiddling in its own messages.
...
> +static struct platform_driver bcm2835_mbox_driver = {
> + .driver = {
> + .name = "bcm2835-mbox",
> + .owner = THIS_MODULE,
> + .of_match_table = bcm2835_mbox_of_match,
> + },
> + .probe = bcm2835_mbox_probe,
> + .remove = bcm2835_mbox_remove,
> +};
> +module_platform_driver(bcm2835_mbox_driver);
I have tested this driver and the firmware driver booting directly
from the VideoCore bootloader (no uboot).
The mailbox driver loads too late to turn on USB power:
[ 0.754258] platform soc:firmware: Driver raspberrypi-firmware
requests probe deferral
[ 2.041136] dwc2 20980000.usb: 256 invalid for
host_nperio_tx_fifo_size. Check HW configuration.
[ 2.050058] dwc2 20980000.usb: 512 invalid for
host_perio_tx_fifo_size. Check HW configuration.
[ 4.140894] dwc2 20980000.usb: dwc2_core_reset() HANG! Soft Reset
GRSTCTL=80000001
[ 4.148583] dwc2 20980000.usb: dwc2_core_init(): Reset failed, aborting
[ 4.155281] dwc2 20980000.usb: dwc2_hcd_init() FAILED, returning -16
[ 4.161720] dwc2: probe of 20980000.usb failed with error -16
[ 4.272027] bcm2835-mbox 2000b880.mailbox: mailbox enabled
When I move mailbox module init to arch_initcall, USB power is turned on.
[ 0.548481] bcm2835-mbox 2000b880.mailbox: mailbox enabled
[ 1.733669] raspberrypi_firmware_set_power *** I have added this
[ 2.242699] USB: Power-on latency exceeded, new value 509026000 ns
[ 3.109748] dwc2 20980000.usb: DWC OTG Controller
[ 3.114690] dwc2 20980000.usb: new USB bus registered, assigned bus
number 1
[ 3.121890] dwc2 20980000.usb: irq 33, io mem 0x00000000
This silences the warning:
struct raspberrypi_power_domain raspberrypi_power_domain_usb = {
.base = {
.power_on_latency_ns = 600000000,
Noralf.
next prev parent reply other threads:[~2015-05-07 17:28 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-05 20:27 [PATCH 1/3 v6] dt/bindings: Add binding for the BCM2835 mailbox driver Eric Anholt
2015-05-05 20:27 ` Eric Anholt
2015-05-05 20:27 ` Eric Anholt
2015-05-05 20:27 ` [PATCH 2/3 v8] mailbox: Enable BCM2835 mailbox support Eric Anholt
2015-05-05 20:27 ` Eric Anholt
2015-05-07 17:28 ` Noralf Trønnes [this message]
2015-05-07 17:28 ` Noralf Trønnes
2015-05-07 17:28 ` Noralf Trønnes
2015-05-07 19:54 ` Eric Anholt
2015-05-07 19:54 ` Eric Anholt
2015-05-08 8:33 ` Alexander Stein
2015-05-08 8:33 ` Alexander Stein
2015-05-08 19:19 ` Eric Anholt
2015-05-08 19:19 ` Eric Anholt
2015-05-12 2:41 ` Stephen Warren
2015-05-12 2:41 ` Stephen Warren
2015-05-08 20:38 ` Noralf Trønnes
2015-05-08 20:38 ` Noralf Trønnes
2015-05-08 20:38 ` Noralf Trønnes
2015-05-12 15:28 ` Noralf Trønnes
2015-05-12 15:28 ` Noralf Trønnes
2015-05-05 20:27 ` [PATCH 3/3 v2] ARM: bcm2835: Add the mailbox to the device tree Eric Anholt
2015-05-05 20:27 ` Eric Anholt
2015-05-13 7:57 ` Lee Jones
2015-05-13 7:57 ` Lee Jones
2015-05-12 4:03 ` [PATCH 1/3 v6] dt/bindings: Add binding for the BCM2835 mailbox driver Jassi Brar
2015-05-12 4:03 ` Jassi Brar
2015-05-13 7:57 ` Lee Jones
2015-05-13 7:57 ` Lee Jones
2015-05-13 7:57 ` Lee Jones
2015-05-13 15:47 ` Jassi Brar
2015-05-13 15:47 ` Jassi Brar
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=554BA0B7.8040600@tronnes.org \
--to=noralf@tronnes.org \
--cc=linux-arm-kernel@lists.infradead.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.