On Fri, 2020-12-18 at 19:28 -0700, Simon Glass wrote: > On Tue, 15 Dec 2020 at 10:23, Nicolas Saenz Julienne > <nsaenzjulie...@suse.de> wrote: > > > > By reusing DT nodes already available in sandbox's test DT introduce a > > test to validate dev_phys_to_bus()/dev_bus_to_phys(). > > > > Signed-off-by: Nicolas Saenz Julienne <nsaenzjulie...@suse.de> > > --- > > test/dm/Makefile | 1 + > > test/dm/phys2bus.c | 36 ++++++++++++++++++++++++++++++++++++ > > 2 files changed, 37 insertions(+) > > create mode 100644 test/dm/phys2bus.c > > Reviewed-by: Simon Glass <s...@chromium.org> > > comment below > > > > > diff --git a/test/dm/Makefile b/test/dm/Makefile > > index 5c52d8b6ea..ac86abaa88 100644 > > --- a/test/dm/Makefile > > +++ b/test/dm/Makefile > > @@ -16,6 +16,7 @@ obj-$(CONFIG_UT_DM) += test-uclass.o > > > > obj-$(CONFIG_UT_DM) += core.o > > obj-$(CONFIG_UT_DM) += read.o > > +obj-$(CONFIG_UT_DM) += phys2bus.o > > ifneq ($(CONFIG_SANDBOX),) > > obj-$(CONFIG_ACPIGEN) += acpi.o > > obj-$(CONFIG_ACPIGEN) += acpigen.o > > diff --git a/test/dm/phys2bus.c b/test/dm/phys2bus.c > > new file mode 100644 > > index 0000000000..06a045c168 > > --- /dev/null > > +++ b/test/dm/phys2bus.c > > @@ -0,0 +1,36 @@ > > +// SPDX-License-Identifier: GPL-2.0+ > > +/* > > + * Copyright (c) 2020 Nicolas Saenz Julienne <nsaenzjulie...@suse.de> > > + */ > > + > > +#include <common.h> > > +#include <dm.h> > > +#include <phys2bus.h> > > +#include <dm/device.h> > > +#include <dm/ofnode.h> > > +#include <dm/root.h> > > +#include <dm/test.h> > > +#include <dm/uclass-internal.h> > > +#include <test/ut.h> > > + > > +static int dm_test_phys_to_bus(struct unit_test_state *uts) > > +{ > > + struct udevice *dev; > > + ofnode node; > > + > > + node = ofnode_path("/mmio-bus@0"); > > + ut_assert(ofnode_valid(node)); > > + ut_assert(!uclass_get_device_by_ofnode(UCLASS_TEST_BUS, node, > > &dev)); > > + /* In this case it should be transparent, no dma-ranges in parent > > bus */ > > + ut_asserteq_ptr((void*)0xfffffULL, (void*)dev_phys_to_bus(dev, > > 0xfffff)); > > ut_asserteq_addr() might be better here? Not sure.
That function uses map_to_sysmem() under the hood, which AFAIR didn't play well with these addresses. Regards, Nicolas
signature.asc
Description: This is a digitally signed message part