tree 674bb7285194fff110112f2848e3a907ef044e39
parent cf393195c3ba5d4c0a8e237eb00f7ef104876ee5
parent eb994594bc22220976f367c03ffa141580aa45e4
author Linus Torvalds <torvalds@linux-foundation.org> 1488344790 -0800
committer Linus Torvalds <torvalds@linux-foundation.org> 1488344790 -0800
mergetag object eb994594bc22220976f367c03ffa141580aa45e4
 type commit
 tag for-linus-4.11
 tagger Corey Minyard <cminyard@mvista.com> 1488246939 -0600
 
 This is a few small fixes to the main IPMI driver, make some
 things const, fix typos, etc.
 
 The last patch came in about a week ago, but IMHO it's best to
 go in now.  It is not for the main driver, it's for the bt-bmc
 driver, which runs on the managment controller side, not on
 the host side, so the scope is limited and the change is
 necessary.
 
 Thanks,
 
 -corey
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iEYEABECAAYFAli02KQACgkQIXnXXONXERfU8gCgjtw2swFIf1670ioUa1kJpARw
 DKMAnil/wqMUMH7lJalWYr+DYIyoENjy
 =0JyF
 -----END PGP SIGNATURE-----

Merge tag 'for-linus-4.11' of git://git.code.sf.net/p/openipmi/linux-ipmi

Pull IPMI updates from Corey Minyard:
 "This is a few small fixes to the main IPMI driver, make some things
  const, fix typos, etc.

  The last patch came in about a week ago, but IMHO it's best to go in
  now. It is not for the main driver, it's for the bt-bmc driver, which
  runs on the managment controller side, not on the host side, so the
  scope is limited and the change is necessary"

* tag 'for-linus-4.11' of git://git.code.sf.net/p/openipmi/linux-ipmi:
  ipmi: bt-bmc: Use a regmap for register access
  char: ipmi: constify ipmi_smi_handlers structures
  acpi:ipmi: Make IPMI user handler const
  ipmi: make ipmi_usr_hndl const
  Documentation: Fix a typo in IPMI.txt.
