Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Building and configuring questions #7

Open
positron96 opened this issue Jun 13, 2020 · 3 comments
Open

Building and configuring questions #7

positron96 opened this issue Jun 13, 2020 · 3 comments

Comments

@positron96
Copy link

Hello guys and thank you for the good work you've done with this driver.

Can you please tell me what are the prerequisites for building the driver? Can it be cross-compiled on x86-64 for ARM (specifically, raspberry pi)? Do I need kernel headers or other preinstalled stuff? What kernels are supported? I've noticed commits mentioning 5.x kernel, but the README only mentions 4.11.

Then there is a question of configuring the module and integrating it into device tree. Do you have any experience of doing this? Maybe you have a working configuration? How do I tell the module what SDIO+UART ports is the chip sitting on? What arguments does the module support? Does it even support device trees?
We are developing a board with this chip (specifically, on Raspberry pi Compute Module) and were surprised with a lack of driver in linux kernel and only found this repo...

@HonJEK
Copy link
Contributor

HonJEK commented Sep 16, 2020

@positron96
Hi. The kernel is compiling fine till kernel 5.6. Currently I added fixes for 5.8.
OK the readme should be changed ;-)

On my device it is connected to MMC1 and these is in the dts file for an Allwinner A64 SoC
reg_vcc_wifi: reg-vcc-wifi {
compatible = "regulator-fixed";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc-wifi";
enable-active-high;
gpios = <&pio 3 22 GPIO_ACTIVE_HIGH>; /* PD22 /
};
wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /
PL2 */
};

/* WLAN */
&mmc1 {
pinctrl-names = "default";
pinctrl-0 = <&mmc1_pins>;
vmmc-supply = <&reg_dldo4>;
vqmmc-supply = <&reg_vcc_wifi>;
mmc-pwrseq = <&wifi_pwrseq>;
non-removable;
bus-width = <4>;
status = "okay";

/*
 * Explicitly define the sdio device, so that we can add an ethernet
 * alias for it (which e.g. makes u-boot set a mac-address).
 */
rtl8723ds: sdio_wifi@1 {
	reg = <1>;
	interrupt-parent = <&r_pio>;
	interrupts = <0 3 IRQ_TYPE_LEVEL_LOW>; /* PL3 */
	interrupt-names = "host-wake";
};

};

Best regards

@positron96
Copy link
Author

Thank you for yours response! Although it seems beyond my knowledge to convert this DTS for raspberry pi.

@HonJEK
Copy link
Contributor

HonJEK commented Sep 17, 2020

For raspberry pi you can have a look into the dts of them which has a WiFi controller like 3b or 3b+.
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/arch/arm/boot/dts/bcm2837-rpi-3-b.dts?h=v5.8.9

wifi_pwrseq <- is there available
How to set ab WiFi to the sd-host is there also available

Where you must have a look is that you setup the correct pins.

Did you use the computive module?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants