[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[plamo:13217] Re: USBを有効にする方法
-
From:Shun-ichi TAHARA (田原 俊一)
-
Date:Mon, 4 Mar 2002 13:51:59 +0900
- Subject: [plamo:13217] Re: USBを有効にする方法
- From: Shun-ichi TAHARA (田原 俊一)<jado@xxxxxxxxxxxxxxx>
- Date: Mon, 4 Mar 2002 13:51:59 +0900
- Posted: Mon, 04 Mar 2002 13:51:55 +0900 (JST)
From: Akinori Nakamura <a-naka@super.win.ne.jp>
Message-Id: <1015209243.32646.11249_Mocchan.a-naka@win.ne.jp>
> ThinkPAD 235のUSBポートに点じピンディスプレイを接続して使
> いたいと思っています。
USBのようなPCI系デバイスは、本来ならブート時に初期化されて、適宜リソー
ス(IRQやIOメモリなど)が割り当てられているるべきものですが、TP235の
OHCI(というよりBIOS)は特殊で、OHCIのIOメモリが設定されていません。
ですので、OSが自前でリソースを割り当てる(俗に言う Plug and Play OSです
ね) Windows98以降や、Linux2.4以降でないと、USBをうまく扱うことができま
せん。
同様に、一部の Vaio Noteでも、IRQが設定されていないという問題があるよ
うです。TP235の場合は、IRQが振られているだけマシだという説もあります。
> USB関連のページ、自分でも読んでみたのですが、よくわかってい
> ません。やはりカーネルを2.4にしないとだめでしょうか。
カーネルが2.2の場合、初期化時に無理矢理IOメモリを割り当てれば動作した
りします。大昔、usb-ohci.c に下記のようなパッチを当てて動かしていた実
績はあります。
# cd /usr/src/linux/drivers/usb
# patch -p1 < (パッチファイル)
で当てることができますが、いかんせんパッチ自体が 2.2.14 + 2.3.44 バッ
クポートパッチ用ですので、最近の2.2系カーネルでマトモに動くのかは未検
証です。
ちなみに、もし下記パッチが当たれば、usb-ohci.o に mem=xxxxxx とパラメー
タを与えることができます。省略時には 0x60000000 が使われますが、TP235
ならこれで問題ないと思いますので、何も気にせずにモジュールを組み込めば
いいはずです。
_______________________________
田原 俊一 jado@flowernet.gr.jp, shunichi_tahara@zenrin.co.jp
http://flowernet.gr.jp/jado/
FingerPrint: 16 9E 70 3B 05 86 5D 08 B8 4C 47 3A E7 E9 8E D9
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
[以下パッチ]
*** usb.orig/usb-ohci.c Mon Feb 14 20:35:32 2000
--- usb/usb-ohci.c Tue Feb 15 16:58:39 2000
***************
*** 1659,1664 ****
--- 1659,1667 ----
/*-------------------------------------------------------------------------*/
+ static u_int mem = 0;
+ MODULE_PARM(mem, "i");
+
static int hc_start_ohci (struct pci_dev * dev)
{
u32 cmd;
***************
*** 1676,1681 ****
--- 1679,1693 ----
pci_write_config_dword(dev, PCI_COMMAND, cmd);
pci_set_master (dev);
+
+ if (!mem_base && !mem)
+ mem = 0x60000000; /* default mem_base */
+ if (mem) {
+ mem &= PCI_BASE_ADDRESS_MEM_MASK;
+ pci_write_config_dword(dev, PCI_BASE_ADDRESS_0, mem);
+ mem_base = mem;
+ }
+
mem_base = (unsigned long) ioremap_nocache (mem_base, 4096);
if (!mem_base) {
- Follow-Ups
-
- [plamo:13241] Re: USBを有効にする方法, Akinori Nakamura
- References
-
- [plamo:13212] USBを有効にする方法, Akinori Nakamura
[検索ページ]
[メール一覧]
Plamo ML 公開システム