[Armadillo:08152] Re: Armadillo-460 LANポート増設
佐藤
email@hidden
2012年 7月 20日 (金) 15:48:16 JST
坂口様
高木様
お世話になっております。佐藤です。
routeコマンドの結果を見て気づきました。
IPアドレスの設定が間違っていました。
eth1と eth2 で同じグループのIPアドレスを
設定していました。
初歩的なミスで大変申し訳ありませんでした。
しかしながら、おふたりのアドバイスがなければ
しばらく解決には至らなかったと思います。
どうもありがとうございました。
> 高木です
>
> > ・eth1、eth2 の順で ifup すると
> > ポート1で eth1、eth2 の両方が通信している。
>
> この状況について下記の情報をもらえますか。
>
> ・ifupの実行のログ
> ・ifup実行後のifconfigコマンドの結果
> ・routeコマンドの結果
>
> 以上、よろしくお願いします。
>
> > 佐藤です。
> >
> > 状況の追加報告です。
> >
> > ・CS3にポート1、CS4にポート2を割り当て。
> > ・起動時に、ポート1がeth1、ポート2がeth2で認識されている。
> > ・eth1、eth2 の順で ifup すると
> > ポート1で eth1、eth2 の両方が通信している。
> > ・ifdown eth1 をすると、ポート2 で eth2 の通信が
> > できるようになる。
> >
> > 2ポート同時に使用するためにはどうすればよいか、
> > 僅かな情報でもいただけると助かります。
> > よろしくお願いします。
> >
> > On Thu, 19 Jul 2012 19:29:10 +0900
> > 佐藤 <email@hidden> wrote:
> >
> >> 高木様
> >>
> >> ご指摘ありがとうございました。
> >>
> >> ハード担当に確認したところ
> >> SA8信号の値で、ポートを判別しているとのことでした。
> >>
> >> 試しに、CS3にeth1、CS4にeth2を割り当てて見ましたが
> >> 状況は変わりませんでした。
> >>
> >>
> >> arch/arm/mach-mx25/armadillo460.c は下記のように
> >> 変更しました。
> >>
> >> static struct resource ext_smsc9118_resources2[] = {
> >> [0] = {
> >> .start = CS4_BASE_ADDR,
> >> .end = CS4_BASE_ADDR + 0xff,
> >> .flags = IORESOURCE_MEM,
> >> },
> >> [1] = {
> >> .start = MXC_EXT_INT_BASE + 4,
> >> .end = MXC_EXT_INT_BASE + 4,
> >> .flags = IORESOURCE_IRQ,
> >> },
> >> };
> >>
> >> On Wed, 18 Jul 2012 15:26:23 +0900
> >> SiF 高木 <email@hidden> wrote:
> >>
> >>> 高木と申します。
> >>>
> >>> 460を使用したことはありませんが、
> >>> 気が付いた点を
> >>>
> >>> 回路の結線はどうなっていますでしょうか。
> >>>
> >>> eth1アドレス範囲 0x000 - 0x0FF
> >>> eth2アドレス範囲 0x100 - 0x1FF
> >>>
> >>> CSが同じであるためアドレス範囲でアクセスするデバイスを
> >>> 選択するためにはSA8の信号線を利用しないと
> >>> アクセスが衝突すると思います。
> >>>
> >>> 単純に考えてCS3にeth1、CS4にeth2を割り当ててはどうでしょうか。
> >>> これであればCS以外は公開されている回路で
> >>> eth1とeth2を接続するだけで良いと思います。
> >>>
> >>> 以上、よろしくお願いします。
> >>>
> >>>
> >>>> 佐藤です。
> >>>>
> >>>> 1ポート毎は動作するようになりました。
> >>>>
> >>>> 2ポート同時に使用したいのですが、
> >>>> どのようにすれば良いでしょうか?
> >>>>
> >>>>
> >>>> arch/arm/mach-mx25/armadillo460.c を下記のように
> >>>> 変更しました。
> >>>>
> >>>> 結果は、
> >>>> ・起動時に認識されている。
> >>>> smsc911x: Driver version 2008-10-21.
> >>>> smsc911x-mdio: probed
> >>>> eth1: attached PHY driver [Generic PHY] (mii_bus:phy_addr=0:01, irq=-1)
> >>>> net eth1: MAC Address: 0a:79:c5:b6:60:fa
> >>>> smsc911x: Driver version 2008-10-21.
> >>>> smsc911x-mdio: probed
> >>>> eth2: attached PHY driver [Generic PHY] (mii_bus:phy_addr=1:01, irq=-1)
> >>>> net eth2: MAC Address: 62:11:ed:2c:73:04
> >>>> ・eth1、eth2 どちらか一方を ifup した場合は、動作OK。
> >>>> ・eth1、eth2 の両方を ifup すると、先に ifup した方のポートのみ動作。
> >>>> eth1、eth2 の順で ifup すると、eth1 のポートのみ有効で
> >>>> eth2 も eth1 のリソースを使用している感じです。
> >>>>
> >>>> ----- armadillo460.c -------------------------
> >>>> #include <linux/platform_device.h>
> >>>> #include <linux/smsc911x.h>
> >>>>
> >>>> static struct resource ext_smsc9118_resources[] = {
> >>>> [0] = {
> >>>> .start = CS3_BASE_ADDR,
> >>>> .end = CS3_BASE_ADDR + 0xff,
> >>>> .flags = IORESOURCE_MEM,
> >>>> },
> >>>> [1] = {
> >>>> .start = MXC_EXT_INT_BASE + 3,
> >>>> .end = MXC_EXT_INT_BASE + 3,
> >>>> .flags = IORESOURCE_IRQ,
> >>>> },
> >>>> };
> >>>>
> >>>> static struct smsc911x_platform_config smsc9118_config = {
> >>>> .irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_LOW,
> >>>> .irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL,
> >>>> .flags = SMSC911X_USE_16BIT,
> >>>> };
> >>>>
> >>>> static struct platform_device ext_smsc9118_device = {
> >>>> .name = "smsc911x",
> >>>> .id = 0,
> >>>> .dev = {
> >>>> .platform_data = &smsc9118_config,
> >>>> },
> >>>> .num_resources = ARRAY_SIZE(ext_smsc9118_resources),
> >>>> .resource = ext_smsc9118_resources,
> >>>> };
> >>>>
> >>>> static struct resource ext_smsc9118_resources2[] = {
> >>>> [0] = {
> >>>> .start = CS3_BASE_ADDR + 0x100,
> >>>> .end = CS3_BASE_ADDR + 0x1ff,
> >>>> .flags = IORESOURCE_MEM,
> >>>> },
> >>>> [1] = {
> >>>> .start = MXC_EXT_INT_BASE + 4,
> >>>> .end = MXC_EXT_INT_BASE + 4,
> >>>> .flags = IORESOURCE_IRQ,
> >>>> },
> >>>> };
> >>>>
> >>>> static struct smsc911x_platform_config smsc9118_config2 = {
> >>>> .irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_LOW,
> >>>> .irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL,
> >>>> .flags = SMSC911X_USE_16BIT,
> >>>> };
> >>>>
> >>>> static struct platform_device ext_smsc9118_device2 = {
> >>>> .name = "smsc911x",
> >>>> .id = 1,
> >>>> .dev = {
> >>>> .platform_data = &smsc9118_config2,
> >>>> },
> >>>> .num_resources = ARRAY_SIZE(ext_smsc9118_resources2),
> >>>> .resource = ext_smsc9118_resources2,
> >>>> };
> >>>>
> >>>> static int __init armadillo460_with_smsc9118_init(void)
> >>>> {
> >>>> platform_device_register(&ext_smsc9118_device);
> >>>> platform_device_register(&ext_smsc9118_device2);
> >>>> return 0;
> >>>> }
> >>>> arch_initcall(armadillo460_with_smsc9118_init);
> >>>> ----- armadillo460.c -------------------------
> >>>>
> >>>> 以上、よろしくお願いします。
> >>>>
> >>>> On Tue, 17 Jul 2012 20:19:33 +0900
> >>>> 佐藤 <email@hidden> wrote:
> >>>>
> >>>>> お世話になっております。佐藤と申します。
> >>>>>
> >>>>> Armadillo-460にLANポートを2ポート増設することは可能でしょうか?
> >>>>>
> >>>>> Howto http://armadillo.atmark-techno.com/howto/a460-lan9118 を参考に、
> >>>>> 1ポート増設することはできました。
> >>>>>
> >>>>> 以上、よろしくお願いします。
> >>>>>
> >>>>> _______________________________________________
> >>>>> armadillo mailing list
> >>>>> email@hidden
> >>>>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> armadillo mailing list
> >>>> email@hidden
> >>>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> >>>>
> >>>
> >>> _______________________________________________
> >>> armadillo mailing list
> >>> email@hidden
> >>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> >>
> >>
> >> _______________________________________________
> >> armadillo mailing list
> >> email@hidden
> >> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> >
> >
> > _______________________________________________
> > armadillo mailing list
> > email@hidden
> > http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> >
>
>
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
armadillo メーリングリストの案内