From patchwork Tue Apr 20 05:51:08 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [U-Boot] OpenRD: Bring PCIe endpoint out of reset From: Tanmay Upadhyay X-Patchwork-Id: 71771 Message-Id: <1271742668-2424-1-git-send-email-tanmay.upadhyay@einfochips.com> To: prafulla@marvell.com Cc: u-boot@lists.denx.de, Dhaval Vasa , Tanmay Upadhyay Date: Tue, 20 Apr 2010 11:21:08 +0530 There exists PCIe endpoints(not all) that remains in reset state till PERST# line (A11 on the PCIe connector) is hold low. They come out of reset only when this line is high. In case of OpenRD, this line was in tri-state. So, some of the PCIe devices would never appear on the PCIe bus. This patch makes PERST# line high while booting to bring such PCIe devices out of reset. XGI Vollari Z11 GPU and Intel WiFi 4965 are the ones who doesn't care about this line. Where as Broadcom's BCM970012 won't appear on the PCIe bus until PERST# is high. With this patch both kinds of device would appear on the PCIe bus. Signed-off-by: Tanmay Upadhyay Signed-off-by: Dhaval Vasa --- board/Marvell/openrd_base/openrd_base.h | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/board/Marvell/openrd_base/openrd_base.h b/board/Marvell/openrd_base/openrd_base.h index f3daf17..bf75fc6 100644 --- a/board/Marvell/openrd_base/openrd_base.h +++ b/board/Marvell/openrd_base/openrd_base.h @@ -30,10 +30,10 @@ #ifndef __OPENRD_BASE_H #define __OPENRD_BASE_H -#define OPENRD_OE_LOW (~(1<<28)) /* RS232 / RS485 */ -#define OPENRD_OE_HIGH (~(1<<2)) /* SD / UART1 */ -#define OPENRD_OE_VAL_LOW (0) /* Sel RS232 */ -#define OPENRD_OE_VAL_HIGH (1 << 2) /* Sel SD */ +#define OPENRD_OE_LOW (~((1<<28) | (1<<7))) /* RS232 / RS485, PCIe */ +#define OPENRD_OE_HIGH (~(1<<2)) /* SD / UART1 */ +#define OPENRD_OE_VAL_LOW (1<<7) /* Sel RS232, PCIe out of reset */ +#define OPENRD_OE_VAL_HIGH (1 << 2) /* Sel SD */ /* PHY related */ #define MV88E1116_LED_FCTRL_REG 10