25 Oct, 2011
3 commits
-
Always call _pmbus_read_byte() instead of pmbus_read_byte() in PMBus core
driver. With this change, device specific read functions can be implemented for
all registers.Since the device specific read_byte function is now always called, we need to be
more careful with page validations. Only fail if the passed page number is larger
than 0, since -1 means "current page".Signed-off-by: Guenter Roeck
Reviewed-by: Robert Coulson -
EINVAL was over-used in the code. Replace it with more appropriate errors.
Signed-off-by: Guenter Roeck
Reviewed-by: Robert Coulson -
Driver remove functions have an error return value, but rarely return an error
in practice. If a driver does return an error from its remove function, the
driver won't be unloaded and is expected to stay alive.pmbus_do_remove() is defined as returning an int, but always returns 0 (no
error). Calling code passes that return value on to high level driver
remove functions, but does not evaluate it and removes driver data even if
pmbus_do_remove() returned an error (which it in practice never does). Even if
this code could never cause a real problem, it is nevertheless conceptually
wrong.To reduce confusion and simplify the code, change pmbus_do_remove() to be a void
function, and have PMBus client drivers always return zero in their driver
remove functions.Reported-by: Jean Delvare
Signed-off-by: Guenter Roeck
Acked-by: Jean Delvare
12 Aug, 2011
1 commit
-
pmbus_clear_faults() attempts to clear faults on non-existing real pages.
As a result, the command error bit in the status register is set, and faults
are not really cleared.All byte writes to non-zero pages are requests to clear the status register
on that page. Since non-zero pages are virtual and do not exist on the chip,
there is nothing to do, and such requests have to be ignored. This fixes
above problem.Signed-off-by: Guenter Roeck
Reviewed-by: Robert Coulson
29 Jul, 2011
1 commit
-
PMBus client driver supporting National Semiconductor LM25066, LM5064, and LM5066.
Signed-off-by: Guenter Roeck
Reviewed-by: Robert Coulson