Date: Wed, 29 Mar 2006 22:32:28 GMT From: Marcel Moolenaar <marcel@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 94270 for review Message-ID: <200603292232.k2TMWSwp078690@repoman.freebsd.org>
index | next in thread | raw e-mail
http://perforce.freebsd.org/chv.cgi?CH=94270 Change 94270 by marcel@marcel_nfs on 2006/03/29 22:31:33 Missed in previous changeset... Affected files ... .. //depot/projects/uart/dev/scc/scc_core.c#16 edit Differences ... ==== //depot/projects/uart/dev/scc/scc_core.c#16 (text+ko) ==== @@ -102,7 +102,7 @@ const char *sep; bus_space_handle_t bh; u_long base, size, start; - int c, error, mode, reset; + int c, error, mode, sysdev; /* * The sc_class field defines the type of SCC we're going to work @@ -142,8 +142,7 @@ * Create the control structures for our children. Probe devices * and query them to see if we can reset the hardware. */ - reset = 1; - + sysdev = 0; sc->sc_chan = malloc(sizeof(struct scc_chan) * cl->cl_channels, M_SCC, M_WAITOK | M_ZERO); base = rman_get_start(sc->sc_rres); @@ -170,18 +169,20 @@ m = &ch->ch_mode[mode]; m->m_chan = ch; m->m_mode = 1U << mode; - if ((cl->cl_modes & m->m_mode) == 0) + if ((cl->cl_modes & m->m_mode) == 0 || ch->ch_sysdev) continue; m->m_dev = device_add_child(dev, NULL, -1); device_set_ivars(m->m_dev, (void *)m); error = device_probe_child(dev, m->m_dev); if (!error) { m->m_probed = 1; - reset = (reset && SERDEV_RESET(m->m_dev)); + m->m_sysdev = SERDEV_SYSDEV(m->m_dev) ? 1 : 0; + ch->ch_sysdev |= m->m_sysdev; } } start += (cl->cl_range < 0) ? -size : size; + sysdev |= ch->ch_sysdev; } /* @@ -190,9 +191,9 @@ */ if (bootverbose) { device_printf(dev, "%sresetting hardware\n", - (reset) ? "" : "not "); + (sysdev) ? "not " : ""); } - error = SCC_ATTACH(sc, reset); + error = SCC_ATTACH(sc, !sysdev); if (error) goto fail;help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200603292232.k2TMWSwp078690>
