static void
dump_sc(struct umidi_softc *sc)
{
	int i;

	DPRINTFN(10, ("%s: dump_sc\n", USBDEVNAME(sc->sc_dev)));
	for (i=0; i<sc->sc_out_num_endpoints; i++) {
		DPRINTFN(10, ("\tout_ep(%p):\n", &sc->sc_out_ep[i]));
		dump_ep(&sc->sc_out_ep[i]);
	}
	for (i=0; i<sc->sc_in_num_endpoints; i++) {
		DPRINTFN(10, ("\tin_ep(%p):\n", &sc->sc_in_ep[i]));
		dump_ep(&sc->sc_in_ep[i]);
	}
}
Esempio n. 2
0
File: umidi.c Progetto: bluhm/sys
static void
dump_sc(struct umidi_softc *sc)
{
	int i;

	DPRINTFN(10, ("%s: %s\n", sc->sc_dev.dv_xname, __func__));
	for (i=0; i<sc->sc_out_num_endpoints; i++) {
		DPRINTFN(10, ("\tout_ep(%p):\n", &sc->sc_out_ep[i]));
		dump_ep(&sc->sc_out_ep[i]);
	}
	for (i=0; i<sc->sc_in_num_endpoints; i++) {
		DPRINTFN(10, ("\tin_ep(%p):\n", &sc->sc_in_ep[i]));
		dump_ep(&sc->sc_in_ep[i]);
	}
}
Esempio n. 3
0
int pm_scif_init(void)
{
	int err = 1;
	int retry = 0;

	FUNCTION_ENTRY;
	PM_DB("pm_scif insmoded \n");
#ifdef PM_SCIF_IOCTL
	if ((err = spm_dev_init())) {
		PM_DB(" spm_dev_init failed\n");
		goto done;
	}
#endif
	atomic_set(&epinuse,0);
	pm_scif = kzalloc(sizeof(mic_pm_scif), GFP_KERNEL);

	if (!pm_scif) {
		err = -ENOMEM;
		goto end_con;
	}

	pm_scif_register(&micpmscif);

	if ((pm_scif->ep = scif_open()) == NULL) {
		PM_DB(" scif_open failed\n");
		goto end_con;
	}

	if ((pm_scif->lport = scif_bind(pm_scif->ep, 0)) < 0) {
		PM_DB(" scif_bind failed\n");
		goto end_con;
	}

	PM_DB(" scif_bind successfull. Local port number = %d, ep =  \n",
							 pm_scif->lport);
	dump_ep(pm_scif->ep, __func__,__LINE__);
	pm_scif->rport_id.node = 0;
	pm_scif->rport_id.port = SCIF_PM_PORT_0;

	while ((err = scif_connect(pm_scif->ep, &pm_scif->rport_id)) != 0) {
		PM_DB(" scif_connect failed with err = %d ep %p\n",err,
			pm_scif->ep);
		msleep(1000);
		if (retry++ > PM_SCIF_RETRY_COUNT)
			goto end_con;
	}

	pm_scif->pm_recvq = create_singlethread_workqueue("pm_recvq");
	INIT_WORK(&pm_scif->pm_recv, pm_recv_from_host);
	queue_work(pm_scif->pm_recvq, &pm_scif->pm_recv);
	pm_scif->con_state = PM_CONNECTED;
	err = 0;
#ifdef PM_SCIF_IOCTL
done:
#endif
	return err;
end_con:
	pm_scif_exit();
	FUNCTION_EXIT;
	return err;
}