lkml.org 
[lkml]   [2012]   [Nov]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: The ethernet driver doesn't get probed
From
First you  should run "lspci -n" to check your device ID and vendor
ID, and make sure they are in the map list in
/lib/modules/<your-version>/modules.alias .


On Mon, Nov 26, 2012 at 3:47 PM, Belisko Marek <marek.belisko@gmail.com> wrote:
> On Mon, Nov 26, 2012 at 7:59 AM, Woody Wu <narkewoody@gmail.com> wrote:
>> Hi, List
>>
>> I enabled an ax88796 Ethernet driver in the kernel configuration menu.
>> Kernel version is 3.4.19. The arch is ARM and the system type is
>> Samsung S3C2410.
>>
>> In my debugging, I found the probe function of the driver did not get
>> invoked.
> Did you define platform data and platform device in board file?
> See: arch/arm/mach-pxa/colibri-pxa300.c (line ~87)
>>
>> This driver is declared as platform_driver
>>
>> static struct platform_driver axdrv = {
>> .driver = {
>> .name = "ax88796",
>> .owner = THIS_MODULE,
>> },
>> .probe = ax_probe,
>> .remove = ax_remove,
>> .suspend = ax_suspend,
>> .resume = ax_resume,
>> };
>>
>> module_platform_driver(axdrv);
>>
>> So, its driver init function actually goes through
>> platform_driver_register() and then driver_register(), which eventually
>> call driver_attach() trying to attach the driver to the "platform" bus.
>> But, on the platform bus, there is no any device that can match the
>> ax88796 driver, hence the driver failed in attaching.
>>
>> I discovered the full list of devices found on the platform bus:
>>
>> s3c2410-ohci,
>> s3c2410-lcd,
>> s3c2410-wdt,
>> s3c2410-i2c,
>> s3c24xx-iis,
>> s3c2410-nand,
>> s3c24xx_led,
>> s3c2410-uart,
>>
>> You see, in the list, there is no a device looks like ax88796. All these
>> already existed devices on the platform bus are build-in peripherals on
>> the SoC of s3c2410, they are compiled into the code by enabling some
>> kernel configuration options.
>>
>> My question is, in terms of Linux driver technology, how to enable a
>> non-PCI and not on-chip device driver? I think the ax_probe function
>> must be called somehow, is this thinking right? If yes, I think before
>> the driver get initialized, the corresponding device has to appear on
>> the bus, but now it seems not.
>>
>> Thanks in advance.
>>
>> --
>> woody
>> I can't go back to yesterday - because I was a different person then.
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at http://www.tux.org/lkml/
>
> Cheers,
>
> mbe
>
> --
> as simple and primitive as possible
> -------------------------------------------------
> Marek Belisko - OPEN-NANDRA
> Freelance Developer
>
> Ruska Nova Ves 219 | Presov, 08005 Slovak Republic
> Tel: +421 915 052 184
> skype: marekwhite
> twitter: #opennandra
> web: http://open-nandra.com
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/


\
 
 \ /
  Last update: 2012-11-26 09:21    [W:0.050 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site