トップ «前の日記(2008年03月04日) 最新 次の日記(2008年03月13日)» 編集
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|10|12|
2009|02|03|06|07|10|11|12|
2010|01|02|03|04|07|09|10|11|12|
2011|01|03|04|05|06|07|08|10|
2012|01|06|08|09|10|12|
2013|01|02|03|04|07|09|11|12|
2014|01|03|04|05|06|09|
2015|04|
2016|01|08|
ここは旧えびめもです。えびめも2に移行します(2016/12/1)

2008年03月10日

CAT760 ohci-hcd の rmmod で kernel_dump する

CAT760 kernel-2.6.15 で ohci-hcd を rmmod するとカーネルダンプする
sh7760-ohci sh7760-ohci.0: remove, state 1
usb usb1: USB disconnect, address 1
usb 1-1: USB disconnect, address 2
usb 1-1.1: USB disconnect, address 3
sh7760-ohci sh7760-ohci.0: USB bus 1 deregistered
sh7760-ohci: stopping SH7760 USB Controller
Device 'sh7760-ohci.0' does not have a release() function, it is broken and must be fixed.
Badness in device_release at drivers/base/core.c:83
理由
drivers/usb/host/ohci-sh.c で
void __exit ohci_hcd_sh_cleanup(void)
{
        platform_device_unregister(&usb_hcd_sh_dev);   ←ここでエラー
        platform_driver_unregister(&usb_hcd_sh_driver);
}
リソース(iobase,irq)を unregister しようとしているのでエラーが出ている。本来リソースは unregister しない。リソースの登録を setup760.c に移せば解決する。(TODO)