[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 05/17] hw/sd/sdcard: Trace requested address computed by sd_re
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v3 05/17] hw/sd/sdcard: Trace requested address computed by sd_req_get_address() |
Date: |
Thu, 27 Jun 2024 18:22:20 +0200 |
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
hw/sd/sd.c | 9 +++++++--
hw/sd/trace-events | 1 +
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/hw/sd/sd.c b/hw/sd/sd.c
index 090a6fdcdb..464576751a 100644
--- a/hw/sd/sd.c
+++ b/hw/sd/sd.c
@@ -608,10 +608,15 @@ static void sd_response_r7_make(SDState *sd, uint8_t
*response)
static uint64_t sd_req_get_address(SDState *sd, SDRequest req)
{
+ uint64_t addr;
+
if (FIELD_EX32(sd->ocr, OCR, CARD_CAPACITY)) {
- return (uint64_t) req.arg << HWBLOCK_SHIFT;
+ addr = (uint64_t) req.arg << HWBLOCK_SHIFT;
+ } else {
+ addr = req.arg;
}
- return req.arg;
+ trace_sdcard_req_addr(req.arg, addr);
+ return addr;
}
static inline uint64_t sd_addr_to_wpnum(uint64_t addr)
diff --git a/hw/sd/trace-events b/hw/sd/trace-events
index 0eee98a646..43eaeba149 100644
--- a/hw/sd/trace-events
+++ b/hw/sd/trace-events
@@ -50,6 +50,7 @@ sdcard_ejected(void) ""
sdcard_erase(uint32_t first, uint32_t last) "addr first 0x%" PRIx32" last 0x%"
PRIx32
sdcard_lock(void) ""
sdcard_unlock(void) ""
+sdcard_req_addr(uint32_t req_arg, uint64_t addr) "req 0x%" PRIx32 " addr 0x%"
PRIx64
sdcard_read_block(uint64_t addr, uint32_t len) "addr 0x%" PRIx64 " size 0x%x"
sdcard_write_block(uint64_t addr, uint32_t len) "addr 0x%" PRIx64 " size 0x%x"
sdcard_write_data(const char *proto, const char *cmd_desc, uint8_t cmd,
uint32_t offset, uint8_t value) "%s %20s/ CMD%02d ofs %"PRIu32" value 0x%02x"
--
2.41.0
- [PATCH v3 00/17] hw/sd/sdcard: Accumulation of cleanups and fixes, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 01/17] hw/sd/sdcard: Deprecate support for spec v1.10, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 02/17] hw/sd/sdcard: Use spec v3.01 by default, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 04/17] hw/sd/sdcard: Trace block offset in READ/WRITE data accesses, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 03/17] hw/sd/sdcard: Track last command used to help logging, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 05/17] hw/sd/sdcard: Trace requested address computed by sd_req_get_address(),
Philippe Mathieu-Daudé <=
- [PATCH v3 06/17] hw/sd/sdcard: Do not store vendor data on block drive (CMD56), Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 07/17] hw/sd/sdcard: Send WRITE_PROT bits MSB first (CMD30), Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 08/17] hw/sd/sdcard: Send NUM_WR_BLOCKS bits MSB first (ACMD22), Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 09/17] hw/sd/sdcard: Use READY_FOR_DATA definition instead of magic value, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 10/17] hw/sd/sdcard: Assign SDCardStates enum values, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 11/17] hw/sd/sdcard: Simplify sd_inactive_state handling, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 12/17] hw/sd/sdcard: Restrict SWITCH_FUNCTION to sd_transfer_state (CMD6), Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 13/17] hw/sd/sdcard: Add direct reference to SDProto in SDState, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 14/17] hw/sd/sdcard: Extract sd_blk_len() helper, Philippe Mathieu-Daudé, 2024/06/27
- [PATCH v3 15/17] tests/qtest: Disable npcm7xx_sdhci tests using hardcoded RCA, Philippe Mathieu-Daudé, 2024/06/27