public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Sergiu Moga <sergiu.moga@microchip.com>
To: <eugen.hristev@microchip.com>, <durai.manickamkr@microchip.com>,
	<sandeep.sheriker@microchip.com>, <greg@embeddedgreg.com>,
	<nicolas.ferre@microchip.com>, <ludovic.desroches@microchip.com>,
	<lukma@denx.de>, <seanga2@gmail.com>, <marex@denx.de>,
	<sergiu.moga@microchip.com>, <michael@walle.cc>, <hs@denx.de>,
	<claudiu.beznea@microchip.com>,
	<balamanikandan.gunasundar@microchip.com>,
	<michael@amarulasolutions.com>,
	<dario.binacchi@amarulasolutions.com>,
	<cristian.birsan@microchip.com>, <peng.fan@nxp.com>,
	<mihai.sain@microchip.com>, <weijie.gao@mediatek.com>,
	<sumit.garg@linaro.org>, <jim.t90615@gmail.com>,
	<michal.simek@amd.com>, <sjg@chromium.org>, <j-keerthy@ti.com>,
	<ashok.reddy.soma@xilinx.com>
Cc: <u-boot@lists.denx.de>
Subject: [PATCH v4 00/19] Add USB on SAM9X60, SAMA7G5 and SAMA5D2 boards
Date: Mon, 19 Dec 2022 10:46:08 +0200	[thread overview]
Message-ID: <20221219084626.34606-1-sergiu.moga@microchip.com> (raw)

This series of patches is meant to add support for USB Mass Storage
on SAM9X60, SAMA7G5 and SAMA5D2 boards and register ohci-at91 driver into
Driver Model. In order for this to be achieved, the respective
DT nodes have been added, the USB clock has been registered into CCF
and the required defconfigs have been added to the boards' defconfig.
What is more, in order for the VBUS to stay enabled, a `child_pre_probe`
method has been added to overcome the DM core disabling it in
`usb_scan_device`: when the generic `device_probe` method is called,
the pinctrl is processed once again, undoing whatever changes have
been made in our driver's probe method.
In order to enable USB on SAMA7G5 the addition of RSTC and USB 2.0 PHY
drivers were required.



v1 -> v2:
- Additional patch included:
[PATCH v2 04/19] clk: at91: pmc: export clock setup to pmc
- Updated
[PATCH v2 05/19] clk: at91: sam9x60: Add initial setup of UPLL and USBCK rates
in concordance with the previously mentioned additional patch
- Move ` #include <asm/arch/clk.h>` below `#if !(CONFIG_IS_ENABLED(DM_USB))` to
avoid implicit declarations warnings/errors in the OHCI driver


v2 ->  v3:
- Also add USB pinctrl nodes and USB Mass Storage for SAM9X60 Curiosity and
remove no longer necessary ifdef in sam9x60 clk driver
- Remove no longer required CONFIG_SYS_USB_* configs from the defconfigs
and add CONFIG_RESET_AT91 to all defconfigs



v3 -> v4:
- Remove unnecessary NULL assignment `sama7_phy->sfr = NULL;` in sama7 usb phy
probe method


Claudiu Beznea (1):
  clk: at91: pmc: export clock setup to pmc

Cristian Birsan (2):
  ARM: at91: add sama7 SFR definitions
  usb: ohci-at91: Add `ohci_t` field in `ohci_at91_priv`

Sergiu Moga (16):
  ARM: dts: sam9x60: Add OHCI and EHCI DT nodes
  clk: at91: Add support for sam9x60 USB clock
  clk: at91: sam9x60: Register the required clocks for USB
  clk: at91: sam9x60: Add initial setup of UPLL and USBCK rates
  usb: ohci-at91: Enable OHCI functionality and register into DM
  dt-bindings: reset: add sama7g5 definitions
  dt-bindings: clk: at91: Define additional UTMI related clocks
  ARM: dts: at91: sama7: Add USB related DT nodes
  reset: at91: Add reset driver for basic assert/deassert operations
  phy: at91: Add support for the USB 2.0 PHY's of SAMA7
  usb: ohci-at91: Add USB PHY functionality
  ARM: dts: at91: sama5d2_icp: Add pinctrl nodes for USB related DT
    nodes
  ARM: dts: at91: sama5d27_wlsom1_ek: Add pinctrl nodes for USB DT nodes
  configs: at91: sam9x60ek: Add required configs for the USB command
  configs: at91: sama5d2: Enable OHCI/EHCI related configs
  configs: at91: sama7: Enable USB and RESET functionality

 arch/arm/dts/at91-sam9x60_curiosity.dts       |  21 ++
 arch/arm/dts/at91-sama5d27_wlsom1_ek.dts      |  25 ++
 arch/arm/dts/at91-sama5d2_icp.dts             |  22 ++
 arch/arm/dts/at91-sama7g5ek.dts               |  34 +++
 arch/arm/dts/sam9x60.dtsi                     |  18 ++
 arch/arm/dts/sam9x60ek.dts                    |  21 ++
 arch/arm/dts/sama7g5.dtsi                     |  73 ++++++
 arch/arm/mach-at91/include/mach/sama7-sfr.h   |  59 +++++
 configs/sam9x60_curiosity_mmc_defconfig       |   8 +
 configs/sam9x60ek_mmc_defconfig               |   9 +
 configs/sam9x60ek_nandflash_defconfig         |   9 +
 configs/sam9x60ek_qspiflash_defconfig         |   9 +
 configs/sama5d27_giantboard_defconfig         |   4 +
 configs/sama5d27_som1_ek_mmc1_defconfig       |   4 +
 configs/sama5d27_som1_ek_mmc_defconfig        |   4 +
 configs/sama5d27_som1_ek_qspiflash_defconfig  |   4 +
 configs/sama5d27_wlsom1_ek_mmc_defconfig      |   5 +
 .../sama5d27_wlsom1_ek_qspiflash_defconfig    |   4 +
 configs/sama5d2_icp_mmc_defconfig             |   8 +
 configs/sama5d2_icp_qspiflash_defconfig       |   4 +
 configs/sama5d2_ptc_ek_mmc_defconfig          |   4 +
 configs/sama5d2_ptc_ek_nandflash_defconfig    |   4 +
 configs/sama5d2_xplained_emmc_defconfig       |   4 +
 configs/sama5d2_xplained_mmc_defconfig        |   4 +
 configs/sama5d2_xplained_qspiflash_defconfig  |   4 +
 configs/sama5d2_xplained_spiflash_defconfig   |   4 +
 configs/sama7g5ek_mmc1_defconfig              |  10 +
 configs/sama7g5ek_mmc_defconfig               |  10 +
 drivers/clk/at91/Kconfig                      |   7 +
 drivers/clk/at91/Makefile                     |   1 +
 drivers/clk/at91/clk-sam9x60-usb.c            | 156 +++++++++++++
 drivers/clk/at91/pmc.c                        |  42 ++++
 drivers/clk/at91/pmc.h                        |  27 +++
 drivers/clk/at91/sam9x60.c                    |  63 +++++
 drivers/clk/at91/sama7g5.c                    |  48 +---
 drivers/phy/Kconfig                           |  10 +
 drivers/phy/Makefile                          |   1 +
 drivers/phy/phy-sama7-usb.c                   |  90 ++++++++
 drivers/phy/phy-sama7-utmi-clk.c              | 202 ++++++++++++++++
 drivers/reset/Kconfig                         |   8 +
 drivers/reset/Makefile                        |   1 +
 drivers/reset/reset-at91.c                    | 141 ++++++++++++
 drivers/sysreset/sysreset_at91.c              |  10 +-
 drivers/usb/host/ohci-at91.c                  | 215 ++++++++++++++++++
 include/dt-bindings/clk/at91.h                |   5 +
 include/dt-bindings/reset/sama7g5-reset.h     |  10 +
 46 files changed, 1375 insertions(+), 51 deletions(-)
 create mode 100644 arch/arm/mach-at91/include/mach/sama7-sfr.h
 create mode 100644 drivers/clk/at91/clk-sam9x60-usb.c
 create mode 100644 drivers/phy/phy-sama7-usb.c
 create mode 100644 drivers/phy/phy-sama7-utmi-clk.c
 create mode 100644 drivers/reset/reset-at91.c
 create mode 100644 include/dt-bindings/reset/sama7g5-reset.h

-- 
2.34.1


             reply	other threads:[~2022-12-19  8:47 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-19  8:46 Sergiu Moga [this message]
2022-12-19  8:46 ` [PATCH v4 01/19] ARM: dts: sam9x60: Add OHCI and EHCI DT nodes Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 02/19] clk: at91: Add support for sam9x60 USB clock Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 03/19] clk: at91: sam9x60: Register the required clocks for USB Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 04/19] clk: at91: pmc: export clock setup to pmc Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 05/19] clk: at91: sam9x60: Add initial setup of UPLL and USBCK rates Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 06/19] usb: ohci-at91: Enable OHCI functionality and register into DM Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 07/19] dt-bindings: reset: add sama7g5 definitions Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 08/19] dt-bindings: clk: at91: Define additional UTMI related clocks Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 09/19] ARM: dts: at91: sama7: Add USB related DT nodes Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 10/19] ARM: at91: add sama7 SFR definitions Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 11/19] reset: at91: Add reset driver for basic assert/deassert operations Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 12/19] phy: at91: Add support for the USB 2.0 PHY's of SAMA7 Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 13/19] usb: ohci-at91: Add USB PHY functionality Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 14/19] ARM: dts: at91: sama5d2_icp: Add pinctrl nodes for USB related DT nodes Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 15/19] ARM: dts: at91: sama5d27_wlsom1_ek: Add pinctrl nodes for USB " Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 16/19] configs: at91: sam9x60ek: Add required configs for the USB command Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 17/19] configs: at91: sama5d2: Enable OHCI/EHCI related configs Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 18/19] configs: at91: sama7: Enable USB and RESET functionality Sergiu Moga
2022-12-19  8:46 ` [PATCH v4 19/19] usb: ohci-at91: Add `ohci_t` field in `ohci_at91_priv` Sergiu Moga

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=20221219084626.34606-1-sergiu.moga@microchip.com \
    --to=sergiu.moga@microchip.com \
    --cc=ashok.reddy.soma@xilinx.com \
    --cc=balamanikandan.gunasundar@microchip.com \
    --cc=claudiu.beznea@microchip.com \
    --cc=cristian.birsan@microchip.com \
    --cc=dario.binacchi@amarulasolutions.com \
    --cc=durai.manickamkr@microchip.com \
    --cc=eugen.hristev@microchip.com \
    --cc=greg@embeddedgreg.com \
    --cc=hs@denx.de \
    --cc=j-keerthy@ti.com \
    --cc=jim.t90615@gmail.com \
    --cc=ludovic.desroches@microchip.com \
    --cc=lukma@denx.de \
    --cc=marex@denx.de \
    --cc=michael@amarulasolutions.com \
    --cc=michael@walle.cc \
    --cc=michal.simek@amd.com \
    --cc=mihai.sain@microchip.com \
    --cc=nicolas.ferre@microchip.com \
    --cc=peng.fan@nxp.com \
    --cc=sandeep.sheriker@microchip.com \
    --cc=seanga2@gmail.com \
    --cc=sjg@chromium.org \
    --cc=sumit.garg@linaro.org \
    --cc=u-boot@lists.denx.de \
    --cc=weijie.gao@mediatek.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