Hello Niteesh,

I think there is an open Question from Chris for that patch:

https://lists.rtems.org/pipermail/devel/2021-January/063988.html

Best regards

Christian

Am 27.01.21 um 11:14 schrieb Niteesh G. S.:
ping.


On Wed, Jan 20, 2021 at 2:01 PM G S Niteesh Babu <niteesh...@gmail.com <mailto:niteesh...@gmail.com>> wrote:

    This commit modifies the OFW interface to the RTEMS FDT
    implementation instead of the default FreeBSD.
    ---
      freebsd/sys/dev/ofw/openfirm.c                |  2 ++
      freebsd/sys/dev/ofw/openfirm.h                |  9 ++++++++
      .../machine/rtems-bsd-kernel-namespace.h      | 22 -------------------
      3 files changed, 11 insertions(+), 22 deletions(-)

    diff --git a/freebsd/sys/dev/ofw/openfirm.c
    b/freebsd/sys/dev/ofw/openfirm.c
    index 9cc7dbdc..30513ab2 100644
    --- a/freebsd/sys/dev/ofw/openfirm.c
    +++ b/freebsd/sys/dev/ofw/openfirm.c
    @@ -333,6 +333,7 @@ OF_interpret(const char *cmd, int nreturns, ...)
       * Device tree functions
       */

    +#ifndef __rtems__
      /* Return the next sibling of this node or 0. */
      phandle_t
      OF_peer(phandle_t node)
    @@ -672,6 +673,7 @@ OF_xref_from_node(phandle_t node)
                     return (node);
             return (xref);
      }
    +#endif /* __rtems__ */

      device_t
      OF_device_from_xref(phandle_t xref)
    diff --git a/freebsd/sys/dev/ofw/openfirm.h
    b/freebsd/sys/dev/ofw/openfirm.h
    index f043197a..5df07258 100644
    --- a/freebsd/sys/dev/ofw/openfirm.h
    +++ b/freebsd/sys/dev/ofw/openfirm.h
    @@ -64,7 +64,11 @@

      #include <sys/types.h>
      #include <machine/_bus.h>
    +#ifdef __rtems__
    +#include <ofw/ofw_compat.h>
    +#endif /* __rtems__ */

    +#ifndef __rtems__
      /*
       * Prototypes for Open Firmware Interface Routines
       */
    @@ -72,6 +76,7 @@
      typedef uint32_t       ihandle_t;
      typedef uint32_t       phandle_t;
      typedef uint32_t       pcell_t;
    +#endif /* __rtems__ */

      #ifdef _KERNEL
      #include <sys/malloc.h>
    @@ -102,6 +107,7 @@ int         OF_test(const char *name);
      void           OF_printf(const char *fmt, ...);

      /* Device tree functions */
    +#ifndef __rtems__
      phandle_t      OF_peer(phandle_t node);
      phandle_t      OF_child(phandle_t node);
      phandle_t      OF_parent(phandle_t node);
    @@ -140,6 +146,7 @@ ssize_t             OF_package_to_path(phandle_t
    node, char *buf, size_t len);
       */
      phandle_t      OF_node_from_xref(phandle_t xref);
      phandle_t      OF_xref_from_node(phandle_t node);
    +#endif /* __rtems__ */

      /*
       * When properties contain references to other nodes using xref
    handles it is
    @@ -159,8 +166,10 @@ ssize_t            OF_read(ihandle_t instance,
    void *buf, size_t len);
      ssize_t                OF_write(ihandle_t instance, const void
    *buf, size_t len);
      int            OF_seek(ihandle_t instance, uint64_t where);

    +#ifndef __rtems__
      phandle_t      OF_instance_to_package(ihandle_t instance);
      ssize_t                OF_instance_to_path(ihandle_t instance,
    char *buf, size_t len);
    +#endif /* __rtems__ */
      int            OF_call_method(const char *method, ihandle_t instance,
                         int nargs, int nreturns, ...);

    diff --git a/rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h
    b/rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h
    index 75b744a4..53944393 100644
    --- a/rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h
    +++ b/rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h
    @@ -3044,42 +3044,20 @@
      #define        null_filtops _bsd_null_filtops
      #define        nullop _bsd_nullop
      #define        OF_call_method _bsd_OF_call_method
    -#define        OF_canon _bsd_OF_canon
    -#define        OF_child _bsd_OF_child
      #define        OF_claim _bsd_OF_claim
      #define        OF_close _bsd_OF_close
      #define        OF_device_from_xref _bsd_OF_device_from_xref
      #define        OF_device_register_xref _bsd_OF_device_register_xref
      #define        OF_enter _bsd_OF_enter
      #define        OF_exit _bsd_OF_exit
    -#define        OF_finddevice _bsd_OF_finddevice
    -#define        OF_getencprop _bsd_OF_getencprop
    -#define        OF_getencprop_alloc _bsd_OF_getencprop_alloc
    -#define        OF_getencprop_alloc_multi _bsd_OF_getencprop_alloc_multi
    -#define        OF_getprop _bsd_OF_getprop
    -#define        OF_getprop_alloc _bsd_OF_getprop_alloc
    -#define        OF_getprop_alloc_multi _bsd_OF_getprop_alloc_multi
    -#define        OF_getproplen _bsd_OF_getproplen
    -#define        OF_hasprop _bsd_OF_hasprop
      #define        OF_init _bsd_OF_init
      #define        OF_install _bsd_OF_install
    -#define        OF_instance_to_package _bsd_OF_instance_to_package
    -#define        OF_instance_to_path _bsd_OF_instance_to_path
      #define        OF_interpret _bsd_OF_interpret
    -#define        OF_nextprop _bsd_OF_nextprop
    -#define        OF_node_from_xref _bsd_OF_node_from_xref
      #define        OF_open _bsd_OF_open
    -#define        OF_package_to_path _bsd_OF_package_to_path
    -#define        OF_parent _bsd_OF_parent
    -#define        OF_peer _bsd_OF_peer
      #define        OF_printf _bsd_OF_printf
    -#define        OF_prop_free _bsd_OF_prop_free
      #define        OF_read _bsd_OF_read
      #define        OF_release _bsd_OF_release
    -#define        OF_searchencprop _bsd_OF_searchencprop
    -#define        OF_searchprop _bsd_OF_searchprop
      #define        OF_seek _bsd_OF_seek
    -#define        OF_setprop _bsd_OF_setprop
      #define        OF_test _bsd_OF_test
      #define        ofw_bus_assigned_addresses_to_rl
    _bsd_ofw_bus_assigned_addresses_to_rl
      #define        ofwbus_driver _bsd_ofwbus_driver
-- 2.17.1


--
--------------------------------------------
embedded brains GmbH
Herr Christian MAUDERER
Dornierstr. 4
82178 Puchheim
Germany
email: christian.maude...@embedded-brains.de
phone: +49-89-18 94 741 - 18
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to