Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Florian Fainelli <florian.fainelli@broadcom.com>
To: Bjorn Helgaas <helgaas@kernel.org>, Semih Baskan <strst.gs@gmail.com>
Cc: "Manivannan Sadhasivam" <mani@kernel.org>,
	"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
	"Krzysztof Wilczyński" <kwilczynski@kernel.org>,
	"Rob Herring" <robh@kernel.org>, "Ray Jui" <rjui@broadcom.com>,
	"Scott Branden" <sbranden@broadcom.com>,
	"Rafał Miłecki" <rafal@milecki.pl>,
	"Rafał Miłecki" <zajec5@gmail.com>,
	"Arnd Bergmann" <arnd@arndb.de>, "Rosen Penev" <rosenp@gmail.com>,
	"Rani Hod" <rani.hod@gmail.com>,
	bcm-kernel-feedback-list@broadcom.com, linux-pci@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org,
	"Bjorn Helgaas" <bhelgaas@google.com>
Subject: Re: [PATCH v4 0/2] PCI: iproc-bcma: Use EROM instead of devicetree
Date: Thu, 15 Oct 2026 10:31:50 -0700	[thread overview]
Message-ID: <0dcfb2db-5536-465a-bee1-afe160535748@broadcom.com> (raw)
In-Reply-To: <20261013220421.1588051-1-bhelgaas@google.com>

On 10/13/26 15:04, Bjorn Helgaas wrote:
> This is a combination of these two patches:
> 
>    [PATCH v3] PCI: iproc: Use the EROM outbound window on BCMA
>    https://lore.kernel.org/all/20260807160526.379-1-strst.gs@gmail.com
> 
>    [PATCH] PCI: iproc: Use pci_alloc_host_bridge() on BCMA
>    https://lore.kernel.org/all/20260912043626.437-1-strst.gs@gmail.com
> 
> I think it's a little simpler because it keeps the use of devm and it
> doesn't require two pcie-iproc-bcma.c patches.  I didn't sign off on the
> pcie-iproc-bcma.c patch because it's Semih's work except for the minor devm
> adaptation.  And the commit log probably needs some work, but I don't know
> enough to describe the platform/bcma driver issues.

Humm, this is not materially different for me before/after applying tihs 
patch and unfortunately but here is what I am getting with these two 
patches applied on top of Linus' master at 
0fcb05b72344f40806cbe810de8872f1698bf053:

bcma-host-soc 18000000.axi: bus0: Flash type not supported
iproc-pcie 18012000.pcie: host bridge /axi@18000000/pcie@12000 ranges:
iproc-pcie 18012000.pcie:      MEM 0x0008000000..0x000fffffff -> 
0x0008000000
iproc-pcie 18012000.pcie: link: UP
iproc-pcie 18012000.pcie: PCI host bridge to bus 0000:00
pci_bus 0000:00: root bus resource [bus 00-ff]
pci_bus 0000:00: root bus resource [mem 0x08000000-0x0fffffff]
pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0xc8 may 
corrupt adjacent RW1C bits
pci 0000:00:00.0: [14e4:8011] type 01 class 0x060400 PCIe Root Port
pci 0000:00:00.0: PCI bridge to [bus 00]
pci 0000:00:00.0:   bridge window [mem 0x00000000-0x000fffff]
pci 0000:00:00.0:   bridge window [mem 0x00000000-0x000fffff 64bit pref]
pci 0000:00:00.0: PME# supported from D0 D3hot D3cold
PCI: bus0: Fast back to back transfers disabled
pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
8<--- cut here ---
Unhandled fault: external abort on non-linefetch (0x1008) at 0xc896df40
[c896df40] *pgd=0101f811, *pte=18012243, *ppte=18012013
Internal error: : 1008 [#1] SMP ARM
CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 7.3.0-rc7 #324 VOLUNTARY
Hardware name: BCM5301X
PC is at iproc_pcie_config_read32+0x50/0x3c4
LR is at pci_bus_read_config_dword+0x6c/0xb4
pc : [<c044c5b0>]    lr : [<c04264e4>]    psr: 80000093
sp : c881d9f8  ip : c881da38  fp : c1ce1a00
r10: 00000001  r9 : 00000001  r8 : 00000000
r7 : 00000004  r6 : 00000000  r5 : c1ce1a00  r4 : c1ce1f80
r3 : c896df40  r2 : 0000ffff  r1 : 00000f40  r0 : c1ce1a00
Flags: Nzcv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment none
Control: 10c5387d  Table: 0000404a  DAC: 00000051
Register r0 information: slab kmalloc-512 start c1ce1a00 pointer offset 
0 size 512
Register r1 information: non-paged memory
Register r2 information: non-paged memory
Register r3 information: 0-page vmalloc region starting at 0xc896d000 
allocated at devm_pci_remap_cfgspace+0x4c/0x88
Register r4 information: slab kmalloc-512 start c1ce1e00 pointer offset 
384 size 512
Register r5 information: slab kmalloc-512 start c1ce1a00 pointer offset 
0 size 512
Register r6 information: NULL pointer
Register r7 information: non-paged memory
Register r8 information: NULL pointer
Register r9 information: non-paged memory
Register r10 information: non-paged memory
Register r11 information: slab kmalloc-512 start c1ce1a00 pointer offset 
0 size 512
Register r12 information: 2-page vmalloc region starting at 0xc881c000 
allocated at kernel_clone+0xb8/0x348
Process swapper/0 (pid: 1, stack limit = 0x0133d9de)
Stack: (0xc881d9f8 to 0xc881e000)
d9e0:                                                       0000072f 
00000007
da00: 00000000 c094fe97 00000801 c044c560 60000013 c1ce1a00 c881da78 
00000000
da20: 00000001 00000001 c1ce1a00 c04264e4 c881da38 c094e684 00000000 
368113e9
da40: c1095d80 c881da78 0000ea60 00000000 c1ce1a00 c0429f08 c1ce1a00 
00000000
da60: 00000000 c1ce1a00 00000000 00000000 00000000 c042a774 00000000 
368113e9
da80: c101ef54 00000008 c1ce1a00 00000000 c1ce1a00 c042a828 40000013 
368113e9
daa0: 00000008 c1ce1a00 00000000 c1ce1c00 00000000 c042bb34 c1260000 
c1ce1c40
dac0: c1ce1a00 00000000 c1ce1c00 40000013 00ff0100 c1260000 00000000 
00000000
dae0: c1ce1c00 00000000 00000001 00000000 c1ce1a00 c042b94c c7ff18c0 
00000000
db00: c7ff1924 00030000 00ff0100 368113e9 014000f8 c1260000 c1ce1c00 
c1ce1c14
db20: 00000001 00000001 00000000 00000000 00000001 c042bcac 00000001 
00000000
db40: 00000001 00000000 00000000 00000000 c881db64 c1ce1e00 00000001 
00000000
db60: c1ce1e00 c1ce2210 c7ff18c0 c1ce1f80 c7ff1924 c042bf58 c1ce1e00 
00000001
db80: 00000000 c042bfdc 00000330 00000001 00000000 c1ce1e00 c1ce2210 
c044bf5c
dba0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
c1ce2210
dbc0: c1c0f140 00000000 c0921b88 c1ce2210 00000001 00000000 00009012 
ffffffed
dbe0: 01060400 c1ce1f80 c1ce1e00 368113e9 00000000 00000000 c1ce2210 
c1ce2200
dc00: c1ce1f80 c1ce1e00 c7ff18c0 00000000 c7ff1924 c044ca40 00000000 
00000000
dc20: 00000000 18012000 18012fff c7ff192c 00000200 00000000 00000000 
00000000
dc40: 00000000 368113e9 c0f740f4 c1ce2210 c0f740f4 c0f740f4 00000000 
00000000
dc60: c0f79d74 c049d398 c1ce2210 00000000 c0f740f4 c049aff4 c0fba560 
c0fba578
dc80: c881dcec c1ce2210 00000000 c049b448 c0fba560 c0f740f4 c881dcec 
c1ce2210
dca0: c10dd240 c049b594 00000000 c881dcec c049b4cc c10dd200 c10dd240 
c04992bc
dcc0: 00000000 c10dd268 c120d7b8 368113e9 c1ce225c c1ce2210 00000001 
c1ce225c
dce0: c10dd200 c049b8b8 c7ff1b88 c1ce2210 00000001 368113e9 c10dd200 
c1ce2210
dd00: c10dd200 c049ba54 c1ce2210 c1ce2210 c10dd200 c049a1a4 c1ce2210 
00000000
dd20: c1ce225c c114aa10 00000000 c04979c0 00000000 00000000 00000000 
00000000
dd40: 00000000 368113e9 00000000 c1ce2200 c114aa10 00000000 00000000 
c7ff1924
dd60: 00000001 c05a4584 c7ff18c0 00000000 00000000 c083fc70 c114aa10 
c05a4774
dd80: 00000000 368113e9 00000000 c881dddc c1028040 00000000 00000000 
00000000
dda0: 00000000 00000000 00000000 00000000 00000000 368113e9 c1095d80 
c7ff18c0
ddc0: c7ff1478 c083fc70 00000000 c114aa10 00000001 00000000 c0a45870 
c05a4a50
dde0: 00000001 368113e9 c05ae584 c1028064 c114aa00 c1028040 c7ff1478 
00000000
de00: c1028070 c05ac398 c1095d80 c1028040 c114aa00 c114aa10 c7ff1478 
00000000
de20: c1c0f4b8 00000000 c0a45870 c05b184c c114aa10 c0f804b0 c0f804b0 
00000000
de40: 00000000 c049d398 c114aa10 00000000 c0f804b0 c049aff4 c0fba560 
c0fba578
de60: c114aa5c c114aa10 00000000 c049b448 c114aa10 c0f804b0 c114aa5c 
c10dd200
de80: c881df0c c049b6a0 00000000 c0f804b0 c049b5c4 c0498ff0 c10dd200 
c10dd254
dea0: c10b0fb4 368113e9 c0828eb0 c1c0f480 00000000 c0f804b0 c10dd200 
c049a438
dec0: c09409c8 00000000 c09409c8 c0f804b0 c1130f80 c0a23978 c1095d80 
c881df0c
dee0: c0a39860 c049c020 00000000 c1130f80 c0a23978 c0a2398c c0f89000 
c0a01314
df00: c1130f9d 00000311 00000000 00000000 00000000 00000000 00000000 
00000000
df20: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
00000000
df40: 00000000 00000000 00000000 368113e9 0000009d c1130f80 c0a39840 
c0f89000
df60: c0951bd0 c0a39860 00000006 c0a016b0 00000006 00000006 00000000 
c0a004dc
df80: c1095d80 c0f03f80 c07b7924 00000000 00000000 00000000 00000000 
00000000
dfa0: 00000000 c07b7940 00000000 c010012c 00000000 00000000 00000000 
00000000
dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
00000000
dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 
00000000
Call trace:
  iproc_pcie_config_read32 from pci_bus_read_config_dword+0x6c/0xb4
  pci_bus_read_config_dword from 
pci_bus_generic_read_dev_vendor_id+0x24/0x150
  pci_bus_generic_read_dev_vendor_id from pci_scan_single_device+0x6c/0xc8
  pci_scan_single_device from pci_scan_slot+0x58/0x230
  pci_scan_slot from pci_scan_child_bus_extend+0x28/0x250
  pci_scan_child_bus_extend from pci_scan_bridge_extend+0x290/0x430
  pci_scan_bridge_extend from pci_scan_child_bus_extend+0x1a0/0x250
  pci_scan_child_bus_extend from pci_scan_root_bus_bridge+0x60/0xc8
  pci_scan_root_bus_bridge from pci_host_probe+0x1c/0xb8
  pci_host_probe from iproc_pcie_setup+0x8a0/0xd94
  iproc_pcie_setup from iproc_pltfm_pcie_probe+0x10c/0x1d4
  iproc_pltfm_pcie_probe from platform_probe+0x48/0x84
  platform_probe from really_probe+0xc8/0x2c8
  really_probe from driver_probe_device+0x34/0xb8
  driver_probe_device from __device_attach_driver+0xc8/0xf8
  __device_attach_driver from bus_for_each_drv+0x90/0xe4
  bus_for_each_drv from __device_attach+0xf8/0x164
  __device_attach from device_initial_probe+0x3c/0x48
  device_initial_probe from bus_probe_device+0x28/0x7c
  bus_probe_device from device_add+0x524/0x768
  device_add from of_platform_device_create_pdata+0x90/0xb8
  of_platform_device_create_pdata from of_platform_bus_create+0x1bc/0x360
  of_platform_bus_create from of_platform_populate+0x60/0xb8
  of_platform_populate from bcma_bus_register+0xec/0x5f0
  bcma_bus_register from bcma_host_soc_probe+0x68/0x94
  bcma_host_soc_probe from platform_probe+0x48/0x84
  platform_probe from really_probe+0xc8/0x2c8
  really_probe from driver_probe_device+0x34/0xb8
  driver_probe_device from __driver_attach+0xdc/0x164
  __driver_attach from bus_for_each_dev+0x7c/0xcc
  bus_for_each_dev from bus_add_driver+0xcc/0x1c0
  bus_add_driver from driver_register+0x80/0x11c
  driver_register from bcma_modinit+0x14/0x48
  bcma_modinit from do_one_initcall+0x7c/0x1e0
  do_one_initcall from kernel_init_freeable+0x1e4/0x264
  kernel_init_freeable from kernel_init+0x1c/0x12c
  kernel_init from ret_from_fork+0x14/0x28
Exception stack(0xc881dfb0 to 0xc881dff8)
dfa0:                                     00000000 00000000 00000000 
00000000
dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
00000000
dfe0: 00000000 00000000 00000000 00000000 00000013 00000000
Code: e1510002 0a00000d e594300c e0833001 (e5933000)
---[ end trace 0000000000000000 ]---
note
** replaying previous printk message **
note: swapper/0[1] exited with irqs disabled
Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b

-- 
Florian


  parent reply	other threads:[~2026-10-15 17:32 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-13 22:04 [PATCH v4 0/2] PCI: iproc-bcma: Use EROM instead of devicetree Bjorn Helgaas
2026-10-13 22:04 ` [PATCH v4 1/2] PCI: Expose devm_pci_alloc_host_bridge_release() Bjorn Helgaas
2026-10-14 11:00   ` Manivannan Sadhasivam
2026-10-13 22:04 ` [PATCH v4 2/2] PCI: iproc: Use the EROM outbound window on BCMA Bjorn Helgaas
2026-10-14  1:17   ` Semih Baskan
2026-10-14 13:34 ` [PATCH v4 0/2] PCI: iproc-bcma: Use EROM instead of devicetree Manivannan Sadhasivam
2026-10-14 13:34 ` Manivannan Sadhasivam
2026-10-15 17:31 ` Florian Fainelli [this message]
2026-10-15 18:51   ` Semih Baskan
2026-10-15 19:10     ` Florian Fainelli
2026-10-15 20:45       ` Bjorn Helgaas

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=0dcfb2db-5536-465a-bee1-afe160535748@broadcom.com \
    --to=florian.fainelli@broadcom.com \
    --cc=arnd@arndb.de \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=bhelgaas@google.com \
    --cc=helgaas@kernel.org \
    --cc=kwilczynski@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lpieralisi@kernel.org \
    --cc=mani@kernel.org \
    --cc=rafal@milecki.pl \
    --cc=rani.hod@gmail.com \
    --cc=rjui@broadcom.com \
    --cc=robh@kernel.org \
    --cc=rosenp@gmail.com \
    --cc=sbranden@broadcom.com \
    --cc=strst.gs@gmail.com \
    --cc=zajec5@gmail.com \
    /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