All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alessandro Rubini <rubini@gnudd.com>
To: rob@landley.net
Cc: linux-kernel@vger.kernel.org, greg@kroah.com, dcobas@cern.ch,
	cota@braap.org, siglesias@igalia.com, linux-doc@vger.kernel.org
Subject: Re: [PATCH 4/8] FMC: add documentation for the core
Date: Sat, 23 Feb 2013 23:56:13 +0100	[thread overview]
Message-ID: <20130223225613.GA24239@mail.gnudd.com> (raw)
In-Reply-To: <1361643677.11282.5@driftwood>

> Acked-by: Rob Landley <rob@landley.net>

Thanks.

> What is this *note thingy:: syntax? It recurs a lot. Some sort of  
> reference into the PDF you started out with a link to, maybe?

My documentation is texinfo and this is the ASCII output, manually
split into different files. I fixed some of the internal references
when I noted them.  But since it's manual work, I didn't do it
carefully.  I suspect I'll need to V2 for some reason anyways.

> A basic concept of this framework is that you have a 70x75 PCB? Is this  
> part of that ANSI-VITA standard?

Yes. the form-factor is fixed, like PC104 in the PC world.  Here's the
jpg of a carrier: http://www.ohwr.org/attachments/download/552 (from
http://www.ohwr.org/projects/spec/wiki). And here's the jpg of a
mezzanine:
http://www.ohwr.org/attachments/download/833/FmcAdc100M14b4cha_top_small.JPG

You find more on the net, also from commercial vendors.

>> +FMC, as such, is not a bus in the usual meaning of the term, because
>> +most carriers have only one connector, and carriers with several
>> +connectors have completely separate electrical connections to them.
>> +This package, however, implements a bus as a software abstraction.
> 
> USB is point to point connections with switches in between. It's still  
> got B in the acronym. I'm not sure what you're saying here.

FMC has no switches, no hotplug, not even shared wires like ISA.  I
took a while to explain some hardware guys that it ought to be a
"bus" in software. That's why I have the paragraph.

>> +What is SDB
>> +***********
>> +
>> +SDB (Self Describing Bus) is a set of data structures that we use for
>> +enumerating the internal structure of an FPGA image. We also use it  
>> as
>> +a filesystem inside the FMC EEPROM.
> 
> Are you trying to document infrastructure to implement a standard, or a  
> bespoke driver for a specific piece of hardware? How much of this is  
> generic? Are there other vendors who might someday want to use this  
> code?

SDB is already implemented and is generic.  We enumerate the devices
inside the FPGA already, and it only costs a few lines of VHDL (using
the support files by Wesley Terpstra) to describe your own FPGA
design. Wesley even discovers and enumerates devices over the
Ethernet, by means of Ethernet-driven device access and SDB-aware host
code -- all code is published.

The SDB specification is discussed in a mailing list and is public
(http://www.ohwr.org/attachments/download/1486/sdb-1.0.pdf). By having
64-bit vendor identifiers we encourage anyone who finds SDB useful to
become a vendor. There are a few vendors already, although I admit the
early adopters are involved in the same set of projects.

> Anyway, no serious objection, but I note that reading to this point I  
> didn't feel I had enough information to wrap my head around what it's  
> for. It's documentation by people who already know this stuff, for  
> people who already know this stuff. (There's a long tradition of that.  
> Oh well.)

I'm aware of this. But it's the same if you read USB documentation
without ever seeing one such device (I remember the feeling :).  FMC
is not common on the shelf, but it is already renown in high-profile
I/O environments.

Thanks
/alessandro

  reply	other threads:[~2013-02-23 22:56 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-21 18:13 [PATCH RFC 0/8] drivers/fmc: bus support for ANSI-VITA 57.1 Alessandro Rubini
2013-02-21 18:13 ` [PATCH 1/8] FMC: create drivers/fmc and toplevel Kconfig question Alessandro Rubini
2013-02-21 18:13 ` [PATCH 2/8] FMC: add needed headers Alessandro Rubini
2013-02-21 18:14 ` [PATCH 3/8] FMC: add core bus driver Alessandro Rubini
2013-03-15 19:17   ` Greg KH
2013-02-21 18:14 ` [PATCH 4/8] FMC: add documentation for the core Alessandro Rubini
2013-02-23 18:21   ` Rob Landley
2013-02-23 22:56     ` Alessandro Rubini [this message]
2013-02-21 18:14 ` [PATCH 5/8] FMC: add a software carrier driver Alessandro Rubini
2013-02-21 18:14 ` [PATCH 6/8] FMC: add a software mezzanine driver Alessandro Rubini
2013-02-21 18:14 ` [PATCH 7/8] FMC: add a driver to write mezzanine EEPROM Alessandro Rubini
2013-02-21 18:14 ` [PATCH 8/8] FMC: add a char-device mezzanine driver Alessandro Rubini
  -- strict thread matches above, loose matches on Subject: below --
2013-06-12  7:13 [PATCH 0/8] Support for FMC carriers and mezzanines Alessandro Rubini
2013-06-12  7:13 ` [PATCH 4/8] FMC: add documentation for the core Alessandro Rubini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130223225613.GA24239@mail.gnudd.com \
    --to=rubini@gnudd.com \
    --cc=cota@braap.org \
    --cc=dcobas@cern.ch \
    --cc=greg@kroah.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rob@landley.net \
    --cc=siglesias@igalia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.