Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

#
# CONFIG_FMC (ANSI-VITA 57.1) bus support
#

menuconfig CONFIG_FMC
	tristate "FMC support"
	help

	  CONFIG_FMC (CONFIG_FPGA Mezzanine Carrier) is a mechanical and electrical
	  standard for mezzanine cards that plug into a carrier board.
	  This kernel subsystem supports the matching between carrier
	  and mezzanine based on identifiers stored in the internal CONFIG_I2C
	  EEPROM, as well as having carrier-independent drivers.

	  The framework was born outside of the kernel and at this time
	  the off-tree code base is more complete.  Code and documentation
	  is at git://ohwr.org/fmc-projects/fmc-bus.git .

if CONFIG_FMC

config CONFIG_FMC_FAKEDEV
	tristate "FMC fake device (software testing)"
	help
	  This is a fake carrier, bringing a default EEPROM content
	  that can be rewritten at run time and usef for matching
	  mezzanines.

config CONFIG_FMC_TRIVIAL
	tristate "FMC trivial mezzanine driver (software testing)"
	help
	  This is a fake mezzanine driver, to show how CONFIG_FMC works and test it.
	  The driver also handles interrupts (we used it with a real carrier
	  before the mezzanines were produced)

config CONFIG_FMC_WRITE_EEPROM
	tristate "FMC mezzanine driver to write I2C EEPROM"
	help
	  This driver matches every mezzanine device and can write the
	  internal EEPROM of the PCB, using the firmware loader to get
	  its binary and the function carrier->reprogram to actually do it.
	  It is useful when the mezzanines are produced.

config CONFIG_FMC_CHARDEV
	tristate "FMC mezzanine driver that registers a char device"
	help
	  This driver matches every mezzanine device and allows user
	  space to read and write registers using a char device. It
	  can be used to write user-space drivers, or just get
	  acquainted with a mezzanine before writing its specific driver.

endif # CONFIG_FMC