public inbox for linux-omap@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox