Page MenuHomeFreeBSD

Provide simple bus_dma stubs for USB/loader/kshim library
ClosedPublic

Authored by wma on Nov 30 2015, 8:42 AM.

Details

Summary
  • Simple bus space stubs require the VA-PA mapping to be identical.
  • Only one DMA buffer in chain is supported.
  • Fully IO-coherent (or device/non-cacheable) memory is required

This change is required to make one of Broadcom's EHCI drivers working with kshim.

Diff Detail

Repository
rS FreeBSD src repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

wma_semihalf.com retitled this revision from to Provide simple bus_dma stubs for USB/loader/kshim library.
wma_semihalf.com updated this object.
wma_semihalf.com edited the test plan for this revision. (Show Details)
wma_semihalf.com added reviewers: zbb, hselasky, andrew.
hselasky edited edge metadata.Dec 3 2015, 10:26 AM

Can you have a look at the comments given?

sys/boot/kshim/bsd_kernel.c
82 ↗(On Diff #10586)

Typo here?
& ~(dmat->alignement - 1)

95 ↗(On Diff #10586)

(uintptr_t) instead of (uint32_t) ??

sys/boot/kshim/bsd_kernel.h
610 ↗(On Diff #10586)

Minor style issue here: <tab> after #define

hselasky added inline comments.Dec 3 2015, 10:28 AM
sys/boot/kshim/bsd_kernel.c
97 ↗(On Diff #10586)

ds_len should be equal to "buflen" ??

wma commandeered this revision.Jan 21 2016, 5:46 AM
wma added a reviewer: wma_semihalf.com.
wma updated this revision to Diff 12534.Jan 21 2016, 6:35 AM
wma removed a reviewer: wma_semihalf.com.
hselasky accepted this revision.Jan 21 2016, 8:28 AM
hselasky edited edge metadata.

Please build test with amd64 and i386 before committing.

make buildenv TARGET_ARCH=i386
make -C ....

make buildenv TARGET_ARCH=amd64
make -C ....

Thank you!

--HPS

This revision is now accepted and ready to land.Jan 21 2016, 8:28 AM
wma added a comment.Jan 21 2016, 11:21 AM

Thanks. There is a problem with compilation, but I'll fix it in a separate changeset since it's present in a generic part and then commit this one.

This revision was automatically updated to reflect the committed changes.