mbox series

[v4,0/7] Add SE HMBSC board support

Message ID 20240412095438.410570-1-sumit.garg@linaro.org
Headers show
Series Add SE HMBSC board support | expand

Message

Sumit Garg April 12, 2024, 9:54 a.m. UTC
SE HMIBSC board is based on Qcom APQ8016 SoC. One of the major
difference from db410c is serial port where HMIBSC board uses UART1 as
the debug console with an RS232 port, patch #2 - #5 adds corresponding
driver support.

Patch #6 adds main HMIBSC board specific bits, features:
- Qualcomm Snapdragon 410C SoC - APQ8016 (4xCortex A53, Adreno 306)
- 2GiB RAM
- 64GiB eMMC, SD slot
- WiFi and Bluetooth
- 2x Host, 1x Device USB port
- HDMI
- Discrete TPM2 chip over SPI

Features enabled in U-Boot:
- RAUC updates (refer [2] for more details)
- Environment protection
- USB based ethernet adaptors

Feedback is very much welcome.

Changes in v4:
- Rebased on top of qcom-main [4].
- Split out board DTS patch as #6.
- Convert to text based environment as hmibsc.env.
- MMC regression has been reported for qcom-main branch here [5].
- Collected further review tag.

Changes in v3:
- Rebased on top of qcom-next [1].
- Collected some review tags.
- Incorporated misc. comments from Caleb and Stephen.
- Split patch#4 as requested.
- Linux HMIBSC board DTS has already been reviewed here [3], I have
  incorporated that for U-Boot too.

Changes in v2:
- Rebased on top on qcom-next [1].
- Added patch#1 as a fix for generic qcom board support.
- Added patch#4 to enable driving GPIO pins based on pinctrl
  configuration. This replaces the custom GPIO configuration.
- Added proper DTS file for HMIBSC board based on Linux DT pattern.
- Merged board support patches into a single patch#5.

[1] https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commits/qcom-next?ref_type=heads
[2] https://rauc.readthedocs.io/en/latest/
[3] https://lore.kernel.org/linux-kernel/20240403043416.3800259-4-sumit.garg@linaro.org/
[4] https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commits/qcom-main/?ref_type=heads
[5] https://lore.kernel.org/all/CAFA6WYO+3VroUdFUVH390taViQX8pMQrOQDTSn0yU6BD5YY53A@mail.gmail.com/

Sumit Garg (7):
  qcom: Don't enable LINUX_KERNEL_IMAGE_HEADER by default
  apq8016: Add support for UART1 clocks and pinmux
  serial_msm: Enable RS232 flow control
  pinctrl: qcom: Add support for driving GPIO pins output
  pinctrl: qcom: apq8016: Add GPIO pinctrl function
  arm: dts: qcom: Add Schneider HMIBSC board dts
  board: add support for Schneider HMIBSC board

 arch/arm/Kconfig                          |   2 +-
 arch/arm/dts/apq8016-schneider-hmibsc.dts | 491 ++++++++++++++++++++++
 board/schneider/hmibsc/MAINTAINERS        |   6 +
 board/schneider/hmibsc/hmibsc.env         |  40 ++
 configs/hmibsc_defconfig                  |  87 ++++
 doc/board/index.rst                       |   1 +
 doc/board/schneider/hmibsc.rst            |  45 ++
 doc/board/schneider/index.rst             |   9 +
 drivers/clk/qcom/clock-apq8016.c          |  38 +-
 drivers/pinctrl/qcom/pinctrl-apq8016.c    |   2 +
 drivers/pinctrl/qcom/pinctrl-qcom.c       |  25 +-
 drivers/serial/serial_msm.c               |  24 +-
 include/configs/hmibsc.h                  |  16 +
 13 files changed, 760 insertions(+), 26 deletions(-)
 create mode 100644 arch/arm/dts/apq8016-schneider-hmibsc.dts
 create mode 100644 board/schneider/hmibsc/MAINTAINERS
 create mode 100644 board/schneider/hmibsc/hmibsc.env
 create mode 100644 configs/hmibsc_defconfig
 create mode 100644 doc/board/schneider/hmibsc.rst
 create mode 100644 doc/board/schneider/index.rst
 create mode 100644 include/configs/hmibsc.h

Comments

Sumit Garg April 19, 2024, 3:24 p.m. UTC | #1
Hi Caleb,

On Fri, 12 Apr 2024 at 02:54, Sumit Garg <sumit.garg@linaro.org> wrote:
>
> SE HMIBSC board is based on Qcom APQ8016 SoC. One of the major
> difference from db410c is serial port where HMIBSC board uses UART1 as
> the debug console with an RS232 port, patch #2 - #5 adds corresponding
> driver support.
>
> Patch #6 adds main HMIBSC board specific bits, features:
> - Qualcomm Snapdragon 410C SoC - APQ8016 (4xCortex A53, Adreno 306)
> - 2GiB RAM
> - 64GiB eMMC, SD slot
> - WiFi and Bluetooth
> - 2x Host, 1x Device USB port
> - HDMI
> - Discrete TPM2 chip over SPI
>
> Features enabled in U-Boot:
> - RAUC updates (refer [2] for more details)
> - Environment protection
> - USB based ethernet adaptors
>
> Feedback is very much welcome.
>
> Changes in v4:
> - Rebased on top of qcom-main [4].
> - Split out board DTS patch as #6.
> - Convert to text based environment as hmibsc.env.
> - MMC regression has been reported for qcom-main branch here [5].
> - Collected further review tag.

I haven't seen any further comments on this series. Can you help pick it up?

-Sumit

>
> Changes in v3:
> - Rebased on top of qcom-next [1].
> - Collected some review tags.
> - Incorporated misc. comments from Caleb and Stephen.
> - Split patch#4 as requested.
> - Linux HMIBSC board DTS has already been reviewed here [3], I have
>   incorporated that for U-Boot too.
>
> Changes in v2:
> - Rebased on top on qcom-next [1].
> - Added patch#1 as a fix for generic qcom board support.
> - Added patch#4 to enable driving GPIO pins based on pinctrl
>   configuration. This replaces the custom GPIO configuration.
> - Added proper DTS file for HMIBSC board based on Linux DT pattern.
> - Merged board support patches into a single patch#5.
>
> [1] https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commits/qcom-next?ref_type=heads
> [2] https://rauc.readthedocs.io/en/latest/
> [3] https://lore.kernel.org/linux-kernel/20240403043416.3800259-4-sumit.garg@linaro.org/
> [4] https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commits/qcom-main/?ref_type=heads
> [5] https://lore.kernel.org/all/CAFA6WYO+3VroUdFUVH390taViQX8pMQrOQDTSn0yU6BD5YY53A@mail.gmail.com/
>
> Sumit Garg (7):
>   qcom: Don't enable LINUX_KERNEL_IMAGE_HEADER by default
>   apq8016: Add support for UART1 clocks and pinmux
>   serial_msm: Enable RS232 flow control
>   pinctrl: qcom: Add support for driving GPIO pins output
>   pinctrl: qcom: apq8016: Add GPIO pinctrl function
>   arm: dts: qcom: Add Schneider HMIBSC board dts
>   board: add support for Schneider HMIBSC board
>
>  arch/arm/Kconfig                          |   2 +-
>  arch/arm/dts/apq8016-schneider-hmibsc.dts | 491 ++++++++++++++++++++++
>  board/schneider/hmibsc/MAINTAINERS        |   6 +
>  board/schneider/hmibsc/hmibsc.env         |  40 ++
>  configs/hmibsc_defconfig                  |  87 ++++
>  doc/board/index.rst                       |   1 +
>  doc/board/schneider/hmibsc.rst            |  45 ++
>  doc/board/schneider/index.rst             |   9 +
>  drivers/clk/qcom/clock-apq8016.c          |  38 +-
>  drivers/pinctrl/qcom/pinctrl-apq8016.c    |   2 +
>  drivers/pinctrl/qcom/pinctrl-qcom.c       |  25 +-
>  drivers/serial/serial_msm.c               |  24 +-
>  include/configs/hmibsc.h                  |  16 +
>  13 files changed, 760 insertions(+), 26 deletions(-)
>  create mode 100644 arch/arm/dts/apq8016-schneider-hmibsc.dts
>  create mode 100644 board/schneider/hmibsc/MAINTAINERS
>  create mode 100644 board/schneider/hmibsc/hmibsc.env
>  create mode 100644 configs/hmibsc_defconfig
>  create mode 100644 doc/board/schneider/hmibsc.rst
>  create mode 100644 doc/board/schneider/index.rst
>  create mode 100644 include/configs/hmibsc.h
>
> --
> 2.34.1
>
Caleb Connolly April 23, 2024, 11:59 a.m. UTC | #2
Applied, thanks.

(b4 didn't seem to detect this series properly, hence the manual mail).

On 12/04/2024 11:54, Sumit Garg wrote:
> SE HMIBSC board is based on Qcom APQ8016 SoC. One of the major
> difference from db410c is serial port where HMIBSC board uses UART1 as
> the debug console with an RS232 port, patch #2 - #5 adds corresponding
> driver support.
> 
> Patch #6 adds main HMIBSC board specific bits, features:
> - Qualcomm Snapdragon 410C SoC - APQ8016 (4xCortex A53, Adreno 306)
> - 2GiB RAM
> - 64GiB eMMC, SD slot
> - WiFi and Bluetooth
> - 2x Host, 1x Device USB port
> - HDMI
> - Discrete TPM2 chip over SPI
> 
> Features enabled in U-Boot:
> - RAUC updates (refer [2] for more details)
> - Environment protection
> - USB based ethernet adaptors
> 
> Feedback is very much welcome.
> 
> Changes in v4:
> - Rebased on top of qcom-main [4].
> - Split out board DTS patch as #6.
> - Convert to text based environment as hmibsc.env.
> - MMC regression has been reported for qcom-main branch here [5].
> - Collected further review tag.
> 
> Changes in v3:
> - Rebased on top of qcom-next [1].
> - Collected some review tags.
> - Incorporated misc. comments from Caleb and Stephen.
> - Split patch#4 as requested.
> - Linux HMIBSC board DTS has already been reviewed here [3], I have
>    incorporated that for U-Boot too.
> 
> Changes in v2:
> - Rebased on top on qcom-next [1].
> - Added patch#1 as a fix for generic qcom board support.
> - Added patch#4 to enable driving GPIO pins based on pinctrl
>    configuration. This replaces the custom GPIO configuration.
> - Added proper DTS file for HMIBSC board based on Linux DT pattern.
> - Merged board support patches into a single patch#5.
> 
> [1] https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commits/qcom-next?ref_type=heads
> [2] https://rauc.readthedocs.io/en/latest/
> [3] https://lore.kernel.org/linux-kernel/20240403043416.3800259-4-sumit.garg@linaro.org/
> [4] https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commits/qcom-main/?ref_type=heads
> [5] https://lore.kernel.org/all/CAFA6WYO+3VroUdFUVH390taViQX8pMQrOQDTSn0yU6BD5YY53A@mail.gmail.com/
> 
> Sumit Garg (7):
>    qcom: Don't enable LINUX_KERNEL_IMAGE_HEADER by default
>    apq8016: Add support for UART1 clocks and pinmux
>    serial_msm: Enable RS232 flow control
>    pinctrl: qcom: Add support for driving GPIO pins output
>    pinctrl: qcom: apq8016: Add GPIO pinctrl function
>    arm: dts: qcom: Add Schneider HMIBSC board dts
>    board: add support for Schneider HMIBSC board
> 
>   arch/arm/Kconfig                          |   2 +-
>   arch/arm/dts/apq8016-schneider-hmibsc.dts | 491 ++++++++++++++++++++++
>   board/schneider/hmibsc/MAINTAINERS        |   6 +
>   board/schneider/hmibsc/hmibsc.env         |  40 ++
>   configs/hmibsc_defconfig                  |  87 ++++
>   doc/board/index.rst                       |   1 +
>   doc/board/schneider/hmibsc.rst            |  45 ++
>   doc/board/schneider/index.rst             |   9 +
>   drivers/clk/qcom/clock-apq8016.c          |  38 +-
>   drivers/pinctrl/qcom/pinctrl-apq8016.c    |   2 +
>   drivers/pinctrl/qcom/pinctrl-qcom.c       |  25 +-
>   drivers/serial/serial_msm.c               |  24 +-
>   include/configs/hmibsc.h                  |  16 +
>   13 files changed, 760 insertions(+), 26 deletions(-)
>   create mode 100644 arch/arm/dts/apq8016-schneider-hmibsc.dts
>   create mode 100644 board/schneider/hmibsc/MAINTAINERS
>   create mode 100644 board/schneider/hmibsc/hmibsc.env
>   create mode 100644 configs/hmibsc_defconfig
>   create mode 100644 doc/board/schneider/hmibsc.rst
>   create mode 100644 doc/board/schneider/index.rst
>   create mode 100644 include/configs/hmibsc.h
>
Sumit Garg April 23, 2024, 12:23 p.m. UTC | #3
On Tue, 23 Apr 2024 at 17:29, Caleb Connolly <caleb.connolly@linaro.org> wrote:
>
> Applied, thanks.

Thanks.

>
> (b4 didn't seem to detect this series properly, hence the manual mail).
>

Switching my workflow to b4 is on my ToDo list. I hope to do it sooner
rather than later.

-Sumit

> On 12/04/2024 11:54, Sumit Garg wrote:
> > SE HMIBSC board is based on Qcom APQ8016 SoC. One of the major
> > difference from db410c is serial port where HMIBSC board uses UART1 as
> > the debug console with an RS232 port, patch #2 - #5 adds corresponding
> > driver support.
> >
> > Patch #6 adds main HMIBSC board specific bits, features:
> > - Qualcomm Snapdragon 410C SoC - APQ8016 (4xCortex A53, Adreno 306)
> > - 2GiB RAM
> > - 64GiB eMMC, SD slot
> > - WiFi and Bluetooth
> > - 2x Host, 1x Device USB port
> > - HDMI
> > - Discrete TPM2 chip over SPI
> >
> > Features enabled in U-Boot:
> > - RAUC updates (refer [2] for more details)
> > - Environment protection
> > - USB based ethernet adaptors
> >
> > Feedback is very much welcome.
> >
> > Changes in v4:
> > - Rebased on top of qcom-main [4].
> > - Split out board DTS patch as #6.
> > - Convert to text based environment as hmibsc.env.
> > - MMC regression has been reported for qcom-main branch here [5].
> > - Collected further review tag.
> >
> > Changes in v3:
> > - Rebased on top of qcom-next [1].
> > - Collected some review tags.
> > - Incorporated misc. comments from Caleb and Stephen.
> > - Split patch#4 as requested.
> > - Linux HMIBSC board DTS has already been reviewed here [3], I have
> >    incorporated that for U-Boot too.
> >
> > Changes in v2:
> > - Rebased on top on qcom-next [1].
> > - Added patch#1 as a fix for generic qcom board support.
> > - Added patch#4 to enable driving GPIO pins based on pinctrl
> >    configuration. This replaces the custom GPIO configuration.
> > - Added proper DTS file for HMIBSC board based on Linux DT pattern.
> > - Merged board support patches into a single patch#5.
> >
> > [1] https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commits/qcom-next?ref_type=heads
> > [2] https://rauc.readthedocs.io/en/latest/
> > [3] https://lore.kernel.org/linux-kernel/20240403043416.3800259-4-sumit.garg@linaro.org/
> > [4] https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commits/qcom-main/?ref_type=heads
> > [5] https://lore.kernel.org/all/CAFA6WYO+3VroUdFUVH390taViQX8pMQrOQDTSn0yU6BD5YY53A@mail.gmail.com/
> >
> > Sumit Garg (7):
> >    qcom: Don't enable LINUX_KERNEL_IMAGE_HEADER by default
> >    apq8016: Add support for UART1 clocks and pinmux
> >    serial_msm: Enable RS232 flow control
> >    pinctrl: qcom: Add support for driving GPIO pins output
> >    pinctrl: qcom: apq8016: Add GPIO pinctrl function
> >    arm: dts: qcom: Add Schneider HMIBSC board dts
> >    board: add support for Schneider HMIBSC board
> >
> >   arch/arm/Kconfig                          |   2 +-
> >   arch/arm/dts/apq8016-schneider-hmibsc.dts | 491 ++++++++++++++++++++++
> >   board/schneider/hmibsc/MAINTAINERS        |   6 +
> >   board/schneider/hmibsc/hmibsc.env         |  40 ++
> >   configs/hmibsc_defconfig                  |  87 ++++
> >   doc/board/index.rst                       |   1 +
> >   doc/board/schneider/hmibsc.rst            |  45 ++
> >   doc/board/schneider/index.rst             |   9 +
> >   drivers/clk/qcom/clock-apq8016.c          |  38 +-
> >   drivers/pinctrl/qcom/pinctrl-apq8016.c    |   2 +
> >   drivers/pinctrl/qcom/pinctrl-qcom.c       |  25 +-
> >   drivers/serial/serial_msm.c               |  24 +-
> >   include/configs/hmibsc.h                  |  16 +
> >   13 files changed, 760 insertions(+), 26 deletions(-)
> >   create mode 100644 arch/arm/dts/apq8016-schneider-hmibsc.dts
> >   create mode 100644 board/schneider/hmibsc/MAINTAINERS
> >   create mode 100644 board/schneider/hmibsc/hmibsc.env
> >   create mode 100644 configs/hmibsc_defconfig
> >   create mode 100644 doc/board/schneider/hmibsc.rst
> >   create mode 100644 doc/board/schneider/index.rst
> >   create mode 100644 include/configs/hmibsc.h
> >
>
> --
> // Caleb (they/them)