All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eduardo Valentin <edubezval@gmail.com>
To: Linux OMAP <linux-omap-open-source@linux.omap.com>
Cc: Eduardo Valentin <eduardo.valentin@indt.org.br>
Subject: [PATCH 2/2] [OMAP MMU FWK] Improve debug messages and removed DSP references from MMU FW code
Date: Thu, 13 Sep 2007 15:21:19 -0400	[thread overview]
Message-ID: <11897112793147-git-send-email-edubezval@gmail.com> (raw)
In-Reply-To: <11897112792849-git-send-email-edubezval@gmail.com>

From: Eduardo Valentin <eduardo.valentin@indt.org.br>

 As the code is expected to work with another mmu other than DSP mmu; "DSP"
string was removed from the code in the following situations:

- Debug messages
- Local variables name
- Comments

 Another improvement is done for debug messages. The MMU name is printed
in debug messages.

Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
---
 arch/arm/mach-omap1/mmu.c |    8 ++--
 arch/arm/mach-omap2/mmu.c |    8 ++--
 arch/arm/plat-omap/mmu.c  |  116 +++++++++++++++++++++++----------------------
 3 files changed, 68 insertions(+), 64 deletions(-)

diff --git a/arch/arm/mach-omap1/mmu.c b/arch/arm/mach-omap1/mmu.c
index baa8c16..f1b682a 100644
--- a/arch/arm/mach-omap1/mmu.c
+++ b/arch/arm/mach-omap1/mmu.c
@@ -201,8 +201,8 @@ static int omap1_mmu_startup(struct omap_mmu *mmu)
 {
 	dspvect_page = (void *)__get_dma_pages(GFP_KERNEL, 0);
 	if (dspvect_page == NULL) {
-		dev_err(&mmu->dev, "MMU: failed to allocate memory "
-			"for dsp vector table\n");
+		dev_err(&mmu->dev, "MMU %s: failed to allocate memory "
+			"for vector table\n", mmu->name);
 		return -ENOMEM;
 	}
 
@@ -243,8 +243,8 @@ omap1_mmu_cam_ram_alloc(struct omap_mmu *mmu, struct omap_mmu_tlb_entry *entry)
 	struct cam_ram_regset *cr;
 
 	if (entry->va & ~(get_cam_va_mask(entry->pgsz))) {
-		dev_err(&mmu->dev, "MMU: mapping vadr (0x%06lx) is not on an "
-			"aligned boundary\n", entry->va);
+		dev_err(&mmu->dev, "MMU %s: mapping vadr (0x%06lx) is not on"
+			" an aligned boundary\n", mmu->name, entry->va);
 		return ERR_PTR(-EINVAL);
 	}
 
diff --git a/arch/arm/mach-omap2/mmu.c b/arch/arm/mach-omap2/mmu.c
index a4e7eb5..08fbe6b 100644
--- a/arch/arm/mach-omap2/mmu.c
+++ b/arch/arm/mach-omap2/mmu.c
@@ -153,8 +153,8 @@ static int omap2_mmu_startup(struct omap_mmu *mmu)
 
 	dspvect_page = (void *)__get_dma_pages(GFP_KERNEL, 0);
 	if (dspvect_page == NULL) {
-		dev_err(&mmu->dev, "MMU: failed to allocate memory "
-			"for dsp vector table\n");
+		dev_err(&mmu->dev, "MMU %s: failed to allocate memory "
+			"for vector table\n", mmu->name);
 		return -ENOMEM;
 	}
 
@@ -266,8 +266,8 @@ omap2_mmu_cam_ram_alloc(struct omap_mmu *mmu, struct omap_mmu_tlb_entry *entry)
 	struct cam_ram_regset *cr;
 
 	if (entry->va & ~(get_cam_va_mask(entry->pgsz))) {
-		dev_err(&mmu->dev, "MMU: mapping vadr (0x%06lx) is not on an "
-			"aligned boundary\n", entry->va);
+		dev_err(&mmu->dev, "MMU %s: mapping vadr (0x%06lx) is not on"
+			" an aligned boundary\n", mmu->name, entry->va);
 		return ERR_PTR(-EINVAL);
 	}
 
diff --git a/arch/arm/plat-omap/mmu.c b/arch/arm/plat-omap/mmu.c
index a1487ea..890a9c8 100644
--- a/arch/arm/plat-omap/mmu.c
+++ b/arch/arm/plat-omap/mmu.c
@@ -116,15 +116,16 @@ int omap_mmu_kmem_reserve(struct omap_mmu *mmu, unsigned long size)
 	/* alignment check */
 	if (!is_aligned(size, SZ_64K)) {
 		dev_err(&mmu->dev,
-			"omapdsp: size(0x%lx) is not multiple of 64KB.\n",
-			size);
+			"MMU %s: size(0x%lx) is not multiple of 64KB.\n",
+			mmu->name, size);
 		return -EINVAL;
 	}
 
 	if (size > (1 << mmu->addrspace)) {
 		dev_err(&mmu->dev,
-			"omapdsp: size(0x%lx) is larger than DSP memory space "
-			"size (0x%x.\n", size, (1 << mmu->addrspace));
+			"MMU %s: size(0x%lx) is larger than external device "
+			" memory space size (0x%x.\n", mmu->name, size,
+			(1 << mmu->addrspace));
 		return -EINVAL;
 	}
 
@@ -208,8 +209,8 @@ int exmap_set_armmmu(struct omap_mmu *mmu, unsigned long virt,
 	int prot_pmd, prot_pte;
 
 	dev_dbg(&mmu->dev,
-		"MMU: mapping in ARM MMU, v=0x%08lx, p=0x%08lx, sz=0x%lx\n",
-		virt, phys, size);
+		"MMU %s: mapping in ARM MMU, v=0x%08lx, p=0x%08lx, sz=0x%lx\n",
+		mmu->name, virt, phys, size);
 
 	prot_pmd = PMD_TYPE_TABLE | PMD_DOMAIN(DOMAIN_IO);
 	prot_pte = L_PTE_PRESENT | L_PTE_YOUNG | L_PTE_DIRTY | L_PTE_WRITE;
@@ -245,8 +246,8 @@ void exmap_clear_armmmu(struct omap_mmu *mmu, unsigned long virt,
 	pte_t *ptep;
 
 	dev_dbg(&mmu->dev,
-		"MMU: unmapping in ARM MMU, v=0x%08lx, sz=0x%lx\n",
-		virt, size);
+		"MMU %s: unmapping in ARM MMU, v=0x%08lx, sz=0x%lx\n",
+		mmu->name, virt, size);
 
 	for (sz_left = size;
 	     sz_left >= PAGE_SIZE;
@@ -604,7 +605,7 @@ int omap_mmu_load_tlb_entry(struct omap_mmu *mmu,
 found_victim:
 	/* The last entry cannot be locked? */
 	if (lock.victim == (mmu->nr_tlb_entries - 1)) {
-		dev_err(&mmu->dev, "MMU: TLB is full.\n");
+		dev_err(&mmu->dev, "MMU %s: TLB is full.\n", mmu->name);
 		return -EBUSY;
 	}
 
@@ -712,13 +713,13 @@ EXPORT_SYMBOL_GPL(omap_mmu_clear_pte_entry);
  * omap_mmu_exmap()
  *
  * MEM_IOCTL_EXMAP ioctl calls this function with padr=0.
- * In this case, the buffer for DSP is allocated in this routine,
+ * In this case, the buffer for external device is allocated in this routine,
  * then it is mapped.
  * On the other hand, for example - frame buffer sharing, calls
  * this function with padr set. It means some known address space
- * pointed with padr is going to be shared with DSP.
+ * pointed with padr is going to be shared with external device.
  */
-int omap_mmu_exmap(struct omap_mmu *mmu, unsigned long dspadr,
+int omap_mmu_exmap(struct omap_mmu *mmu, unsigned long devadr,
 		   unsigned long padr, unsigned long size,
 		   enum exmap_type type)
 {
@@ -727,9 +728,9 @@ int omap_mmu_exmap(struct omap_mmu *mmu, unsigned long dspadr,
 	unsigned int order = 0;
 	unsigned long unit;
 	int prev = -1;
-	unsigned long _dspadr = dspadr;
+	unsigned long _devadr = devadr;
 	unsigned long _padr = padr;
-	void *_vadr = omap_mmu_to_virt(mmu, dspadr);
+	void *_vadr = omap_mmu_to_virt(mmu, devadr);
 	unsigned long _size = size;
 	struct omap_mmu_tlb_entry tlb_ent;
 	struct exmap_tbl *exmap_ent, *tmp_ent;
@@ -742,27 +743,29 @@ int omap_mmu_exmap(struct omap_mmu *mmu, unsigned long dspadr,
 	 */
 	if (!is_aligned(size, MINIMUM_PAGESZ)) {
 		dev_err(&mmu->dev,
-			"MMU: size(0x%lx) is not multiple of 4KB.\n", size);
+			"MMU %s: size(0x%lx) is not multiple of 4KB.\n",
+			mmu->name, size);
 		return -EINVAL;
 	}
-	if (!is_aligned(dspadr, MINIMUM_PAGESZ)) {
+	if (!is_aligned(devadr, MINIMUM_PAGESZ)) {
 		dev_err(&mmu->dev,
-			"MMU: DSP address(0x%lx) is not aligned.\n", dspadr);
+			"MMU %s: external device address(0x%lx) is not"
+			" aligned.\n", mmu->name, devadr);
 		return -EINVAL;
 	}
 	if (!is_aligned(padr, MINIMUM_PAGESZ)) {
 		dev_err(&mmu->dev,
-			"MMU: physical address(0x%lx) is not aligned.\n",
-		       padr);
+			"MMU %s: physical address(0x%lx) is not aligned.\n",
+			mmu->name, padr);
 		return -EINVAL;
 	}
 
 	/* address validity check */
-	if ((dspadr < mmu->memsize) ||
-	    (dspadr >= (1 << mmu->addrspace))) {
+	if ((devadr < mmu->memsize) ||
+	    (devadr >= (1 << mmu->addrspace))) {
 		dev_err(&mmu->dev,
-			"MMU: illegal address/size for %s().\n",
-		       __FUNCTION__);
+			"MMU %s: illegal address/size for %s().\n",
+			mmu->name, __FUNCTION__);
 		return -EINVAL;
 	}
 
@@ -777,7 +780,8 @@ int omap_mmu_exmap(struct omap_mmu *mmu, unsigned long dspadr,
 		mapsize = 1 << (tmp_ent->order + PAGE_SHIFT);
 		if ((_vadr + size > tmp_ent->vadr) &&
 		    (_vadr < tmp_ent->vadr + mapsize)) {
-			dev_err(&mmu->dev, "MMU: exmap page overlap!\n");
+			dev_err(&mmu->dev, "MMU %s: exmap page overlap!\n",
+				mmu->name);
 			up_write(&mmu->exmap_sem);
 			return -EINVAL;
 		}
@@ -790,7 +794,7 @@ start:
 		if (!mmu->exmap_tbl[idx].valid)
 			goto found_free;
 
-	dev_err(&mmu->dev, "MMU: DSP TLB is full.\n");
+	dev_err(&mmu->dev, "MMU %s: TLB is full.\n", mmu->name);
 	status = -EBUSY;
 	goto fail;
 
@@ -799,12 +803,12 @@ found_free:
 
 	if ((_size >= SZ_1M) &&
 	    (is_aligned(_padr, SZ_1M) || (padr == 0)) &&
-	    is_aligned(_dspadr, SZ_1M)) {
+	    is_aligned(_devadr, SZ_1M)) {
 		unit = SZ_1M;
 		pgsz = OMAP_MMU_CAM_PAGESIZE_1MB;
 	} else if ((_size >= SZ_64K) &&
 		   (is_aligned(_padr, SZ_64K) || (padr == 0)) &&
-		   is_aligned(_dspadr, SZ_64K)) {
+		   is_aligned(_devadr, SZ_64K)) {
 		unit = SZ_64K;
 		pgsz = OMAP_MMU_CAM_PAGESIZE_64KB;
 	} else {
@@ -849,8 +853,8 @@ found_free:
 	if (status < 0)
 		goto fail;
 
-	/* loading DSP PTE entry */
-	INIT_TLB_ENTRY(&tlb_ent, _dspadr, _padr, pgsz);
+	/* loading external device PTE entry */
+	INIT_TLB_ENTRY(&tlb_ent, _devadr, _padr, pgsz);
 	status = omap_mmu_load_pte_entry(mmu, &tlb_ent);
 	if (status < 0) {
 		exmap_clear_armmmu(mmu, (unsigned long)_vadr, unit);
@@ -867,7 +871,7 @@ found_free:
 		return size;
 	}
 
-	_dspadr += unit;
+	_devadr += unit;
 	_vadr   += unit;
 	_padr = padr ? _padr + unit : 0;
 	prev = idx;
@@ -877,7 +881,7 @@ fail:
 	up_write(&mmu->exmap_sem);
 	if (buf)
 		omap_mmu_free_pages((unsigned long)buf, order);
-	omap_mmu_exunmap(mmu, dspadr);
+	omap_mmu_exunmap(mmu, devadr);
 	return status;
 }
 EXPORT_SYMBOL_GPL(omap_mmu_exmap);
@@ -894,15 +898,15 @@ static unsigned long unmap_free_arm(struct omap_mmu *mmu,
 	/* freeing allocated memory */
 	if (ent->type == EXMAP_TYPE_MEM) {
 		omap_mmu_free_pages((unsigned long)ent->buf, ent->order);
-		dev_dbg(&mmu->dev, "MMU: freeing 0x%lx bytes @ adr 0x%8p\n",
-			size, ent->buf);
+		dev_dbg(&mmu->dev, "MMU %s: freeing 0x%lx bytes @ adr 0x%8p\n",
+			mmu->name, size, ent->buf);
 	}
 
 	ent->valid = 0;
 	return size;
 }
 
-int omap_mmu_exunmap(struct omap_mmu *mmu, unsigned long dspadr)
+int omap_mmu_exunmap(struct omap_mmu *mmu, unsigned long devadr)
 {
 	void *vadr;
 	unsigned long size;
@@ -910,7 +914,7 @@ int omap_mmu_exunmap(struct omap_mmu *mmu, unsigned long dspadr)
 	struct exmap_tbl *ent;
 	int idx;
 
-	vadr = omap_mmu_to_virt(mmu, dspadr);
+	vadr = omap_mmu_to_virt(mmu, devadr);
 	down_write(&mmu->exmap_sem);
 	for (idx = 0; idx < mmu->nr_tlb_entries; idx++) {
 		ent = mmu->exmap_tbl + idx;
@@ -920,20 +924,20 @@ int omap_mmu_exunmap(struct omap_mmu *mmu, unsigned long dspadr)
 			goto found_map;
 	}
 	up_write(&mmu->exmap_sem);
-	dev_warn(&mmu->dev, "MMU: address %06lx not found in exmap_tbl.\n",
-		 dspadr);
+	dev_warn(&mmu->dev, "MMU %s: address %06lx not found in exmap_tbl.\n",
+		 mmu->name, devadr);
 	return -EINVAL;
 
 found_map:
 	if (ent->usecount > 0) {
-		dev_err(&mmu->dev, "MMU: exmap reference count is not 0.\n"
+		dev_err(&mmu->dev, "MMU %s: exmap reference count is not 0.\n"
 			"   idx=%d, vadr=%p, order=%d, usecount=%d\n",
-			idx, ent->vadr, ent->order, ent->usecount);
+			mmu->name, idx, ent->vadr, ent->order, ent->usecount);
 		up_write(&mmu->exmap_sem);
 		return -EINVAL;
 	}
-	/* clearing DSP PTE entry */
-	omap_mmu_clear_pte_entry(mmu, dspadr);
+	/* clearing external device PTE entry */
+	omap_mmu_clear_pte_entry(mmu, devadr);
 
 	/* clear ARM MMU and free buffer */
 	size = unmap_free_arm(mmu, ent);
@@ -949,14 +953,14 @@ found_map:
 	if (idx < 0)
 		goto up_out;	/* normal completion */
 	ent = mmu->exmap_tbl + idx;
-	dspadr += size;
+	devadr += size;
 	vadr   += size;
 	if (ent->vadr == vadr)
 		goto found_map;	/* continue */
 
-	dev_err(&mmu->dev, "MMU: illegal exmap_tbl grouping!\n"
+	dev_err(&mmu->dev, "MMU %s: illegal exmap_tbl grouping!\n"
 		"expected vadr = %p, exmap_tbl[%d].vadr = %p\n",
-		vadr, idx, ent->vadr);
+		mmu->name, vadr, idx, ent->vadr);
 	up_write(&mmu->exmap_sem);
 	return -EINVAL;
 
@@ -989,24 +993,24 @@ void omap_mmu_exmap_flush(struct omap_mmu *mmu)
 EXPORT_SYMBOL_GPL(omap_mmu_exmap_flush);
 
 void exmap_setup_preserved_mem_page(struct omap_mmu *mmu, void *buf,
-				    unsigned long dspadr, int index)
+				    unsigned long devadr, int index)
 {
 	unsigned long phys;
 	void *virt;
 	struct omap_mmu_tlb_entry tlb_ent;
 
 	phys = __pa(buf);
-	virt = omap_mmu_to_virt(mmu, dspadr);
+	virt = omap_mmu_to_virt(mmu, devadr);
 	exmap_set_armmmu(mmu, (unsigned long)virt, phys, PAGE_SIZE);
 	INIT_EXMAP_TBL_ENTRY_4KB_PRESERVED(mmu->exmap_tbl + index, buf, virt);
-	INIT_TLB_ENTRY_4KB_PRESERVED(&tlb_ent, dspadr, phys);
+	INIT_TLB_ENTRY_4KB_PRESERVED(&tlb_ent, devadr, phys);
 	omap_mmu_load_pte_entry(mmu, &tlb_ent);
 }
 EXPORT_SYMBOL_GPL(exmap_setup_preserved_mem_page);
 
-void exmap_clear_mem_page(struct omap_mmu *mmu, unsigned long dspadr)
+void exmap_clear_mem_page(struct omap_mmu *mmu, unsigned long devadr)
 {
-	void *virt = omap_mmu_to_virt(mmu, dspadr);
+	void *virt = omap_mmu_to_virt(mmu, devadr);
 
 	exmap_clear_armmmu(mmu, (unsigned long)virt, PAGE_SIZE);
 	/* DSP MMU is shutting down. not handled here. */
@@ -1074,8 +1078,8 @@ static int omap_mmu_init(struct omap_mmu *mmu)
 	ret = request_irq(mmu->irq, omap_mmu_interrupt, IRQF_DISABLED,
 			  mmu->name,  mmu);
 	if (ret < 0) {
-		dev_err(&mmu->dev, "failed to register MMU interrupt: %d\n",
-			ret);
+		dev_err(&mmu->dev, "MMU %s: failed to register MMU interrupt:"
+			" %d\n", mmu->name, ret);
 		goto fail;
 	}
 
@@ -1165,8 +1169,8 @@ static ssize_t exmem_read(struct omap_mmu *mmu, char *buf, size_t count,
 	void *vadr = omap_mmu_to_virt(mmu, p);
 
 	if (!exmap_valid(mmu, vadr, count)) {
-		dev_err(&mmu->dev, "MMU: DSP address %08lx / size %08x "
-			"is not valid!\n", p, count);
+		dev_err(&mmu->dev, "MMU %s: external device address %08lx / "
+			"size %08x is not valid!\n", mmu->name, p, count);
 		return -EFAULT;
 	}
 	if (count > (1 << mmu->addrspace) - p)
@@ -1232,8 +1236,8 @@ static ssize_t exmem_write(struct omap_mmu *mmu, char *buf, size_t count,
 	void *vadr = omap_mmu_to_virt(mmu, p);
 
 	if (!exmap_valid(mmu, vadr, count)) {
-		dev_err(&mmu->dev, "MMU: DSP address %08lx / size %08x "
-			"is not valid!\n", p, count);
+		dev_err(&mmu->dev, "MMU %s: external device address %08lx "
+			"/ size %08x is not valid!\n", mmu->name, p, count);
 		return -EFAULT;
 	}
 	if (count > (1 << mmu->addrspace) - p)
@@ -1337,7 +1341,7 @@ static ssize_t exmap_show(struct device *dev, struct device_attribute *attr,
 	int i = 0;
 
 	down_read(&mmu->exmap_sem);
-	len = sprintf(buf, "  dspadr     size         buf     size uc\n");
+	len = sprintf(buf, "  devadr     size         buf     size uc\n");
 			 /* 0x300000 0x123000  0xc0171000 0x100000  0*/
 
 	omap_mmu_for_each_tlb_entry(mmu, ent) {
-- 
1.5.3.rc6.17.g1911

  reply	other threads:[~2007-09-13 19:21 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <11897112792637-git-send-email-edubezval@gmail.com>
2007-09-13 19:21 ` [PATCH 1/2] [OMAP MMU FWK] Translate printk to dev_* and break lines with more than 80 char Eduardo Valentin
2007-09-13 19:21   ` Eduardo Valentin [this message]
2007-09-14 16:38   ` Dirk Behme
2007-09-14 17:18     ` Eduardo Valentin
2007-09-17 18:07       ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=11897112793147-git-send-email-edubezval@gmail.com \
    --to=edubezval@gmail.com \
    --cc=eduardo.valentin@indt.org.br \
    --cc=linux-omap-open-source@linux.omap.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.