[QUESTION] Physical memory allocation for VPE without mmap

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

My question is around physical memory allocation.

This is used by VPE1 to enable FXS (analogue telephone ports) support, details:
https://dev.openwrt.org/browser/branches/barrier_breaker/target/linux/lantiq/patches-3.10/0152-VPE-extensions.patch?rev=43158

https://forum.openwrt.org/viewtopic.php?id=62696

The command line used by a MIPS based lantiq router (VRX288) at command line:
"phym=64M mem=62M vpe1_load_addr=0x83e00000 vpe1_mem=2M"

Is it possible to do this by a smoother way? So with removing the phym
and mem arguments.

I tried the following in the driver. Therefore I changed the command
line to "vpe1_load_addr=0x83e00000" (removed phym, mem, and 2M parts).
I used this within the driver: reserve_bootmem(load_addr, size,
BOOTMEM_DEFAULT). But then I will get a kernel panic at
mark_bootmem+0xec/0x120.

I have read some about QMA, too. But this needs some additional kernel
dependencies.
But in general is this useful for this problem?

Do you have some idea? What would be a good/beautiful approach?
What is the best way to alloc physical continuous public memory?
The memory should also accessible without SEGFAULT in userspace and by
other drivers.

Optional: Is there also a way that is transparent to other drivers and
userspace?
So that the drivers/userspace see still 64M max memory, but 2M as used.
With mmem way the userspace see's 62M max mem.
Especially because this bug, WIFI doesn't work with 62M :(
https://bugzilla.kernel.org/show_bug.cgi?id=110091

Thanks :)

Best regards

Stefan




[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux