From: Anton Vorontsov <avorontsov@ru.mvista.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 7/7] mpc85xx: Configure QE USB for MPC8569E-MDS boards
Date: Thu, 15 Oct 2009 17:47:16 +0400 [thread overview]
Message-ID: <20091015134716.GG32478@oksana.dev.rtsoft.ru> (raw)
In-Reply-To: <20091015134644.GA31541@oksana.dev.rtsoft.ru>
Setup QE pin multiplexing for USB function, configure needed BCSRs
and add some fdt fixups.
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
---
board/freescale/mpc8569mds/bcsr.h | 4 +++
board/freescale/mpc8569mds/mpc8569mds.c | 32 +++++++++++++++++++++++++++++++
drivers/qe/fdt.c | 2 +
3 files changed, 38 insertions(+), 0 deletions(-)
diff --git a/board/freescale/mpc8569mds/bcsr.h b/board/freescale/mpc8569mds/bcsr.h
index 179a54c..091b69c 100644
--- a/board/freescale/mpc8569mds/bcsr.h
+++ b/board/freescale/mpc8569mds/bcsr.h
@@ -72,6 +72,10 @@
#define BCSR16_UPC1_DEV2 0x02
+#define BCSR17_nUSBEN 0x80
+#define BCSR17_nUSBLOWSPD 0x40
+#define BCSR17_USBVCC 0x20
+#define BCSR17_USBMODE 0x10
#define BCSR17_FLASH_nWP 0x01
/*BCSR Utils functions*/
diff --git a/board/freescale/mpc8569mds/mpc8569mds.c b/board/freescale/mpc8569mds/mpc8569mds.c
index ef99a75..cdd7813 100644
--- a/board/freescale/mpc8569mds/mpc8569mds.c
+++ b/board/freescale/mpc8569mds/mpc8569mds.c
@@ -160,6 +160,15 @@ const qe_iop_conf_t qe_iop_conf_tab[] = {
{0, 25, 1, 0, 1}, /* QEUART_RTS */
{1, 23, 2, 0, 1}, /* QEUART_CTS */
+ /* QE USB */
+ {5, 3, 1, 0, 1}, /* USB_OE */
+ {5, 4, 1, 0, 2}, /* USB_TP */
+ {5, 5, 1, 0, 2}, /* USB_TN */
+ {5, 6, 2, 0, 2}, /* USB_RP */
+ {5, 7, 2, 0, 1}, /* USB_RX */
+ {5, 8, 2, 0, 1}, /* USB_RN */
+ {2, 4, 2, 0, 2}, /* CLK5 */
+
/* SPI Flash, M25P40 */
{4, 27, 3, 0, 1}, /* SPI_MOSI */
{4, 28, 3, 0, 1}, /* SPI_MISO */
@@ -479,6 +488,28 @@ static void fdt_board_fixup_esdhc(void *blob, bd_t *bd)
static inline void fdt_board_fixup_esdhc(void *blob, bd_t *bd) {}
#endif
+static void fdt_board_fixup_qe_usb(void *blob, bd_t *bd)
+{
+ u8 *bcsr = (u8 *)CONFIG_SYS_BCSR_BASE;
+
+ if (hwconfig_subarg_cmp("qe_usb", "speed", "low"))
+ clrbits_8(&bcsr[17], BCSR17_nUSBLOWSPD);
+ else
+ setbits_8(&bcsr[17], BCSR17_nUSBLOWSPD);
+
+ if (hwconfig_subarg_cmp("qe_usb", "mode", "peripheral")) {
+ clrbits_8(&bcsr[17], BCSR17_USBVCC);
+ clrbits_8(&bcsr[17], BCSR17_USBMODE);
+ do_fixup_by_compat(blob, "fsl,mpc8569-qe-usb", "mode",
+ "peripheral", sizeof("peripheral"), 1);
+ } else {
+ setbits_8(&bcsr[17], BCSR17_USBVCC);
+ setbits_8(&bcsr[17], BCSR17_USBMODE);
+ }
+
+ clrbits_8(&bcsr[17], BCSR17_nUSBEN);
+}
+
#ifdef CONFIG_PCIE1
static struct pci_controller pcie1_hose;
#endif /* CONFIG_PCIE1 */
@@ -622,5 +653,6 @@ void ft_board_setup(void *blob, bd_t *bd)
#endif
fdt_board_fixup_esdhc(blob, bd);
fdt_board_fixup_qe_uart(blob, bd);
+ fdt_board_fixup_qe_usb(blob, bd);
}
#endif
diff --git a/drivers/qe/fdt.c b/drivers/qe/fdt.c
index 5307488..d7c7d13 100644
--- a/drivers/qe/fdt.c
+++ b/drivers/qe/fdt.c
@@ -85,6 +85,8 @@ void ft_qe_setup(void *blob)
"bus-frequency", gd->qe_clk, 1);
do_fixup_by_compat_u32(blob, "fsl,qe",
"brg-frequency", gd->brg_clk, 1);
+ do_fixup_by_compat_u32(blob, "fsl,qe-gtm",
+ "clock-frequency", gd->qe_clk / 2, 1);
fdt_fixup_qe_firmware(blob);
#endif
}
--
1.6.3.3
next prev parent reply other threads:[~2009-10-15 13:47 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-15 13:46 [U-Boot] [PATCH 0/7] Some patches for MPC8569E-MDS Anton Vorontsov
2009-10-15 13:47 ` [U-Boot] [PATCH 1/7] fdt_support: Add multi-serial support for stdout fixup Anton Vorontsov
2009-10-22 14:24 ` Kumar Gala
2009-10-22 14:47 ` Jerry Van Baren
2009-10-27 2:39 ` Kumar Gala
2009-10-15 13:47 ` [U-Boot] [PATCH 2/7] mpc85xx: Add eSDHC support for MPC8569E-MDS boards Anton Vorontsov
2009-10-27 14:37 ` Kumar Gala
2009-10-15 13:47 ` [U-Boot] [PATCH 3/7] mpc85xx: Add eLBC NAND " Anton Vorontsov
2009-10-27 15:10 ` Kumar Gala
2009-10-15 13:47 ` [U-Boot] [PATCH 4/7] mpc85xx: Setup SRIO memory region LAW " Anton Vorontsov
2009-10-27 15:10 ` Kumar Gala
2009-10-15 13:47 ` [U-Boot] [PATCH 5/7] mpc85xx: Setup QE pinmux for SPI Flash on " Anton Vorontsov
2009-10-27 15:10 ` Kumar Gala
2009-10-15 13:47 ` [U-Boot] [PATCH 6/7] mpc85xx: Configure QE UART for " Anton Vorontsov
2009-10-27 15:10 ` Kumar Gala
2009-10-15 13:47 ` Anton Vorontsov [this message]
2009-10-27 15:10 ` [U-Boot] [PATCH 7/7] mpc85xx: Configure QE USB " Kumar Gala
-- strict thread matches above, loose matches on Subject: below --
2009-08-19 18:37 Anton Vorontsov
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=20091015134716.GG32478@oksana.dev.rtsoft.ru \
--to=avorontsov@ru.mvista.com \
--cc=u-boot@lists.denx.de \
/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