From: Bjorn Helgaas <bjorn.helgaas@hp.com>
To: Matt Domsch <Matt_Domsch@dell.com>
Cc: linux-ia64@vger.kernel.org, ak@suse.de,
openipmi-developer@lists.sourceforge.net, akpm@osdl.org,
"Tolentino, Matthew E" <matthew.e.tolentino@intel.com>,
linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org
Subject: [PATCH 5/5] ACPI: clean up memory attribute checking for map/read/write
Date: Thu, 19 Jan 2006 13:14:31 -0700 [thread overview]
Message-ID: <200601191314.31705.bjorn.helgaas@hp.com> (raw)
In-Reply-To: <200601191310.57303.bjorn.helgaas@hp.com>
ia64 ioremap is now smart enough to use the correct memory attributes,
so remove the EFI checks from osl.c.
Depends on the previous ia64 ioremap patch.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Index: work-mm3/drivers/acpi/osl.c
===================================================================
--- work-mm3.orig/drivers/acpi/osl.c 2006-01-19 11:37:23.000000000 -0700
+++ work-mm3/drivers/acpi/osl.c 2006-01-19 11:38:05.000000000 -0700
@@ -180,22 +180,14 @@
acpi_os_map_memory(acpi_physical_address phys, acpi_size size,
void __iomem ** virt)
{
- if (efi_enabled) {
- if (EFI_MEMORY_WB & efi_mem_attributes(phys)) {
- *virt = (void __iomem *)phys_to_virt(phys);
- } else {
- *virt = ioremap(phys, size);
- }
- } else {
- if (phys > ULONG_MAX) {
- printk(KERN_ERR PREFIX "Cannot map memory that high\n");
- return AE_BAD_PARAMETER;
- }
- /*
- * ioremap checks to ensure this is in reserved space
- */
- *virt = ioremap((unsigned long)phys, size);
+ if (phys > ULONG_MAX) {
+ printk(KERN_ERR PREFIX "Cannot map memory that high\n");
+ return AE_BAD_PARAMETER;
}
+ /*
+ * ioremap checks to ensure this is in reserved space
+ */
+ *virt = ioremap((unsigned long)phys, size);
if (!*virt)
return AE_NO_MEMORY;
@@ -405,18 +397,8 @@
{
u32 dummy;
void __iomem *virt_addr;
- int iomem = 0;
- if (efi_enabled) {
- if (EFI_MEMORY_WB & efi_mem_attributes(phys_addr)) {
- /* HACK ALERT! We can use readb/w/l on real memory too.. */
- virt_addr = (void __iomem *)phys_to_virt(phys_addr);
- } else {
- iomem = 1;
- virt_addr = ioremap(phys_addr, width);
- }
- } else
- virt_addr = (void __iomem *)phys_to_virt(phys_addr);
+ virt_addr = ioremap(phys_addr, width);
if (!value)
value = &dummy;
@@ -434,10 +416,7 @@
BUG();
}
- if (efi_enabled) {
- if (iomem)
- iounmap(virt_addr);
- }
+ iounmap(virt_addr);
return AE_OK;
}
@@ -446,18 +425,8 @@
acpi_os_write_memory(acpi_physical_address phys_addr, u32 value, u32 width)
{
void __iomem *virt_addr;
- int iomem = 0;
- if (efi_enabled) {
- if (EFI_MEMORY_WB & efi_mem_attributes(phys_addr)) {
- /* HACK ALERT! We can use writeb/w/l on real memory too */
- virt_addr = (void __iomem *)phys_to_virt(phys_addr);
- } else {
- iomem = 1;
- virt_addr = ioremap(phys_addr, width);
- }
- } else
- virt_addr = (void __iomem *)phys_to_virt(phys_addr);
+ virt_addr = ioremap(phys_addr, width);
switch (width) {
case 8:
@@ -473,8 +442,7 @@
BUG();
}
- if (iomem)
- iounmap(virt_addr);
+ iounmap(virt_addr);
return AE_OK;
}
next prev parent reply other threads:[~2006-01-19 20:14 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-01-04 22:16 [PATCH 2.6.15 1/2] ia64: use i386 dmi_scan.c Matt Domsch
2006-01-04 22:36 ` Alex Williamson
2006-01-04 23:29 ` Matt Domsch
2006-01-05 16:41 ` Bjorn Helgaas
2006-01-05 17:37 ` Matt Domsch
2006-01-05 17:54 ` Bjorn Helgaas
2006-01-06 0:02 ` Bjorn Helgaas
2006-01-06 17:15 ` Matt Domsch
2006-01-04 22:55 ` Alan Cox
2006-01-06 17:21 ` [PATCH 2.6.15] " Matt Domsch
2006-01-06 22:39 ` Matt Domsch
2006-01-14 0:24 ` Bjorn Helgaas
2006-01-14 0:45 ` Alan Cox
2006-01-14 1:19 ` Andi Kleen
2006-01-14 5:05 ` Bjorn Helgaas
2006-01-18 0:17 ` Bjorn Helgaas
2006-01-18 2:32 ` Andi Kleen
2006-01-18 15:53 ` Bjorn Helgaas
2006-01-18 17:29 ` Bjorn Helgaas
2006-01-18 18:11 ` [Openipmi-developer] " Matt Domsch
2006-01-19 20:10 ` [PATCH 0/5] ia64 ioremap, DMI, EFI system table Bjorn Helgaas
2006-01-19 20:12 ` [PATCH 1/5] EFI, /dev/mem: simplify efi_mem_attribute_range() Bjorn Helgaas
2006-01-19 20:12 ` [PATCH 2/5] ia64: ioremap: check EFI for valid memory attributes Bjorn Helgaas
2006-01-19 20:13 ` [PATCH 3/5] DMI: only ioremap stuff we actually need Bjorn Helgaas
2006-01-19 20:13 ` [PATCH 4/5] EFI: keep physical table addresses in efi structure Bjorn Helgaas
2006-01-19 20:14 ` Bjorn Helgaas [this message]
2006-01-30 17:11 ` [Openipmi-developer] [PATCH 0/5] ia64 ioremap, DMI, EFI system table Matt Domsch
2006-03-17 23:54 ` [PATCH 2.6.15] ia64: use i386 dmi_scan.c Andrew Morton
2006-03-18 14:56 ` Matt Domsch
2006-03-18 15:43 ` Matt Domsch
2006-03-18 19:51 ` Andrew Morton
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=200601191314.31705.bjorn.helgaas@hp.com \
--to=bjorn.helgaas@hp.com \
--cc=Matt_Domsch@dell.com \
--cc=ak@suse.de \
--cc=akpm@osdl.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=matthew.e.tolentino@intel.com \
--cc=openipmi-developer@lists.sourceforge.net \
/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;
as well as URLs for NNTP newsgroup(s).