Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Jun 2015 16:45:46 -0300
From:      =?UTF-8?Q?Mat=C3=ADas_Perret_Cantoni?= <perretcantonim@gmail.com>
To:        freebsd-arm@freebsd.org
Subject:   There have been some big changes in Newbus in CURRENT?
Message-ID:  <CADLKG02VR=J1aCQxqK5SFoaH5Cuc=m645uBD5AFA9KqwM38N6g@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi! First of all sorry if this question is too silly, but there have
been some big changes in Newbus in CURRENT?
I ask this because I was using a "custom" DTS and a driver that I
made, happily on a FreeBSD-10.1.0 image I built, on the ZedBoard
platform.

But now I created a new FreeBSD image with CURRENT; I use the exact
same DTS and driver, but the probe() routine of my driver is never
called when I load it; so my driver never gets attached to my device.

Thanks in advance for your patience!

Matias

PS: Just in case, here are some details:

* The system is:

FreeBSD zedboard 11.0-CURRENT FreeBSD 11.0-CURRENT #1 r283900: Thu Jun
 4 07:44:32 ART 2015
root@efn.uncor:/usr/obj/arm.armv6/usr/src/sys/ZEDBOARD  arm


* This is how I built the image:

cd /usr/src
svn checkout http://svn0.us-west.freebsd.org/base/head
svn update
make TARGET_ARCH=armv6 KERNCONF=ZEDBOARD buildworld buildkernel


* This is the drivers probe routine:

static int
p3_probe(device_t dev)
{
      device_printf(dev, "Probe routine");

      if (!ofw_bus_is_compatible(dev, "zedBSD,p3")){
            device_printf(dev, "Not compatible!");
            return (ENXIO);
      }

      device_set_desc(dev, "p3_device");

      device_printf(dev, "Compatible!");

      return(BUS_PROBE_SPECIFIC);
}


* This the DTS node:

/* AXI General purpose #0 from PL: */
      M_AXI_GP0@40000000 {
      device_type = "soc";
      compatible = "simple-bus";
      #address-cells = <1>;
      #size-cells = <1>;
      ranges = <0x0 0x40000000 0x3fffffff>;

      /* MY NODE */
      p3: p3@1200000 {
            compatible = "zedBSD,p3";
            reg = <0x1200000 0xFFFF>,
                     <0x27000000 0xFFFF>;
            interrupts = <61>;
            interrupt-parent = <&GIC>;
      };
};


* And I load the driver with:

kldload ./p3.ko



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADLKG02VR=J1aCQxqK5SFoaH5Cuc=m645uBD5AFA9KqwM38N6g>