fdt_serial_renesas_scif.c 781 B

12345678910111213141516171819202122232425262728293031
  1. // SPDX-License-Identifier: BSD-2-Clause
  2. /*
  3. * Copyright (C) 2022 Renesas Electronics Corporation
  4. */
  5. #include <sbi_utils/fdt/fdt_helper.h>
  6. #include <sbi_utils/serial/fdt_serial.h>
  7. #include <sbi_utils/serial/renesas-scif.h>
  8. static int serial_renesas_scif_init(void *fdt, int nodeoff,
  9. const struct fdt_match *match)
  10. {
  11. struct platform_uart_data uart = { 0 };
  12. int ret;
  13. ret = fdt_parse_renesas_scif_node(fdt, nodeoff, &uart);
  14. if (ret)
  15. return ret;
  16. return renesas_scif_init(uart.addr, uart.freq, uart.baud);
  17. }
  18. static const struct fdt_match serial_renesas_scif_match[] = {
  19. { .compatible = "renesas,scif-r9a07g043" },
  20. { /* sentinel */ }
  21. };
  22. struct fdt_serial fdt_serial_renesas_scif = {
  23. .match_table = serial_renesas_scif_match,
  24. .init = serial_renesas_scif_init
  25. };