[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH arm-devs v2 13/14] net/cadence_gem: Improve can_rece
From: |
Peter Crosthwaite |
Subject: |
[Qemu-devel] [PATCH arm-devs v2 13/14] net/cadence_gem: Improve can_receive debug printfery |
Date: |
Tue, 3 Dec 2013 22:01:28 -0800 |
Currently this just floods indicating that can_receive has been called
by the net framework. Instead, save the result of the most recent
can_receive callback as state and only print a message if the result
changes (indicating some sort of actual state change in GEM). Make said
debug message more meaningful as well.
Signed-off-by: Peter Crosthwaite <address@hidden>
---
changed since v1:
Fixed "cant" typo (PMM review)
hw/net/cadence_gem.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/hw/net/cadence_gem.c b/hw/net/cadence_gem.c
index f2c734e..f6e38ca 100644
--- a/hw/net/cadence_gem.c
+++ b/hw/net/cadence_gem.c
@@ -380,6 +380,8 @@ typedef struct GemState {
uint32_t rx_desc_addr;
uint32_t tx_desc_addr;
+ uint8_t can_rx_state; /* Debug only */
+
unsigned rx_desc[2];
bool sar_active[4];
@@ -452,13 +454,19 @@ static int gem_can_receive(NetClientState *nc)
s = qemu_get_nic_opaque(nc);
- DB_PRINT("\n");
-
/* Do nothing if receive is not enabled. */
if (!(s->regs[GEM_NWCTRL] & GEM_NWCTRL_RXENA)) {
+ if (s->can_rx_state != 1) {
+ s->can_rx_state = 1;
+ DB_PRINT("can't receive - no enable\n");
+ }
return 0;
}
+ if (s->can_rx_state != 0) {
+ s->can_rx_state = 0;
+ DB_PRINT("can receive 0x%x\n", s->rx_desc_addr);
+ }
return 1;
}
--
1.8.4.4
- [Qemu-devel] [PATCH arm-devs v2 00/14] Cadence GEM Bugfixes and missing features, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 01/14] net/cadence_gem: Implement mac level loopback mode, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 02/14] net/cadence_gem: Update DMA rx descriptors as we process them, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 03/14] net/cadence_gem: Don't assert against 0 buffer address, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 04/14] net/cadence_gem: simplify rx buf descriptor walking, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 06/14] net/cadence_gem: Implement RX descriptor match mode flags, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 07/14] net/cadence_gem: Implement SAR match bit in rx desc, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 08/14] net/cadence_gem: Implement SAR (de)activation, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 11/14] net/cadence_gem: Fix small packet FCS stripping, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 12/14] net/cadence_gem: Fix register w1c logic, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 13/14] net/cadence_gem: Improve can_receive debug printfery,
Peter Crosthwaite <=
- [Qemu-devel] [PATCH arm-devs v2 10/14] net/cadence_gem: Fix rx multi-fragment packets, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 09/14] net/cadence_gem: Add missing VMSTATE_END_OF_LIST, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 14/14] net/cadence_gem: Don't rx packets when no rx buffer available, Peter Crosthwaite, 2013/12/04
- [Qemu-devel] [PATCH arm-devs v2 05/14] net/cadence_gem: Prefetch rx descriptors ASAP, Peter Crosthwaite, 2013/12/04
- Re: [Qemu-devel] [PATCH arm-devs v2 00/14] Cadence GEM Bugfixes and missing features, Peter Maydell, 2013/12/06