Dear Sven Schnelle,
I am Soumyajyotii Ssarkar. I am working on developing the LASI's 82596 NIC
and the NCR710 SCSI controller device model for the PA-RISC machines in
QEMU under the guidance of Helge.
I have been debugging the 82596 NIC. So far, we have implemented most of
the functionality for the Linux Kernel side.

However, after some trials and tribulations, we got it working on the HPUX
10.20 side also.As of now, the transmit and receive functions are not
working on the HPUX 10.20 side.
I wanted to debug the issue where the HPUX 10.20 is getting stuck and what
is happening on the driver side. So far, I have been using GHIDRA to look
at the HPUX 10.20 lan drivers (liblan.a) however, the code from the GHIDRA
side is a bit obfuscated, and I can only understand certain things.
For example:

In the liblan.a (HPUX 10.20 kernel side drivers)
in lan2.o using ghidra:

we see the string "82596 failed to pass its self test"

When I try to backtrack and look at the references to the string I
don't find any references to the string when reverse engineering with
ghidra.
But when using the HPUX 10.20 if I do, lanadmin -> ->lan -> reset -> it
does printk the "82596 failed to pass its self test"
Similarly, their are strings like:
"82596 could not be configured with LPBK mode",
"82596 bug; EOF or Final bit in RFD not set; resetting the LAN driver"
with no references in any functions, from what I understand using ghidra.

Similarly for the Transmit and Receive  function we are although not seeing
any errors but the function itself is not working on HPUX, so I was looking
forward to understanding the HPUX 10.20 driver side more so we could
properly upgrade the Transmit and Receive function in our QEMU device model
to work with HPUX 10.20.

I would like to ask for your guidance on how I could better debug and
understand what is happening on the HPUX 10.20 kernel side.
And debug the HPUX kernel drivers better to get our 82596 working on the
HPUX 10.20.
I was going through your code for the Tulip in QEMU, which was working
perfectly on the HPUX 10.20 and would like to ask you:

   1. How did you debug the HPUX kernel side while developing the Tulip NIC?
   2. What does the HPUX kernel side expect? Is there any kind of pattern
   for obfuscation in the HPUX kernel for the NIC drivers?
   3. What could the HPUX 10.20 expect in the Kernel side for the Recieve
   and transmit function in general?
   4. Based on the above issues with transmit and receive not working, what
   could I do to move forward with debugging and fixing it?

Thank you,
Soumyajyotii Ssarkar.

Reply via email to