staging/mei: MEI driver init flow.
authorOren Weil <oren.jer.weil@intel.com>
Sun, 15 May 2011 10:43:44 +0000 (13:43 +0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 18 May 2011 15:30:57 +0000 (08:30 -0700)
commit91f01c6d45e634b98dd68439afdb04b674a95eee
tree7a4c8bb2ccda34c2a75f2b558156005bed636bf8
parent3ce72726c6790ffcf492c0689e5ee3a758bfb00e
staging/mei: MEI driver init flow.

Init driver list and queue, MEI Hardware reset flow,
init of driver specific host client.

MEI Init/reset flow:
- Ack all waiting interrupts
- Hardware reset flow (Set Reset Bit, Generate Interrupt, Clear Reset Bit
  Generate Interrupt)
- Wait for ME Ready Bit (done in interrupt thread)
- Set ME Ready Bit (done in interrupt thread)
- Send Start request (done in interrupt thread)
- wait for answer
- Send Enumerate Clients request (done in interrupt thread)
- wait for answer
- Send Get Client property for each client request (done in interrupt thread)
- Wait for answers
- Init Done.

MEI Driver connect internally to 2 ME clients/features:
AMTHI and AMT watchdog.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/mei/init.c [new file with mode: 0644]