On Fri, Oct 16, 2015 at 04:35:30PM +0100, Richard Fitzgerald wrote: > However, what about this sort of scenario: some codec has a speaker > volume range of 0..100, all of which are valid and safe. Manufacturer X > makes a device with an inadequate speaker that can be damaged with > volume settings above 80. How is that protected? There's nothing wrong > with the codec driver. There's no software at all for a speaker - it's > just a speaker. Where do we put a hard limit of 80 on a codec control > for one specific device? If it was my codec driver I don't want to have > to put a workaround for one specific device because manufacturer X chose > the wrong type of speaker. Or do we not care about the "stupid > manufacturer" cases and we're only interested in protecting the device > the control directly applies to - in this example it's a codec control > so it mustn't damage the codec but we don't care if poor hardware design > means it could damage other hardware connected to the codec. This is what machine drivers are for - providing system specific integration.