Re: [ALSA STABLE 3/3] a few more -- unregister platform device again if probe was unsuccessful

Russell King
2006-04-13T14:59:00Z

On Thu, Apr 13, 2006 at 04:05:33PM +0200, Rene Herman wrote:
> Not honouring/passing up probe() method error returns, not even -ENODEV,
> makes some sense for discoverable busses such as PCI where you at least
> have a driver independent bus_id sitting in /sys/devices/pci* that you
> can later echo into /sys/bus/pci/drivers/*/bind to make the driver bind
> to a device, but not much sense for the platform bus. Platform devices
> only "exist" (in /sys/devices/platform) due to the driver creating them
> itself and keeping them after failing a probe means that directory
> becomes an enumeration of the drivers we loaded, rather than a view of
> what's present in the system.

Incorrect. In some circumstances, they may be created by architecture
support code, and might be created and destroyed dynamically by
architecture support code.

> The driver model crowd did not seem exceedingly interested in the
> problem though:
>
> http://marc.theaimsgroup.com/?l=linux-kernel&m=114417829014332&w=2

Incorrect summary. The ALSA use model of the driver model doesn't fit
with the driver model use model. It's not that we're not interested
in it - it's that it's perverted to the way driver model folk intend
the subsystem to work, and the way that platform devices are used on
some architectures.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core