firewire: core: align driver match with modalias
authorStefan Richter <stefanr@s5r6.in-berlin.de>
Thu, 18 Mar 2010 23:39:07 +0000 (00:39 +0100)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Wed, 24 Mar 2010 21:01:47 +0000 (22:01 +0100)
commitfe43d6d9cf59d8f8cbfdcde2018de13ffd1285c7
tree4eb14adaa43b7746cd8e0bc5416281b5d3839f9c
parent5ae73518cb39dd81e641dfa7ce20751c853579e0
firewire: core: align driver match with modalias

The driver match strategy was:
  - Match vendor/model/specifier/version of the unit directory.
  - If that was a miss, match vendor from the root directory and
    model/specifier/version of the unit directory.

This was inconsistent with how the modalias string was constructed
until recently (take vendor/model from root directory and specifier/
version from unit directory).  It was also inconsistent with how it is
done since the parent commit:
  - Use vendor/model/specifier/version of the unit directory if possible,
  - fall back to one or more of vendor/model/specifier/version from the
    root directory depending on which ones are not present at the unit
    directory.

Fix this inconsistency by sharing the ROM scanner function between
modalias printer function and driver match function.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/core-device.c