Date: Wed, 9 Oct 2013 01:57:26 +0300 From: Alexander Motin <mav@FreeBSD.org> To: Ilya Bakulin <ilya@bakulin.de> Cc: Adrian Chadd <adrian.chadd@gmail.com>, Alexander Motin <mav@freebsd.org>, freebsd-embedded@freebsd.org Subject: Re: SDIO for FreeBSD Message-ID: <CAO4K=PUp3tNg1vTTEjKj7fZ0pLeadRV6%2Bf=FWO8ko5xybZDcoA@mail.gmail.com> In-Reply-To: <5254892B.3050507@bakulin.de> References: <5251A9D3.1080803@bakulin.de> <5251C911.6020003@FreeBSD.org> <CAJ-Vmon0xr597We=sF5Uhja2qb=viuiqCbQXZgUvp7VX-FsPfA@mail.gmail.com> <4FB11076-DD88-43F2-A449-E41D2088A4DD@bsdimp.com> <5254892B.3050507@bakulin.de>
next in thread | previous in thread | raw e-mail | index | archive | help
09.10.2013 1:37 =D0=CF=CC=D8=DA=CF=D7=C1=D4=C5=CC=D8 "Ilya Bakulin" <ilya@b= akulin.de> =CE=C1=D0=C9=D3=C1=CC: > > On 07.10.13 01:19, Warner Losh wrote: > > I've often thought that having an SDIO protocol for CAM would be where we'd wind up because once you start adding in GPIO pin interrupt signalling, message "interrupt" signaling, message completion, etc, it looks a lot like many of the mechanisms we have in CAM... I'm not at all sure that USB is the right model to use, frankly... But it does have some superficial similarities... > > > > Warner > > The idea seems to be interesting -- at least we can reuse the CAM queues > and interrupt handling algorithms... > One thing that I'd like to ask after initial reading about CAM in FreeBSD= : > is it possible for SIM devices to initiate data transfer? > the CAM subsystem is primarily used for storage devices, > where the host issues a SCSI command, schedules it to the SIM, > and then SIM receives an interrupt from the h/w and updates the existing > CCB, > signaling command completion. > > In SDIO case we can have the interrupts from the card > that are not associated with any previous command. > Is it possible to handle such situation using CAM framework? CAM has mechanism of asynchronous notifications, that is quite alike to interupts. On the other side, target mode drivers in CAM are using different concept with requests that just wait inside the controller or its driver to be completed on next incoming request, carying requst data inside.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAO4K=PUp3tNg1vTTEjKj7fZ0pLeadRV6%2Bf=FWO8ko5xybZDcoA>