02 Nov, 2017

1 commit

  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

28 Aug, 2017

5 commits


03 Mar, 2014

1 commit


01 Mar, 2014

2 commits

  • This completes the show_sdb_tree functionality, with the
    new informative fields. The output for a verbose module is now
    like this (long lines are unavoidable):

    SDB: 00000651:e6a542c9 WB4-Crossbar-GSI
    SDB: 0000ce42:00000601 WB-DMA.Control (00001000-0000103f)
    SDB: 0000ce42:779c5443 WB-OneWire-Master (00001100-000011ff)
    SDB: 0000ce42:00000603 WB-SPEC-CSR (00001200-0000121f)
    SDB: 0000ce42:00000013 WB-VIC-Int.Control (00001300-000013ff)
    SDB: 0000ce42:d5735ab4 WB-DMA.EIC (00001400-0000140f)
    SDB: 00000651:eef0b198 WB4-Bridge-GSI (bridge: 00002000)
    SDB: 00000651:e6a542c9 WB4-Crossbar-GSI
    SDB: 0000ce42:123c5443 WB-I2C-Master (00003000-000030ff)
    SDB: 0000ce42:e503947e WB-SPI.Control (00003100-0000311f)
    SDB: 0000ce42:123c5443 WB-I2C-Master (00003200-000032ff)
    SDB: 0000ce42:00000608 WB-FMC-ADC-Core (00003300-0000337f)
    SDB: 0000ce42:779c5443 WB-OneWire-Master (00003400-000034ff)
    SDB: 0000ce42:26ec6086 WB-FMC-ADC.EIC (00003500-0000350f)
    SDB: 0000ce42:00000604 WB-Timetag-Core (00003600-0000367f)
    SDB: Synthesis repository: git://ohwr.org/fmc-projects/fmc-adc-100m14b4cha.git
    SDB: Bitstream 'spec_top_fmc_adcmc-projects/fmc-adc-100m14b4cha.git' \
    synthesized 20140116 by mcattin (ISE version 133), commit f0a539dffe6d

    Signed-off-by: Tomasz Wlostowski
    Acked-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     
  • This allows easier modification to the eeprom than loading the
    fmc-write-eeprom module. The carrier driver will refuse writing if
    the FPGA is not running the golden gateware image, so writing in
    practice is only available at manufacture/development time.

    Signed-off-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     

26 Feb, 2014

1 commit


16 Feb, 2014

2 commits

  • The code reported wrong addresses in the sdb dumps. All sdb addresses
    are relative, but the code was adding the base address twice. Bug
    exposed by a gateware image with two bridge levels.

    Thanks David for reporting the problem.

    Signed-off-by: Alessandro Rubini
    Reported-by: Juan David Gonzalez Cobas
    Tested-by: Juan David Gonzalez Cobas
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     
  • At registration and unregistration time, I was checking fmc->flags
    for FMC_DEVICE_NO_MEZZANINE, to skip initialization and cleanup for
    empty slots. The check was wrong ("==" instead of "&") but
    registration failed anyways (as expected) because we had no EEPROM.

    This commit fixes one such checks and removes the other, so to
    actually accept slots with no mezzanines. That's because the carrier
    may offer some support anyways (the SPEC does), and working on the
    carrier with no mezzanine-specific driver is common during
    development.

    Signed-off-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     

14 Oct, 2013

1 commit


13 Aug, 2013

1 commit

  • This local symbol is used only in this file.
    Fix the following sparse warnings:

    drivers/fmc/fmc-write-eeprom.c:106:5: warning: symbol 'fwe_probe' was not declared. Should it be static?
    drivers/fmc/fmc-write-eeprom.c:147:5: warning: symbol 'fwe_remove' was not declared. Should it be static?

    Signed-off-by: Jingoo Han
    Acked-by: Alessandro Rubini
    Signed-off-by: Greg Kroah-Hartman

    Jingoo Han
     

25 Jul, 2013

1 commit

  • The fmc-chardev module was over-locking, by calling misc
    register/unregister while holding its spinlock. This reported a
    "scheduling while atomic" error.

    Since the misc driver already serializes operations internally, this
    commit downgrades the fmc-chardev lock to just cover its own list.

    Reported-by: Sasha Levin
    Reported-by: Fengguang Wu
    Signed-off-by: Alessandro Rubini
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     

25 Jun, 2013

1 commit


20 Jun, 2013

2 commits


19 Jun, 2013

5 commits

  • This driver exports the memory area associated with the mezzanine card
    as a misc device, so users can access registers.

    Signed-off-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Acked-by: Emilio G. Cota
    Acked-by: Samuel Iglesias Gonsalvez
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     
  • This driver allows to reprogram the EEPROM in a mezzanine, to store
    its own identifiers during manufacturing or to save other useful data.

    Signed-off-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Acked-by: Emilio G. Cota
    Acked-by: Samuel Iglesias Gonsalvez
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     
  • This simple do-nothing mezzanine driver shows how to write a mezzanine
    driver, that can also handle interrupts reported by the carrier.

    Signed-off-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Acked-by: Emilio G. Cota
    Acked-by: Samuel Iglesias Gonsalvez
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     
  • This fake carrier is designed to help FMC users understand how a
    carrier driver works, and to experiment the behaviour with EEPROM
    reprogramming (with a mezzanine driver commited later). This carrier
    can register up to 4 (fake) mezzanines.

    We have real carriers (both on PCI-E and VME), but they are bigger
    things and are not part of this submission.

    Signed-off-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Acked-by: Emilio G. Cota
    Acked-by: Samuel Iglesias Gonsalvez
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     
  • This module offers registration services for both carriers
    (i.e. devices) and mezzanines (i.e. drivers). The matching for devices
    and drivers is performed according to the IPMI standard for FRU
    devices (Field Replaceable Units).

    The code includes support for parsing an SDB tree if present in the FPGA,
    and dumping it for diagnostics. SDB is not mandatory.

    Files in this commit correspond to commit ab23167f in the master branch
    of the project hosted on ohwr.org.

    Signed-off-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Acked-by: Emilio G. Cota
    Acked-by: Samuel Iglesias Gonsalvez
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini
     

18 Jun, 2013

1 commit

  • This commit creates the drivers/fmc directory and puts the necessary
    hooks for kbuild and kconfig. The code is currently a placeholder
    that only registers an empty bus.

    Signed-off-by: Alessandro Rubini
    Acked-by: Juan David Gonzalez Cobas
    Acked-by: Emilio G. Cota
    Acked-by: Samuel Iglesias Gonsalvez
    Signed-off-by: Greg Kroah-Hartman

    Alessandro Rubini