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.
