linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Wolfgang Denk <wd@denx.de>
To: linuxppc-embedded@ozlabs.org
Subject: [PATCH] MPC5200 - Make PCI work in 2.6 with the IceCube 5200
Date: Mon, 10 Oct 2005 21:37:00 +0200	[thread overview]
Message-ID: <20051010193700.67266353ADC@atlas.denx.de> (raw)

Hello,

the following patch is against the current 2.6 kernel.org tree
(commit f96c3bbe91117402f13119ce9e609db9087ed58f):

As a prerequisite for a working system, the  following  two  poatches
are needed, too:

http://patchwork.ozlabs.org/linuxppc/patch?id=2018
http://patchwork.ozlabs.org/linuxppc/patch?id=2017

\f
!-------------------------------------------------------------flip-

[patch] making PCI work in the MPC5200
Patch by Alessandro Rubini, 08 Oct 2005

Make PCI work in 2.6 with the IceCube 5200.

Without the memory barriers all PCI config reads returned 0xffffffff
(actually, there may be more mb() than needed). Using wmb(); was not
enough to be able to read configuration registers.

Signed-off by Alessandro Rubini <rubini@gnudd.com>
Signed-off by Wolfgang Denk <wd@denx.de>

---
commit cdd7fdf10b3cbb7eb82cacc7ba5dba3553020f49
tree 97d045b44c87c00a4b3fe5bca57b479be87e68b6
parent 509b5c9fcbfe7fcae7d4f98946e4dc9794d68645
author Wolfgang Denk <wd@pollux.denx.de> Sat, 08 Oct 2005 22:41:53 +0200
committer Wolfgang Denk <wd@pollux.denx.de> Sat, 08 Oct 2005 22:41:53 +0200

 arch/ppc/syslib/mpc52xx_pci.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/ppc/syslib/mpc52xx_pci.c b/arch/ppc/syslib/mpc52xx_pci.c
--- a/arch/ppc/syslib/mpc52xx_pci.c
+++ b/arch/ppc/syslib/mpc52xx_pci.c
@@ -39,6 +39,7 @@ mpc52xx_pci_read_config(struct pci_bus *
 		((bus->number - hose->bus_offset) << 16) |
 		(devfn << 8) |
 		(offset & 0xfc));
+	mb();
 
 	value = in_le32(hose->cfg_data);
 
@@ -70,6 +71,7 @@ mpc52xx_pci_write_config(struct pci_bus 
 		((bus->number - hose->bus_offset) << 16) |
 		(devfn << 8) |
 		(offset & 0xfc));
+	mb();
 
 	if (len != 4) {
 		value = in_le32(hose->cfg_data);
@@ -80,9 +82,11 @@ mpc52xx_pci_write_config(struct pci_bus 
 
 		value &= ~mask;
 		val = value | ((val << offset) & mask);
+		mb();
 	}
 
 	out_le32(hose->cfg_data, val);
+	mb();
 
 	out_be32(hose->cfg_addr, 0);
 


\f
!-------------------------------------------------------------flip-



Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
Experience is what causes a person to make new  mistakes  instead  of
old ones.

             reply	other threads:[~2005-10-10 19:37 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-10 19:37 Wolfgang Denk [this message]
2005-10-11 23:22 ` [PATCH] MPC5200 - Make PCI work in 2.6 with the IceCube 5200 Sylvain Munaut

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=20051010193700.67266353ADC@atlas.denx.de \
    --to=wd@denx.de \
    --cc=linuxppc-embedded@ozlabs.org \
    /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).