(volatile struct mx_desc *)&ld->mx_rx_list[i];
(struct mx_desc *)&ld->mx_rx_list[i];
static int mx_list_rx_init(sc)	struct mx_softc		*sc;{	struct mx_chain_data	*cd;	struct mx_list_data	*ld;	int			i;	cd = &sc->mx_cdata;	ld = sc->mx_ldata;	for (i = 0; i < MX_RX_LIST_CNT; i++) {		cd->mx_rx_chain[i].mx_ptr =			(volatile struct mx_desc *)&ld->mx_rx_list[i];		if (mx_newbuf(sc, &cd->mx_rx_chain[i]) == ENOBUFS)			return(ENOBUFS);		if (i == (MX_RX_LIST_CNT - 1)) {			cd->mx_rx_chain[i].mx_nextdesc = &cd->mx_rx_chain[0];			ld->mx_rx_list[i].mx_next =					vtophys(&ld->mx_rx_list[0]);		} else {			cd->mx_rx_chain[i].mx_nextdesc = &cd->mx_rx_chain[i + 1];			ld->mx_rx_list[i].mx_next =					vtophys(&ld->mx_rx_list[i + 1]);		}	}	cd->mx_rx_head = &cd->mx_rx_chain[0];	return(0);}