linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Colin Foster <colin.foster@in-advantage.com>
To: Vladimir Oltean <vladimir.oltean@nxp.com>
Cc: "linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"linux-gpio@vger.kernel.org" <linux-gpio@vger.kernel.org>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	Terry Bowman <terry.bowman@amd.com>,
	Wolfram Sang <wsa@kernel.org>,
	Andy Shevchenko <andy.shevchenko@gmail.com>,
	Steen Hegelund <Steen.Hegelund@microchip.com>,
	Lars Povlsen <lars.povlsen@microchip.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Russell King <linux@armlinux.org.uk>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	Paolo Abeni <pabeni@redhat.com>, Jakub Kicinski <kuba@kernel.org>,
	Eric Dumazet <edumazet@google.com>,
	"David S. Miller" <davem@davemloft.net>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Vivien Didelot <vivien.didelot@gmail.com>,
	Andrew Lunn <andrew@lunn.ch>,
	"UNGLinuxDriver@microchip.com" <UNGLinuxDriver@microchip.com>,
	Alexandre Belloni <alexandre.belloni@bootlin.com>,
	Claudiu Manoil <claudiu.manoil@nxp.com>,
	Lee Jones <lee.jones@linaro.org>
Subject: Re: [RFC v8 net-next 00/16] add support for VSC7512 control over SPI
Date: Mon, 9 May 2022 19:57:48 -0700	[thread overview]
Message-ID: <20220510025748.GA2316428@euler> (raw)
In-Reply-To: <20220509171304.hfh5rbynt4qtr6m4@skbuf>

On Mon, May 09, 2022 at 05:13:05PM +0000, Vladimir Oltean wrote:
> Hi Colin,
> 
> On Sun, May 08, 2022 at 11:52:57AM -0700, Colin Foster wrote:
> 
> Why does this get printed, if you put a dump_stack() in of_dma_configure_id()?

Below. I'm one of the only users of IORESOURCE_REG, from what I can
tell... Not sure if that's any consolation.

> 
> > [    2.835718] pinctrl-ocelot ocelot-pinctrl.0.auto: invalid resource
> > [    2.842717] gpiochip_find_base: found new base at 2026
> > [    2.842774] gpio gpiochip4: (ocelot-gpio): created GPIO range 0->21 ==> ocelot-pinctrl.0.auto PIN 0->21
> > [    2.845693] gpio gpiochip4: (ocelot-gpio): added GPIO chardev (254:4)
> > [    2.845828] gpio gpiochip4: registered GPIOs 2026 to 2047 on ocelot-gpio
> > [    2.845855] pinctrl-ocelot ocelot-pinctrl.0.auto: driver registered
> > [    2.855925] pinctrl-microchip-sgpio ocelot-sgpio.1.auto: DMA mask not set
> > [    2.863089] pinctrl-microchip-sgpio ocelot-sgpio.1.auto: invalid resource
> > [    2.870801] gpiochip_find_base: found new base at 1962
> > [    2.871528] gpio_stub_drv gpiochip5: (ocelot-sgpio.1.auto-input): added GPIO chardev (254:5)
> > [    2.871666] gpio_stub_drv gpiochip5: registered GPIOs 1962 to 2025 on ocelot-sgpio.1.auto-input
> > [    2.872364] gpiochip_find_base: found new base at 1898
> > [    2.873244] gpio_stub_drv gpiochip6: (ocelot-sgpio.1.auto-output): added GPIO chardev (254:6)
> > [    2.873354] gpio_stub_drv gpiochip6: registered GPIOs 1898 to 1961 on ocelot-sgpio.1.auto-output
> > [    2.881148] mscc-miim ocelot-miim0.2.auto: DMA mask not set

[   16.699517] CPU: 0 PID: 7 Comm: kworker/u2:0 Not tainted 5.18.0-rc5-01315-g0a0ea78e3a79-dirty #632
[   16.708574] Hardware name: Generic AM33XX (Flattened Device Tree)
[   16.714704] Workqueue: events_unbound deferred_probe_work_func
[   16.720608] Backtrace: 
[   16.723071]  dump_backtrace from show_stack+0x20/0x24
[   16.728179]  r7:c31bcc10 r6:00000000 r5:c1647b38 r4:a0000013
[   16.733863]  show_stack from dump_stack_lvl+0x60/0x78
[   16.738954]  dump_stack_lvl from dump_stack+0x18/0x1c
[   16.744040]  r7:c31bcc10 r6:c31bcc10 r5:c31bcc10 r4:00000000
[   16.749724]  dump_stack from of_dma_configure_id+0x48/0x314
[   16.755335]  of_dma_configure_id from platform_dma_configure+0x2c/0x38
[   16.761911]  r10:df9bf424 r9:df9bf424 r8:00000069 r7:c31bcc10 r6:c1bbac5c r5:c31bcc10
[   16.769777]  r4:00000000
[   16.772320]  platform_dma_configure from really_probe+0x78/0x298

platform_dma_configure gets called because...

[   16.778360]  really_probe from __driver_probe_device+0x94/0xf4
[   16.784230]  r7:c31bcc10 r6:c31bcc10 r5:c1bbac5c r4:c31bcc10
[   16.789913]  __driver_probe_device from driver_probe_device+0x44/0xe0
[   16.796391]  r5:c1c51f28 r4:c1c51f24
[   16.799980]  driver_probe_device from __device_attach_driver+0x9c/0xc4
[   16.806548]  r9:df9bf424 r8:c1b9c728 r7:c1c51ef8 r6:c31bcc10 r5:e002191c r4:c1bbac5c
[   16.814326]  __device_attach_driver from bus_for_each_drv+0x94/0xe4
[   16.820635]  r7:c1c51ef8 r6:c0a012e4 r5:e002191c r4:00000000
[   16.826319]  bus_for_each_drv from __device_attach+0x104/0x170
[   16.832190]  r6:00000001 r5:c31bcc54 r4:c31bcc10
[   16.836827]  __device_attach from device_initial_probe+0x1c/0x20
[   16.842871]  r6:c31bcc10 r5:c1b9ccd0 r4:c31bcc10
[   16.847507]  device_initial_probe from bus_probe_device+0x94/0x9c
[   16.853637]  bus_probe_device from device_add+0x3ec/0x8b4
[   16.859073]  r7:c1c51ef8 r6:c31b9c00 r5:00000000 r4:c31bcc10
[   16.864756]  device_add from platform_device_add+0x100/0x210
[   16.870455]  r10:c1a21744 r9:c1a21724 r8:c31bcc10 r7:00000002 r6:c31bcc00 r5:c3201aa0
[   16.878320]  r4:00000002
[   16.880864]  platform_device_add from mfd_add_devices+0x308/0x62c

platform_device_add sets up pdev->bus = &platform_bus_type;

That assignment looks to date back to the before times... Now you have
me curious. And a little scared :-)

[   16.887008]  r10:00000000 r9:00000000 r8:00000000 r7:00000002 r6:c31bcc00 r5:c3201a40
[   16.894875]  r4:c12be398 r3:00000000
[   16.898465]  mfd_add_devices from devm_mfd_add_devices+0x80/0xc0
[   16.904514]  r10:df9be9bc r9:df9be9bc r8:00000005 r7:c12be2e8 r6:fffffffe r5:c31b9c00
[   16.912381]  r4:c31ecc40
[   16.914924]  devm_mfd_add_devices from ocelot_core_init+0x40/0x6c
[   16.921058]  r8:00000065 r7:c31b9c00 r6:c31ec9c0 r5:00000000 r4:c31b9c00
[   16.927790]  ocelot_core_init from ocelot_spi_probe+0xf4/0x188
[   16.933662]  r5:00000000 r4:c31b9c00
[   16.937251]  ocelot_spi_probe from spi_probe+0x94/0xb8
[   16.942434]  r7:c31b9c00 r6:c1b9fc60 r5:c31b9c00 r4:00000000
[   16.948118]  spi_probe from really_probe+0x110/0x298
[   16.953116]  r7:c31b9c00 r6:c1b9fc70 r5:c31b9c00 r4:00000000
[   16.958800]  really_probe from __driver_probe_device+0x94/0xf4
[   16.964669]  r7:c31b9c00 r6:c31b9c00 r5:c1b9fc70 r4:c31b9c00
[   16.970354]  __driver_probe_device from driver_probe_device+0x44/0xe0
[   16.976832]  r5:c1c51f28 r4:c1c51f24
[   16.980422]  driver_probe_device from __device_attach_driver+0x9c/0xc4
[   16.986991]  r9:df9be9bc r8:c1b9c728 r7:c1c51ef8 r6:c31b9c00 r5:e0021bc4 r4:c1b9fc70
[   16.994768]  __device_attach_driver from bus_for_each_drv+0x94/0xe4
[   17.001077]  r7:c1c51ef8 r6:c0a012e4 r5:e0021bc4 r4:00000000
[   17.006762]  bus_for_each_drv from __device_attach+0x104/0x170
[   17.012632]  r6:00000001 r5:c31b9c44 r4:c31b9c00
[   17.017269]  __device_attach from device_initial_probe+0x1c/0x20
[   17.023311]  r6:c31b9c00 r5:c1bb0a50 r4:c31b9c00
[   17.027948]  device_initial_probe from bus_probe_device+0x94/0x9c
[   17.034077]  bus_probe_device from device_add+0x3ec/0x8b4
[   17.039513]  r7:c1c51ef8 r6:c31b9800 r5:00000000 r4:c31b9c00
[   17.045197]  device_add from __spi_add_device+0x7c/0x10c
[   17.050550]  r10:c1c53844 r9:c30ec810 r8:00000001 r7:c30ec810 r6:c31b9800 r5:c31b9c00
[   17.058415]  r4:00000000
[   17.060959]  __spi_add_device from spi_add_device+0x48/0x78
[   17.066568]  r7:00000000 r6:c31b9800 r5:c31b9c00 r4:c31b9a1c
[   17.072252]  spi_add_device from of_register_spi_device+0x258/0x390
[   17.078556]  r5:df9be9a0 r4:c31b9c00
[   17.082147]  of_register_spi_device from spi_register_controller+0x26c/0x6d8
[   17.089239]  r8:c17105c0 r7:df9bea04 r6:df9be9a0 r5:00000000 r4:c31b9800
[   17.095970]  spi_register_controller from devm_spi_register_controller+0x24/0x60
[   17.103412]  r10:c1c53844 r9:c31e9584 r8:c31b9800 r7:c31b9800 r6:c30ec810 r5:c31b9800
[   17.111278]  r4:c31b9bc0
[   17.113822]  devm_spi_register_controller from omap2_mcspi_probe+0x4c8/0x574
[   17.120924]  r7:c31b9800 r6:00000000 r5:c30ec940 r4:c31b9bc0
[   17.126608]  omap2_mcspi_probe from platform_probe+0x6c/0xc8
[   17.132308]  r10:c1bf0f80 r9:c202f00d r8:00000065 r7:c30ec810 r6:c1bb1d00 r5:c30ec810
[   17.140174]  r4:00000000
[   17.142717]  platform_probe from really_probe+0x110/0x298
[   17.148151]  r7:c30ec810 r6:c1bb1d00 r5:c30ec810 r4:00000000
[   17.153835]  really_probe from __driver_probe_device+0x94/0xf4
[   17.159704]  r7:c30ec810 r6:c30ec810 r5:c1bb1d00 r4:c30ec810
[   17.165387]  __driver_probe_device from driver_probe_device+0x44/0xe0
[   17.171865]  r5:c1c51f28 r4:c1c51f24
[   17.175455]  driver_probe_device from __device_attach_driver+0x9c/0xc4
[   17.182023]  r9:c202f00d r8:c1b9ca1c r7:00000000 r6:c30ec810 r5:e0021e84 r4:c1bb1d00
[   17.189800]  __device_attach_driver from bus_for_each_drv+0x94/0xe4
[   17.196108]  r7:00000000 r6:c0a012e4 r5:e0021e84 r4:00000000
[   17.201792]  bus_for_each_drv from __device_attach+0x104/0x170
[   17.207661]  r6:00000001 r5:c30ec854 r4:c30ec810
[   17.212299]  __device_attach from device_initial_probe+0x1c/0x20
[   17.218342]  r6:c30ec810 r5:c1b9ccd0 r4:c30ec810
[   17.222979]  device_initial_probe from bus_probe_device+0x94/0x9c
[   17.229109]  bus_probe_device from deferred_probe_work_func+0x8c/0xb8
[   17.235594]  r7:00000000 r6:c1b9ca30 r5:c1b9ca1c r4:c30ec810
[   17.241277]  deferred_probe_work_func from process_one_work+0x1e0/0x53c
[   17.247950]  r9:c202f00d r8:00000000 r7:c202f000 r6:c2020a00 r5:c2156500 r4:c1b9ca5c
[   17.255728]  process_one_work from worker_thread+0x238/0x4fc
[   17.261428]  r10:c2020a00 r9:00000088 r8:c1a03d00 r7:c2020a1c r6:c2156518 r5:c2020a00
[   17.269293]  r4:c2156500
[   17.271836]  worker_thread from kthread+0x108/0x138
[   17.276757]  r10:00000000 r9:e0009e4c r8:c2160cc0 r7:c21a6a80 r6:c2156500 r5:c036aac8
[   17.284624]  r4:c2160900
[   17.287168]  kthread from ret_from_fork+0x14/0x2c
[   17.291904] Exception stack(0xe0021fb0 to 0xe0021ff8)
[   17.296982] 1fa0:                                     00000000 00000000 00000000 00000000
[   17.305202] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   17.313420] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[   17.320069]  r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c037341c r4:c2160900
[   17.328184] mscc-miim ocelot-miim0.2.auto: DMA mask not set

  parent reply	other threads:[~2022-05-10  2:58 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-08 18:52 [RFC v8 net-next 00/16] add support for VSC7512 control over SPI Colin Foster
2022-05-08 18:52 ` [RFC v8 net-next 01/16] pinctrl: ocelot: allow pinctrl-ocelot to be loaded as a module Colin Foster
2022-05-09 10:05   ` Vladimir Oltean
2022-05-08 18:52 ` [RFC v8 net-next 02/16] pinctrl: microchip-sgpio: allow sgpio driver to be used " Colin Foster
2022-05-09 10:05   ` Vladimir Oltean
2022-05-08 18:53 ` [RFC v8 net-next 03/16] net: ocelot: add interface to get regmaps when exernally controlled Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 04/16] net: mdio: mscc-miim: add ability to be used in a non-mmio configuration Colin Foster
2022-05-08 21:14   ` Andy Shevchenko
2022-05-08 18:53 ` [RFC v8 net-next 05/16] pinctrl: ocelot: " Colin Foster
2022-05-09  8:37   ` Andy Shevchenko
2022-05-08 18:53 ` [RFC v8 net-next 06/16] pinctrl: microchip-sgpio: " Colin Foster
2022-05-09  8:44   ` Andy Shevchenko
2022-05-09 22:19     ` Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 07/16] resource: add define macro for register address resources Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 08/16] mfd: ocelot: add support for the vsc7512 chip via spi Colin Foster
2022-05-09  9:02   ` Andy Shevchenko
2022-05-09 23:15     ` Colin Foster
2022-08-19 16:50     ` Vladimir Oltean
2022-05-09 10:52   ` Vladimir Oltean
2022-05-09 23:49     ` Colin Foster
2022-05-09 17:20       ` Vladimir Oltean
2022-05-10  0:30         ` Colin Foster
2022-05-10 15:32         ` Lee Jones
2022-05-10 16:13           ` Colin Foster
2022-05-12  9:49             ` Lee Jones
2022-05-12 15:03               ` Colin Foster
2022-05-10 15:58   ` Vladimir Oltean
2022-05-10 16:02     ` Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 09/16] net: mscc: ocelot: expose ocelot wm functions Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 10/16] net: dsa: felix: add configurable device quirks Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 11/16] net: mscc: ocelot: expose regfield definition to be used by other drivers Colin Foster
2022-05-09 10:56   ` Vladimir Oltean
2022-05-10  0:05     ` Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 12/16] net: mscc: ocelot: expose stats layout " Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 13/16] net: mscc: ocelot: expose vcap_props structure Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 14/16] net: dsa: ocelot: add external ocelot switch control Colin Foster
2022-05-09 16:27   ` Vladimir Oltean
2022-05-10  0:02     ` Colin Foster
2022-05-08 18:53 ` [RFC v8 net-next 15/16] net: dsa: felix: add phylink_get_caps capability Colin Foster
2022-05-09 10:34   ` Vladimir Oltean
2022-05-10  0:23     ` Colin Foster
2022-05-09 17:30       ` Vladimir Oltean
2022-05-10  0:55         ` Colin Foster
2022-05-09 17:58           ` Vladimir Oltean
2022-05-08 18:53 ` [RFC v8 net-next 16/16] net: dsa: ocelot: utilize phylink_generic_validate Colin Foster
2022-05-09 17:13 ` [RFC v8 net-next 00/16] add support for VSC7512 control over SPI Vladimir Oltean
2022-05-10  1:43   ` Colin Foster
2022-05-10  2:57   ` Colin Foster [this message]
2022-05-10 16:18     ` Vladimir Oltean
2022-05-14 22:00   ` Colin Foster
2022-05-19 14:44     ` Vladimir Oltean
2022-05-19 16:15       ` Colin Foster
2022-05-19 17:09         ` Vladimir Oltean

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=20220510025748.GA2316428@euler \
    --to=colin.foster@in-advantage.com \
    --cc=Steen.Hegelund@microchip.com \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=andrew@lunn.ch \
    --cc=andy.shevchenko@gmail.com \
    --cc=claudiu.manoil@nxp.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=hkallweit1@gmail.com \
    --cc=kuba@kernel.org \
    --cc=lars.povlsen@microchip.com \
    --cc=lee.jones@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=terry.bowman@amd.com \
    --cc=vivien.didelot@gmail.com \
    --cc=vladimir.oltean@nxp.com \
    --cc=wsa@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).