How to correctly load a driver without device tree?
Now, most of kernel device are initialized by its driver according by what described within device tree block. Here, the dtb was parsed and used during kernel booting. If so, I want to load a device driver after kernel booting using insmod, there would be no device tree block present, so, the device would not be configured correctly. so, how to make it usable? Regards, kipade.
On Wed, Jun 20, 2018 at 02:36:52PM +0800, kipade wrote:
Now, most of kernel device are initialized by its driver according by what described within device tree block. Here, the dtb was parsed and used during kernel booting. If so, I want to load a device driver after kernel booting using insmod, there would be no device tree block present, so, the device would not be configured correctly. so, how to make it usable?
Why can you not build it into your kernel?
That's a usb host driver. As I know, the whole usb subsystem initialization would take up to 2 seconds while booting. In another word, that will make the system booting time more longer. So, I have to build all the usb driver as module and insert them latter, when the system was usable. On 2018年06月20日 16:01, Greg KH wrote:
On Wed, Jun 20, 2018 at 02:36:52PM +0800, kipade wrote:
Now, most of kernel device are initialized by its driver according by what described within device tree block. Here, the dtb was parsed and used during kernel booting. If so, I want to load a device driver after kernel booting using insmod, there would be no device tree block present, so, the device would not be configured correctly. so, how to make it usable? Why can you not build it into your kernel?
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Hi there, If you are using systemd, you can make your own Target like early.target and load modules without udev. But you need to load modules without device tree, I guess that's not possible. your system is booting without device tree? Thanks, Akash On Wed, Jun 20, 2018, 14:03 kipade <kipade@163.com> wrote:
That's a usb host driver. As I know, the whole usb subsystem initialization would take up to 2 seconds while booting. In another word, that will make the system booting time more longer. So, I have to build all the usb driver as module and insert them latter, when the system was usable.
On 2018年06月20日 16:01, Greg KH wrote:
On Wed, Jun 20, 2018 at 02:36:52PM +0800, kipade wrote:
Now, most of kernel device are initialized by its driver according by what described within device tree block. Here, the dtb was parsed and used during kernel booting. If so, I want to load a device driver after kernel booting using insmod, there would be no device tree block present, so, the device would not be configured correctly. so, how to make it usable? Why can you not build it into your kernel?
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
I don't use systemd on my arm linux board. I use init. My system is booting with device tree. But, some node were destroyed after booting completed. So, when I use insmod loading the driver, it would match no device. On 2018年06月20日 16:58, Gajjar Akash wrote:
Hi there,
If you are using systemd, you can make your own Target like early.target and load modules without udev.
But you need to load modules without device tree, I guess that's not possible.
your system is booting without device tree?
Thanks, Akash
On Wed, Jun 20, 2018, 14:03 kipade <kipade@163.com <mailto:kipade@163.com>> wrote:
That's a usb host driver. As I know, the whole usb subsystem initialization would take up to 2 seconds while booting. In another word, that will make the system booting time more longer. So, I have to build all the usb driver as module and insert them latter, when the system was usable.
On 2018年06月20日 16:01, Greg KH wrote: > On Wed, Jun 20, 2018 at 02:36:52PM +0800, kipade wrote: >> Now, most of kernel device are initialized by its driver according by >> what described within device tree block. Here, the dtb was parsed >> and used during kernel booting. If so, I want to load a device driver >> after kernel booting using insmod, there would be no device tree >> block present, so, the device would not be configured correctly. >> so, how to make it usable? > Why can you not build it into your kernel? > > > _______________________________________________ > Kernelnewbies mailing list > Kernelnewbies@kernelnewbies.org <mailto:Kernelnewbies@kernelnewbies.org> > https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org <mailto:Kernelnewbies@kernelnewbies.org> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
On Wed, Jun 20, 2018 at 04:30:40PM +0800, kipade wrote:
That's a usb host driver. As I know, the whole usb subsystem initialization would take up to 2 seconds while booting. In another word, that will make the system booting time more longer. So, I have to build all the usb driver as module and insert them latter, when the system was usable.
Then use async probing and/or deferred probing. Or even better yet, fix the driver to not wait 2 seconds when booting, that should not happen. good luck! greg k-h
If so, I think that's the perfect resolution for that. and, what should I do next for that way? On 2018年06月20日 20:31, Greg KH wrote:
On Wed, Jun 20, 2018 at 04:30:40PM +0800, kipade wrote:
That's a usb host driver. As I know, the whole usb subsystem initialization would take up to 2 seconds while booting. In another word, that will make the system booting time more longer. So, I have to build all the usb driver as module and insert them latter, when the system was usable. Then use async probing and/or deferred probing. Or even better yet, fix the driver to not wait 2 seconds when booting, that should not happen.
good luck!
greg k-h
participants (3)
-
Gajjar Akash -
Greg KH -
kipade