Re: MMCCAM sdhci_fdt0 panic on boot

From: Warner Losh <imp_at_bsdimp.com>
Date: Tue, 06 Jul 2021 23:48:30 UTC
On Tue, Jul 6, 2021 at 5:31 PM Bjoern A. Zeeb <
bzeeb-lists@lists.zabbadoz.net> wrote:

> On Tue, 6 Jul 2021, Bjoern A. Zeeb wrote:
>
> > Hi,
> >
> > something has recently changed which causes this (last kernel was from
> > April 20 imho and was fine)?
> > I am wondering if it is because of MMCCAM/CAM updates or a DTS update I
> > didn't fully do and we don't handle well?
> > My guess is the former...
>
> replying to myself after looking at the code;
> I am almost certain it's this one:
>
> https://cgit.freebsd.org/src/commit/sys/dev/sdhci/sdhci.c?id=a72af82e3169fcacfedf9047120679300a4296f8
>
> Given the previous version did pass that:
>
> https://cgit.freebsd.org/src/commit/sys?id=aeb04e88f51a706ef4b6a380bf5e82d15203fb6a
>
> I'll run a quick test using this before committing.
>
> diff --git sys/dev/sdhci/sdhci.c sys/dev/sdhci/sdhci.c
> index bd30175e9f8..d075c2e0500 100644
> --- sys/dev/sdhci/sdhci.c
> +++ sys/dev/sdhci/sdhci.c
> @@ -2484,7 +2484,7 @@ sdhci_start_slot(struct sdhci_slot *slot)
>
>          mtx_init(&slot->sim_mtx, "sdhcisim", NULL, MTX_DEF);
>          slot->sim = cam_sim_alloc(sdhci_cam_action, sdhci_cam_poll,
> -           "sdhci_slot", slot, device_get_unit(slot->dev),
> +           "sdhci_slot", slot, device_get_unit(slot->bus),
>              &slot->sim_mtx, 1, 1, slot->devq);
>
>          if (slot->sim == NULL) {
>


You're correct. slot->dev is unused for MMCCAM it seems. I don't know
what I was thinking when I made the earlier change.

Warner