Implement the trivial diagnose CU and RU abort commands. These are necessary to make the device work with OpenSolaris 0609 (111b).

Submitted by Reimar Döffinger on Sept. 12, 2009, 1:50 p.m.

Details

Message ID 20090912135045.GA15004@1und1.de
State Superseded
Headers show

Commit Message

Reimar Döffinger Sept. 12, 2009, 1:50 p.m.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
---
 hw/eepro100.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

Comments

Anthony Liguori Oct. 5, 2009, 1:24 p.m.
Reimar Döffinger wrote:
> Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
> ---
>  hw/eepro100.c |    7 +++++++
>  1 files changed, 7 insertions(+), 0 deletions(-)
>
> diff --git a/hw/eepro100.c b/hw/eepro100.c
> index 2099459..7c951c0 100644
> --- a/hw/eepro100.c
> +++ b/hw/eepro100.c
> @@ -771,6 +771,10 @@ static void eepro100_cu_command(EEPRO100State * s, uint8_t val)
>              /* Starting with offset 8, the command contains
>               * 64 dwords microcode which we just ignore here. */
>              break;
> +        case CmdDiagnose:
> +            logout("diagnose\n");
> +            status = 0; // make sure error flag is not set
>   

Please avoid introducing C99 comments.  Also keep the first sentence of 
the description concise and < 80 characters.

Regards,

Anthony Liguori

Patch hide | download patch | download mbox

diff --git a/hw/eepro100.c b/hw/eepro100.c
index 2099459..7c951c0 100644
--- a/hw/eepro100.c
+++ b/hw/eepro100.c
@@ -771,6 +771,10 @@  static void eepro100_cu_command(EEPRO100State * s, uint8_t val)
             /* Starting with offset 8, the command contains
              * 64 dwords microcode which we just ignore here. */
             break;
+        case CmdDiagnose:
+            logout("diagnose\n");
+            status = 0; // make sure error flag is not set
+            break;
         default:
             missing("undefined command");
         }
@@ -864,6 +868,9 @@  static void eepro100_ru_command(EEPRO100State * s, uint8_t val)
         }
         set_ru_state(s, ru_ready);
         break;
+    case RX_ABORT:
+        set_ru_state(s, ru_idle);
+        break;
     case RX_ADDR_LOAD:
         /* Load RU base. */
         logout("val=0x%02x (RU base address)\n", val);