* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': [not found] <200711012024.57412.toralf.foerster@gmx.de> @ 2007-11-01 21:11 ` Randy Dunlap 2007-11-01 23:32 ` David Brownell 2007-11-01 22:25 ` [2.6 patch] let USB_USBNET always select MII Adrian Bunk 1 sibling, 1 reply; 25+ messages in thread From: Randy Dunlap @ 2007-11-01 21:11 UTC (permalink / raw) To: Toralf Förster, dbrownell; +Cc: linux-kernel, netdev On Thu, 1 Nov 2007 20:24:54 +0100 Toralf Förster wrote: [adding netdev] > Hello, > > the build with the attached .config failed, make ends with: > ... > CC arch/x86/lib/usercopy_32.o > AR arch/x86/lib/lib.a > GEN .version > CHK include/linux/compile.h > UPD include/linux/compile.h > CC init/version.o > LD init/built-in.o > LD .tmp_vmlinux1 > drivers/built-in.o: In function `usbnet_set_settings': > (.text+0xf1876): undefined reference to `mii_ethtool_sset' > drivers/built-in.o: In function `usbnet_get_settings': > (.text+0xf1836): undefined reference to `mii_ethtool_gset' > drivers/built-in.o: In function `usbnet_get_link': > (.text+0xf18d6): undefined reference to `mii_link_ok' > drivers/built-in.o: In function `usbnet_nway_reset': > (.text+0xf18f6): undefined reference to `mii_nway_restart' > make: *** [.tmp_vmlinux1] Error 1 The MII functions aren't available unless NET_ETHERNET=y. Howver, the MII functions aren't always needed... David, any ideas on this one? config USB_USBNET tristate "Multi-purpose USB Networking Framework" + depends on NET_ETHERNET if USB_USBNET_MII != n select MII if USB_USBNET_MII != n would be handy. But invalid. Hm, wait. Haven't we seen this before and decided that MII should be made more generally available? I.e., not depend on NET_ETHERNET? > The build was made with : > $> make mrproper && make rndconfig && <tweak config file> && make oldconfig && make > > Here's the config: > > # > # Automatically generated make config: don't edit > # Linux kernel version: 2.6.24-rc1 > # Thu Nov 1 19:33:29 2007 > # > CONFIG_X86_32=y > CONFIG_GENERIC_TIME=y > CONFIG_GENERIC_CMOS_UPDATE=y > CONFIG_CLOCKSOURCE_WATCHDOG=y > CONFIG_GENERIC_CLOCKEVENTS=y > CONFIG_LOCKDEP_SUPPORT=y > CONFIG_STACKTRACE_SUPPORT=y > CONFIG_SEMAPHORE_SLEEPERS=y > CONFIG_X86=y > CONFIG_MMU=y > CONFIG_ZONE_DMA=y > CONFIG_QUICKLIST=y > CONFIG_GENERIC_ISA_DMA=y > CONFIG_GENERIC_IOMAP=y > CONFIG_GENERIC_BUG=y > CONFIG_GENERIC_HWEIGHT=y > CONFIG_ARCH_MAY_HAVE_PC_FDC=y > CONFIG_DMI=y > CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" > > # > # General setup > # > # CONFIG_EXPERIMENTAL is not set > CONFIG_BROKEN_ON_SMP=y > CONFIG_LOCK_KERNEL=y > CONFIG_INIT_ENV_ARG_LIMIT=32 > CONFIG_LOCALVERSION="" > # CONFIG_LOCALVERSION_AUTO is not set > CONFIG_SWAP=y > CONFIG_SYSVIPC=y > CONFIG_SYSVIPC_SYSCTL=y > CONFIG_BSD_PROCESS_ACCT=y > # CONFIG_BSD_PROCESS_ACCT_V3 is not set > # CONFIG_TASKSTATS is not set > CONFIG_AUDIT=y > CONFIG_AUDITSYSCALL=y > # CONFIG_IKCONFIG is not set > CONFIG_LOG_BUF_SHIFT=14 > CONFIG_CGROUPS=y > # CONFIG_CGROUP_DEBUG is not set > CONFIG_CGROUP_NS=y > # CONFIG_CGROUP_CPUACCT is not set > # CONFIG_FAIR_GROUP_SCHED is not set > CONFIG_SYSFS_DEPRECATED=y > CONFIG_RELAY=y > # CONFIG_BLK_DEV_INITRD is not set > CONFIG_SYSCTL=y > # CONFIG_EMBEDDED is not set > CONFIG_UID16=y > CONFIG_SYSCTL_SYSCALL=y > CONFIG_KALLSYMS=y > # CONFIG_KALLSYMS_EXTRA_PASS is not set > CONFIG_HOTPLUG=y > CONFIG_PRINTK=y > CONFIG_BUG=y > CONFIG_ELF_CORE=y > CONFIG_BASE_FULL=y > CONFIG_FUTEX=y > CONFIG_ANON_INODES=y > CONFIG_EPOLL=y > CONFIG_SIGNALFD=y > CONFIG_EVENTFD=y > CONFIG_SHMEM=y > CONFIG_VM_EVENT_COUNTERS=y > CONFIG_SLAB=y > # CONFIG_SLUB is not set > # CONFIG_SLOB is not set > CONFIG_RT_MUTEXES=y > # CONFIG_TINY_SHMEM is not set > CONFIG_BASE_SMALL=0 > CONFIG_MODULES=y > # CONFIG_MODULE_UNLOAD is not set > CONFIG_MODVERSIONS=y > # CONFIG_MODULE_SRCVERSION_ALL is not set > # CONFIG_KMOD is not set > CONFIG_BLOCK=y > # CONFIG_LBD is not set > CONFIG_BLK_DEV_IO_TRACE=y > # CONFIG_LSF is not set > > # > # IO Schedulers > # > CONFIG_IOSCHED_NOOP=y > # CONFIG_IOSCHED_AS is not set > # CONFIG_IOSCHED_DEADLINE is not set > CONFIG_IOSCHED_CFQ=y > # CONFIG_DEFAULT_AS is not set > # CONFIG_DEFAULT_DEADLINE is not set > # CONFIG_DEFAULT_CFQ is not set > CONFIG_DEFAULT_NOOP=y > CONFIG_DEFAULT_IOSCHED="noop" > > # > # Processor type and features > # > CONFIG_TICK_ONESHOT=y > CONFIG_NO_HZ=y > # CONFIG_HIGH_RES_TIMERS is not set > CONFIG_GENERIC_CLOCKEVENTS_BUILD=y > # CONFIG_SMP is not set > CONFIG_X86_PC=y > # CONFIG_X86_ELAN is not set > # CONFIG_X86_VOYAGER is not set > # CONFIG_X86_NUMAQ is not set > # CONFIG_X86_SUMMIT is not set > # CONFIG_X86_BIGSMP is not set > # CONFIG_X86_VISWS is not set > # CONFIG_X86_GENERICARCH is not set > # CONFIG_X86_ES7000 is not set > # CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER is not set > CONFIG_PARAVIRT_GUEST=y > # CONFIG_XEN is not set > # CONFIG_VMI is not set > # CONFIG_M386 is not set > # CONFIG_M486 is not set > # CONFIG_M586 is not set > # CONFIG_M586TSC is not set > # CONFIG_M586MMX is not set > # CONFIG_M686 is not set > # CONFIG_MPENTIUMII is not set > # CONFIG_MPENTIUMIII is not set > CONFIG_MPENTIUMM=y > # CONFIG_MCORE2 is not set > # CONFIG_MPENTIUM4 is not set > # CONFIG_MK6 is not set > # CONFIG_MK7 is not set > # CONFIG_MK8 is not set > # CONFIG_MCRUSOE is not set > # CONFIG_MEFFICEON is not set > # CONFIG_MWINCHIPC6 is not set > # CONFIG_MWINCHIP2 is not set > # CONFIG_MWINCHIP3D is not set > # CONFIG_MGEODEGX1 is not set > # CONFIG_MGEODE_LX is not set > # CONFIG_MCYRIXIII is not set > # CONFIG_MVIAC3_2 is not set > # CONFIG_MVIAC7 is not set > CONFIG_X86_GENERIC=y > CONFIG_X86_CMPXCHG=y > CONFIG_X86_L1_CACHE_SHIFT=7 > CONFIG_X86_XADD=y > CONFIG_RWSEM_XCHGADD_ALGORITHM=y > # CONFIG_ARCH_HAS_ILOG2_U32 is not set > # CONFIG_ARCH_HAS_ILOG2_U64 is not set > CONFIG_GENERIC_CALIBRATE_DELAY=y > CONFIG_X86_WP_WORKS_OK=y > CONFIG_X86_INVLPG=y > CONFIG_X86_BSWAP=y > CONFIG_X86_POPAD_OK=y > CONFIG_X86_GOOD_APIC=y > CONFIG_X86_INTEL_USERCOPY=y > CONFIG_X86_USE_PPRO_CHECKSUM=y > CONFIG_X86_TSC=y > CONFIG_X86_CMOV=y > CONFIG_X86_MINIMUM_CPU_FAMILY=4 > CONFIG_HPET_TIMER=y > # CONFIG_PREEMPT_NONE is not set > # CONFIG_PREEMPT_VOLUNTARY is not set > CONFIG_PREEMPT=y > # CONFIG_PREEMPT_BKL is not set > # CONFIG_X86_UP_APIC is not set > # CONFIG_X86_MCE is not set > CONFIG_VM86=y > CONFIG_TOSHIBA=m > CONFIG_I8K=m > CONFIG_X86_REBOOTFIXUPS=y > # CONFIG_MICROCODE is not set > CONFIG_X86_MSR=y > # CONFIG_X86_CPUID is not set > > # > # Firmware Drivers > # > CONFIG_EDD=y > CONFIG_DELL_RBU=y > CONFIG_DCDBAS=y > # CONFIG_DMIID is not set > CONFIG_NOHIGHMEM=y > # CONFIG_HIGHMEM4G is not set > # CONFIG_HIGHMEM64G is not set > CONFIG_PAGE_OFFSET=0xC0000000 > CONFIG_X86_PAE=y > CONFIG_ARCH_POPULATES_NODE_MAP=y > CONFIG_FLATMEM=y > CONFIG_FLAT_NODE_MEM_MAP=y > # CONFIG_SPARSEMEM_STATIC is not set > # CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set > CONFIG_SPLIT_PTLOCK_CPUS=4 > CONFIG_RESOURCES_64BIT=y > CONFIG_ZONE_DMA_FLAG=1 > CONFIG_BOUNCE=y > CONFIG_NR_QUICK=1 > CONFIG_VIRT_TO_BUS=y > CONFIG_MATH_EMULATION=y > CONFIG_MTRR=y > # CONFIG_SECCOMP is not set > # CONFIG_HZ_100 is not set > # CONFIG_HZ_250 is not set > CONFIG_HZ_300=y > # CONFIG_HZ_1000 is not set > CONFIG_HZ=300 > # CONFIG_KEXEC is not set > CONFIG_PHYSICAL_START=0x100000 > CONFIG_PHYSICAL_ALIGN=0x100000 > # CONFIG_COMPAT_VDSO is not set > > # > # Power management options (ACPI, APM) > # > CONFIG_PM=y > CONFIG_PM_LEGACY=y > # CONFIG_PM_DEBUG is not set > CONFIG_PM_SLEEP=y > CONFIG_SUSPEND_UP_POSSIBLE=y > # CONFIG_SUSPEND is not set > CONFIG_HIBERNATION_UP_POSSIBLE=y > CONFIG_HIBERNATION=y > CONFIG_PM_STD_PARTITION="" > # CONFIG_ACPI is not set > # CONFIG_APM is not set > > # > # CPU Frequency scaling > # > # CONFIG_CPU_FREQ is not set > # CONFIG_CPU_IDLE is not set > > # > # Bus options (PCI, PCMCIA, EISA, MCA, ISA) > # > CONFIG_PCI=y > # CONFIG_PCI_GOBIOS is not set > CONFIG_PCI_GOMMCONFIG=y > # CONFIG_PCI_GODIRECT is not set > # CONFIG_PCI_GOANY is not set > CONFIG_PCI_DOMAINS=y > # CONFIG_PCIEPORTBUS is not set > # CONFIG_ARCH_SUPPORTS_MSI is not set > CONFIG_ISA_DMA_API=y > # CONFIG_ISA is not set > CONFIG_MCA=y > # CONFIG_MCA_LEGACY is not set > CONFIG_SCx200=m > CONFIG_SCx200HR_TIMER=m > CONFIG_K8_NB=y > # CONFIG_PCCARD is not set > > # > # Executable file formats > # > CONFIG_BINFMT_ELF=y > # CONFIG_BINFMT_AOUT is not set > CONFIG_BINFMT_MISC=y > > # > # Networking > # > CONFIG_NET=y > > # > # Networking options > # > CONFIG_PACKET=m > # CONFIG_PACKET_MMAP is not set > CONFIG_UNIX=m > CONFIG_XFRM=y > # CONFIG_XFRM_USER is not set > CONFIG_NET_KEY=m > CONFIG_INET=y > # CONFIG_IP_MULTICAST is not set > CONFIG_IP_ADVANCED_ROUTER=y > CONFIG_ASK_IP_FIB_HASH=y > # CONFIG_IP_FIB_TRIE is not set > CONFIG_IP_FIB_HASH=y > # CONFIG_IP_MULTIPLE_TABLES is not set > CONFIG_IP_ROUTE_MULTIPATH=y > # CONFIG_IP_ROUTE_VERBOSE is not set > CONFIG_IP_PNP=y > # CONFIG_IP_PNP_DHCP is not set > CONFIG_IP_PNP_BOOTP=y > CONFIG_IP_PNP_RARP=y > # CONFIG_NET_IPIP is not set > # CONFIG_NET_IPGRE is not set > CONFIG_SYN_COOKIES=y > CONFIG_INET_AH=m > CONFIG_INET_ESP=y > CONFIG_INET_IPCOMP=y > CONFIG_INET_XFRM_TUNNEL=y > CONFIG_INET_TUNNEL=y > # CONFIG_INET_XFRM_MODE_TRANSPORT is not set > # CONFIG_INET_XFRM_MODE_TUNNEL is not set > # CONFIG_INET_XFRM_MODE_BEET is not set > CONFIG_INET_LRO=y > CONFIG_INET_DIAG=y > CONFIG_INET_TCP_DIAG=y > CONFIG_TCP_CONG_ADVANCED=y > CONFIG_TCP_CONG_BIC=m > CONFIG_TCP_CONG_CUBIC=m > # CONFIG_TCP_CONG_WESTWOOD is not set > CONFIG_TCP_CONG_HTCP=y > # CONFIG_DEFAULT_BIC is not set > # CONFIG_DEFAULT_CUBIC is not set > # CONFIG_DEFAULT_HTCP is not set > # CONFIG_DEFAULT_VEGAS is not set > # CONFIG_DEFAULT_WESTWOOD is not set > CONFIG_DEFAULT_RENO=y > CONFIG_DEFAULT_TCP_CONG="reno" > # CONFIG_IP_VS is not set > CONFIG_IPV6=y > CONFIG_IPV6_PRIVACY=y > CONFIG_IPV6_ROUTER_PREF=y > # CONFIG_INET6_AH is not set > CONFIG_INET6_ESP=y > CONFIG_INET6_IPCOMP=y > CONFIG_INET6_XFRM_TUNNEL=y > CONFIG_INET6_TUNNEL=y > CONFIG_INET6_XFRM_MODE_TRANSPORT=y > # CONFIG_INET6_XFRM_MODE_TUNNEL is not set > # CONFIG_INET6_XFRM_MODE_BEET is not set > # CONFIG_IPV6_SIT is not set > # CONFIG_IPV6_TUNNEL is not set > # CONFIG_NETWORK_SECMARK is not set > CONFIG_NETFILTER=y > # CONFIG_NETFILTER_DEBUG is not set > # CONFIG_BRIDGE_NETFILTER is not set > > # > # Core Netfilter Configuration > # > CONFIG_NETFILTER_NETLINK=y > CONFIG_NETFILTER_NETLINK_QUEUE=y > # CONFIG_NETFILTER_NETLINK_LOG is not set > CONFIG_NF_CONNTRACK_ENABLED=m > CONFIG_NF_CONNTRACK=m > # CONFIG_NF_CT_ACCT is not set > CONFIG_NF_CONNTRACK_MARK=y > # CONFIG_NF_CONNTRACK_AMANDA is not set > CONFIG_NF_CONNTRACK_FTP=m > # CONFIG_NF_CONNTRACK_IRC is not set > # CONFIG_NF_CONNTRACK_PPTP is not set > CONFIG_NF_CONNTRACK_TFTP=m > CONFIG_NETFILTER_XTABLES=y > # CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set > CONFIG_NETFILTER_XT_TARGET_MARK=m > # CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set > CONFIG_NETFILTER_XT_TARGET_NFLOG=y > # CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set > CONFIG_NETFILTER_XT_TARGET_TRACE=m > CONFIG_NETFILTER_XT_TARGET_TCPMSS=m > CONFIG_NETFILTER_XT_MATCH_COMMENT=y > # CONFIG_NETFILTER_XT_MATCH_CONNBYTES is not set > # CONFIG_NETFILTER_XT_MATCH_CONNLIMIT is not set > CONFIG_NETFILTER_XT_MATCH_CONNMARK=m > CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m > # CONFIG_NETFILTER_XT_MATCH_DCCP is not set > CONFIG_NETFILTER_XT_MATCH_DSCP=m > CONFIG_NETFILTER_XT_MATCH_ESP=m > # CONFIG_NETFILTER_XT_MATCH_HELPER is not set > # CONFIG_NETFILTER_XT_MATCH_LENGTH is not set > # CONFIG_NETFILTER_XT_MATCH_LIMIT is not set > # CONFIG_NETFILTER_XT_MATCH_MAC is not set > CONFIG_NETFILTER_XT_MATCH_MARK=y > CONFIG_NETFILTER_XT_MATCH_POLICY=y > # CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set > CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y > CONFIG_NETFILTER_XT_MATCH_QUOTA=m > # CONFIG_NETFILTER_XT_MATCH_REALM is not set > CONFIG_NETFILTER_XT_MATCH_STATE=m > # CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set > CONFIG_NETFILTER_XT_MATCH_STRING=m > CONFIG_NETFILTER_XT_MATCH_TCPMSS=m > CONFIG_NETFILTER_XT_MATCH_TIME=m > CONFIG_NETFILTER_XT_MATCH_U32=m > CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y > > # > # IP: Netfilter Configuration > # > CONFIG_NF_CONNTRACK_IPV4=m > CONFIG_NF_CONNTRACK_PROC_COMPAT=y > CONFIG_IP_NF_QUEUE=m > CONFIG_IP_NF_IPTABLES=m > CONFIG_IP_NF_MATCH_IPRANGE=m > # CONFIG_IP_NF_MATCH_TOS is not set > # CONFIG_IP_NF_MATCH_RECENT is not set > # CONFIG_IP_NF_MATCH_ECN is not set > # CONFIG_IP_NF_MATCH_AH is not set > # CONFIG_IP_NF_MATCH_TTL is not set > # CONFIG_IP_NF_MATCH_OWNER is not set > # CONFIG_IP_NF_MATCH_ADDRTYPE is not set > # CONFIG_IP_NF_FILTER is not set > CONFIG_IP_NF_TARGET_LOG=m > # CONFIG_IP_NF_TARGET_ULOG is not set > CONFIG_NF_NAT=m > CONFIG_NF_NAT_NEEDED=y > CONFIG_IP_NF_TARGET_MASQUERADE=m > CONFIG_IP_NF_TARGET_REDIRECT=m > # CONFIG_IP_NF_TARGET_NETMAP is not set > # CONFIG_IP_NF_TARGET_SAME is not set > CONFIG_NF_NAT_FTP=m > # CONFIG_NF_NAT_IRC is not set > CONFIG_NF_NAT_TFTP=m > # CONFIG_NF_NAT_AMANDA is not set > # CONFIG_NF_NAT_PPTP is not set > # CONFIG_NF_NAT_H323 is not set > # CONFIG_NF_NAT_SIP is not set > # CONFIG_IP_NF_MANGLE is not set > CONFIG_IP_NF_RAW=m > CONFIG_IP_NF_ARPTABLES=y > CONFIG_IP_NF_ARPFILTER=m > # CONFIG_IP_NF_ARP_MANGLE is not set > > # > # Bridge: Netfilter Configuration > # > CONFIG_BRIDGE_NF_EBTABLES=m > CONFIG_BRIDGE_EBT_BROUTE=m > CONFIG_BRIDGE_EBT_T_FILTER=m > CONFIG_BRIDGE_EBT_T_NAT=m > # CONFIG_BRIDGE_EBT_802_3 is not set > # CONFIG_BRIDGE_EBT_AMONG is not set > CONFIG_BRIDGE_EBT_ARP=m > # CONFIG_BRIDGE_EBT_IP is not set > # CONFIG_BRIDGE_EBT_LIMIT is not set > # CONFIG_BRIDGE_EBT_MARK is not set > CONFIG_BRIDGE_EBT_PKTTYPE=m > CONFIG_BRIDGE_EBT_STP=m > # CONFIG_BRIDGE_EBT_VLAN is not set > # CONFIG_BRIDGE_EBT_ARPREPLY is not set > # CONFIG_BRIDGE_EBT_DNAT is not set > CONFIG_BRIDGE_EBT_MARK_T=m > # CONFIG_BRIDGE_EBT_REDIRECT is not set > CONFIG_BRIDGE_EBT_SNAT=m > # CONFIG_BRIDGE_EBT_LOG is not set > CONFIG_BRIDGE_EBT_ULOG=m > CONFIG_BRIDGE=m > CONFIG_VLAN_8021Q=m > CONFIG_DECNET=y > CONFIG_LLC=y > # CONFIG_LLC2 is not set > CONFIG_IPX=y > # CONFIG_IPX_INTERN is not set > # CONFIG_ATALK is not set > CONFIG_NET_SCHED=y > > # > # Queueing/Scheduling > # > # CONFIG_NET_SCH_CBQ is not set > # CONFIG_NET_SCH_HTB is not set > CONFIG_NET_SCH_HFSC=m > CONFIG_NET_SCH_PRIO=y > CONFIG_NET_SCH_RR=m > # CONFIG_NET_SCH_RED is not set > CONFIG_NET_SCH_SFQ=m > CONFIG_NET_SCH_TEQL=m > CONFIG_NET_SCH_TBF=y > CONFIG_NET_SCH_GRED=m > # CONFIG_NET_SCH_DSMARK is not set > # CONFIG_NET_SCH_NETEM is not set > CONFIG_NET_SCH_INGRESS=m > > # > # Classification > # > CONFIG_NET_CLS=y > CONFIG_NET_CLS_BASIC=m > CONFIG_NET_CLS_TCINDEX=y > CONFIG_NET_CLS_ROUTE4=m > CONFIG_NET_CLS_ROUTE=y > CONFIG_NET_CLS_FW=m > # CONFIG_NET_CLS_U32 is not set > CONFIG_NET_CLS_RSVP=y > CONFIG_NET_CLS_RSVP6=m > CONFIG_NET_EMATCH=y > CONFIG_NET_EMATCH_STACK=32 > CONFIG_NET_EMATCH_CMP=m > CONFIG_NET_EMATCH_NBYTE=y > CONFIG_NET_EMATCH_U32=m > CONFIG_NET_EMATCH_META=y > # CONFIG_NET_EMATCH_TEXT is not set > CONFIG_NET_CLS_ACT=y > CONFIG_NET_ACT_POLICE=y > CONFIG_NET_ACT_GACT=m > # CONFIG_GACT_PROB is not set > # CONFIG_NET_ACT_MIRRED is not set > # CONFIG_NET_ACT_IPT is not set > CONFIG_NET_ACT_NAT=m > # CONFIG_NET_ACT_PEDIT is not set > # CONFIG_NET_ACT_SIMP is not set > CONFIG_NET_CLS_POLICE=y > # CONFIG_NET_CLS_IND is not set > CONFIG_NET_SCH_FIFO=y > > # > # Network testing > # > CONFIG_NET_PKTGEN=y > # CONFIG_HAMRADIO is not set > # CONFIG_IRDA is not set > CONFIG_BT=y > CONFIG_BT_L2CAP=m > CONFIG_BT_SCO=m > # CONFIG_BT_RFCOMM is not set > # CONFIG_BT_BNEP is not set > # CONFIG_BT_HIDP is not set > > # > # Bluetooth device drivers > # > # CONFIG_BT_HCIUSB is not set > # CONFIG_BT_HCIBTSDIO is not set > CONFIG_BT_HCIUART=y > # CONFIG_BT_HCIUART_H4 is not set > CONFIG_BT_HCIUART_BCSP=y > CONFIG_BT_HCIUART_LL=y > # CONFIG_BT_HCIBCM203X is not set > CONFIG_BT_HCIBPA10X=m > CONFIG_BT_HCIBFUSB=m > CONFIG_BT_HCIVHCI=y > > # > # Wireless > # > CONFIG_CFG80211=m > CONFIG_NL80211=y > CONFIG_WIRELESS_EXT=y > # CONFIG_IEEE80211 is not set > CONFIG_RFKILL=m > # CONFIG_RFKILL_INPUT is not set > > # > # Device Drivers > # > > # > # Generic Driver Options > # > CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" > CONFIG_STANDALONE=y > CONFIG_PREVENT_FIRMWARE_BUILD=y > CONFIG_FW_LOADER=y > # CONFIG_SYS_HYPERVISOR is not set > CONFIG_CONNECTOR=m > # CONFIG_MTD is not set > CONFIG_PARPORT=y > # CONFIG_PARPORT_PC is not set > # CONFIG_PARPORT_GSC is not set > CONFIG_PARPORT_AX88796=m > CONFIG_PARPORT_1284=y > CONFIG_PARPORT_NOT_PC=y > # CONFIG_BLK_DEV is not set > CONFIG_MISC_DEVICES=y > # CONFIG_PHANTOM is not set > CONFIG_EEPROM_93CX6=y > CONFIG_SGI_IOC4=m > CONFIG_IDE=y > CONFIG_BLK_DEV_IDE=m > > # > # Please see Documentation/ide.txt for help/info on IDE drives > # > # CONFIG_BLK_DEV_IDE_SATA is not set > CONFIG_BLK_DEV_HD_IDE=y > # CONFIG_BLK_DEV_IDEDISK is not set > CONFIG_IDEDISK_MULTI_MODE=y > # CONFIG_BLK_DEV_IDECD is not set > CONFIG_BLK_DEV_IDEFLOPPY=m > CONFIG_IDE_TASK_IOCTL=y > # CONFIG_IDE_PROC_FS is not set > > # > # IDE chipset support/bugfixes > # > # CONFIG_IDE_GENERIC is not set > # CONFIG_BLK_DEV_PLATFORM is not set > # CONFIG_BLK_DEV_CMD640 is not set > > # > # PCI IDE chipsets support > # > CONFIG_BLK_DEV_IDEPCI=y > # CONFIG_IDEPCI_SHARE_IRQ is not set > # CONFIG_IDEPCI_PCIBUS_ORDER is not set > CONFIG_BLK_DEV_OFFBOARD=y > # CONFIG_BLK_DEV_GENERIC is not set > # CONFIG_BLK_DEV_RZ1000 is not set > CONFIG_BLK_DEV_IDEDMA_PCI=y > # CONFIG_BLK_DEV_AEC62XX is not set > CONFIG_BLK_DEV_ALI15X3=m > CONFIG_WDC_ALI15X3=y > CONFIG_BLK_DEV_AMD74XX=m > CONFIG_BLK_DEV_ATIIXP=m > CONFIG_BLK_DEV_CMD64X=m > # CONFIG_BLK_DEV_TRIFLEX is not set > CONFIG_BLK_DEV_CY82C693=m > # CONFIG_BLK_DEV_CS5530 is not set > CONFIG_BLK_DEV_CS5535=m > CONFIG_BLK_DEV_HPT34X=m > CONFIG_BLK_DEV_HPT366=m > CONFIG_BLK_DEV_JMICRON=m > # CONFIG_BLK_DEV_SC1200 is not set > CONFIG_BLK_DEV_PIIX=m > # CONFIG_BLK_DEV_IT8213 is not set > # CONFIG_BLK_DEV_IT821X is not set > CONFIG_BLK_DEV_NS87415=m > CONFIG_BLK_DEV_PDC202XX_OLD=m > # CONFIG_PDC202XX_BURST is not set > # CONFIG_BLK_DEV_PDC202XX_NEW is not set > CONFIG_BLK_DEV_SVWKS=m > CONFIG_BLK_DEV_SIIMAGE=m > CONFIG_BLK_DEV_SIS5513=m > CONFIG_BLK_DEV_SLC90E66=m > # CONFIG_BLK_DEV_TRM290 is not set > # CONFIG_BLK_DEV_VIA82CXXX is not set > # CONFIG_BLK_DEV_TC86C001 is not set > # CONFIG_IDE_ARM is not set > CONFIG_BLK_DEV_IDEDMA=y > CONFIG_IDE_ARCH_OBSOLETE_INIT=y > CONFIG_BLK_DEV_HD=y > > # > # SCSI device support > # > CONFIG_RAID_ATTRS=y > # CONFIG_SCSI is not set > # CONFIG_SCSI_DMA is not set > # CONFIG_SCSI_NETLINK is not set > # CONFIG_ATA is not set > CONFIG_MD=y > CONFIG_BLK_DEV_MD=m > # CONFIG_MD_LINEAR is not set > CONFIG_MD_RAID0=m > # CONFIG_MD_RAID1 is not set > # CONFIG_MD_RAID456 is not set > CONFIG_MD_MULTIPATH=m > CONFIG_MD_FAULTY=m > # CONFIG_BLK_DEV_DM is not set > # CONFIG_FUSION is not set > > # > # IEEE 1394 (FireWire) support > # > > # > # An alternative FireWire stack is available with EXPERIMENTAL=y > # > CONFIG_IEEE1394=m > > # > # Subsystem Options > # > # CONFIG_IEEE1394_VERBOSEDEBUG is not set > > # > # Controllers > # > > # > # Texas Instruments PCILynx requires I2C > # > CONFIG_IEEE1394_OHCI1394=m > > # > # Protocols > # > # CONFIG_IEEE1394_VIDEO1394 is not set > > # > # SBP-2 support (for storage devices) requires SCSI > # > # CONFIG_IEEE1394_ETH1394_ROM_ENTRY is not set > # CONFIG_IEEE1394_DV1394 is not set > CONFIG_IEEE1394_RAWIO=m > # CONFIG_I2O is not set > # CONFIG_MACINTOSH_DRIVERS is not set > CONFIG_NETDEVICES=y > CONFIG_NETDEVICES_MULTIQUEUE=y > CONFIG_IFB=m > CONFIG_DUMMY=m > CONFIG_BONDING=y > # CONFIG_EQUALIZER is not set > # CONFIG_TUN is not set > CONFIG_VETH=m > # CONFIG_ARCNET is not set > # CONFIG_NET_ETHERNET is not set > CONFIG_MII=m > CONFIG_NETDEV_1000=y > # CONFIG_ACENIC is not set > # CONFIG_DL2K is not set > CONFIG_E1000=m > CONFIG_E1000_NAPI=y > # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set > # CONFIG_E1000E is not set > CONFIG_NS83820=m > CONFIG_HAMACHI=m > # CONFIG_R8169 is not set > CONFIG_SIS190=m > CONFIG_SKGE=y > # CONFIG_SKGE_DEBUG is not set > CONFIG_SKY2=m > # CONFIG_SKY2_DEBUG is not set > CONFIG_SK98LIN=m > # CONFIG_VIA_VELOCITY is not set > CONFIG_TIGON3=y > CONFIG_BNX2=y > CONFIG_QLA3XXX=m > CONFIG_NETDEV_10000=y > CONFIG_CHELSIO_T1=m > CONFIG_CHELSIO_T1_1G=y > # CONFIG_CHELSIO_T1_NAPI is not set > CONFIG_CHELSIO_T3=y > CONFIG_IXGBE=m > CONFIG_IXGB=y > CONFIG_S2IO=y > CONFIG_MYRI10GE=y > # CONFIG_NETXEN_NIC is not set > CONFIG_NIU=y > # CONFIG_MLX4_CORE is not set > CONFIG_TEHUTI=m > # CONFIG_TR is not set > > # > # Wireless LAN > # > # CONFIG_WLAN_PRE80211 is not set > # CONFIG_WLAN_80211 is not set > > # > # USB Network Adapters > # > # CONFIG_USB_KAWETH is not set > # CONFIG_USB_PEGASUS is not set > # CONFIG_USB_USBNET_MII is not set > CONFIG_USB_USBNET=y > CONFIG_USB_NET_CDCETHER=m > # CONFIG_USB_NET_DM9601 is not set > CONFIG_USB_NET_GL620A=m > CONFIG_USB_NET_NET1080=y > # CONFIG_USB_NET_MCS7830 is not set > # CONFIG_USB_NET_CDC_SUBSET is not set > CONFIG_USB_NET_ZAURUS=m > CONFIG_WAN=y > CONFIG_LANMEDIA=y > CONFIG_HDLC=y > CONFIG_HDLC_RAW=m > CONFIG_HDLC_RAW_ETH=m > CONFIG_HDLC_CISCO=m > # CONFIG_HDLC_FR is not set > # CONFIG_HDLC_PPP is not set > > # > # X.25/LAPB support is disabled > # > CONFIG_PCI200SYN=m > CONFIG_WANXL=m > CONFIG_PC300=y > > # > # Cyclades-PC300 MLPPP support is disabled. > # > > # > # Refer to the file README.mlppp, provided by PC300 package. > # > CONFIG_PC300TOO=m > CONFIG_FARSYNC=y > # CONFIG_DSCC4 is not set > CONFIG_DLCI=y > CONFIG_DLCI_MAX=8 > CONFIG_SBNI=m > CONFIG_SBNI_MULTILINE=y > # CONFIG_FDDI is not set > CONFIG_PLIP=y > # CONFIG_PPP is not set > CONFIG_SLIP=y > # CONFIG_SLIP_COMPRESSED is not set > # CONFIG_SLIP_SMART is not set > # CONFIG_SLIP_MODE_SLIP6 is not set > # CONFIG_NETPOLL is not set > # CONFIG_NET_POLL_CONTROLLER is not set > # CONFIG_ISDN is not set > CONFIG_PHONE=y > CONFIG_PHONE_IXJ=m > > # > # Input device support > # > CONFIG_INPUT=y > CONFIG_INPUT_FF_MEMLESS=y > CONFIG_INPUT_POLLDEV=m > > # > # Userland interfaces > # > CONFIG_INPUT_MOUSEDEV=y > # CONFIG_INPUT_MOUSEDEV_PSAUX is not set > CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 > CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 > CONFIG_INPUT_JOYDEV=m > CONFIG_INPUT_EVDEV=y > CONFIG_INPUT_EVBUG=m > > # > # Input Device Drivers > # > CONFIG_INPUT_KEYBOARD=y > CONFIG_KEYBOARD_ATKBD=y > # CONFIG_KEYBOARD_SUNKBD is not set > # CONFIG_KEYBOARD_LKKBD is not set > CONFIG_KEYBOARD_XTKBD=m > CONFIG_KEYBOARD_NEWTON=m > # CONFIG_KEYBOARD_STOWAWAY is not set > # CONFIG_INPUT_MOUSE is not set > # CONFIG_INPUT_JOYSTICK is not set > # CONFIG_INPUT_TABLET is not set > # CONFIG_INPUT_TOUCHSCREEN is not set > # CONFIG_INPUT_MISC is not set > > # > # Hardware I/O ports > # > CONFIG_SERIO=y > CONFIG_SERIO_I8042=y > CONFIG_SERIO_SERPORT=m > # CONFIG_SERIO_CT82C710 is not set > CONFIG_SERIO_PARKBD=m > CONFIG_SERIO_PCIPS2=m > CONFIG_SERIO_LIBPS2=y > CONFIG_SERIO_RAW=m > CONFIG_GAMEPORT=y > CONFIG_GAMEPORT_NS558=y > # CONFIG_GAMEPORT_L4 is not set > # CONFIG_GAMEPORT_EMU10K1 is not set > # CONFIG_GAMEPORT_FM801 is not set > > # > # Character devices > # > CONFIG_VT=y > CONFIG_VT_CONSOLE=y > CONFIG_HW_CONSOLE=y > # CONFIG_VT_HW_CONSOLE_BINDING is not set > CONFIG_SERIAL_NONSTANDARD=y > CONFIG_COMPUTONE=y > # CONFIG_ROCKETPORT is not set > CONFIG_CYCLADES=y > # CONFIG_DIGIEPCA is not set > CONFIG_MOXA_INTELLIO=m > # CONFIG_MOXA_SMARTIO is not set > CONFIG_MOXA_SMARTIO_NEW=m > # CONFIG_ISI is not set > # CONFIG_SYNCLINK is not set > # CONFIG_SYNCLINKMP is not set > # CONFIG_SYNCLINK_GT is not set > # CONFIG_N_HDLC is not set > CONFIG_RISCOM8=y > CONFIG_SPECIALIX=y > # CONFIG_SPECIALIX_RTSCTS is not set > CONFIG_SX=m > # CONFIG_RIO is not set > CONFIG_STALDRV=y > # CONFIG_STALLION is not set > CONFIG_ISTALLION=m > > # > # Serial drivers > # > CONFIG_SERIAL_8250=m > CONFIG_FIX_EARLYCON_MEM=y > CONFIG_SERIAL_8250_PCI=m > CONFIG_SERIAL_8250_NR_UARTS=4 > CONFIG_SERIAL_8250_RUNTIME_UARTS=4 > CONFIG_SERIAL_8250_EXTENDED=y > # CONFIG_SERIAL_8250_MANY_PORTS is not set > CONFIG_SERIAL_8250_SHARE_IRQ=y > CONFIG_SERIAL_8250_DETECT_IRQ=y > # CONFIG_SERIAL_8250_RSA is not set > # CONFIG_SERIAL_8250_MCA is not set > > # > # Non-8250 serial port support > # > CONFIG_SERIAL_CORE=m > # CONFIG_SERIAL_JSM is not set > CONFIG_UNIX98_PTYS=y > # CONFIG_LEGACY_PTYS is not set > CONFIG_PRINTER=m > # CONFIG_LP_CONSOLE is not set > CONFIG_PPDEV=m > CONFIG_TIPAR=y > # CONFIG_IPMI_HANDLER is not set > CONFIG_HW_RANDOM=y > CONFIG_HW_RANDOM_INTEL=m > # CONFIG_HW_RANDOM_AMD is not set > CONFIG_HW_RANDOM_GEODE=y > CONFIG_HW_RANDOM_VIA=m > CONFIG_NVRAM=y > CONFIG_RTC=m > CONFIG_GEN_RTC=y > # CONFIG_GEN_RTC_X is not set > CONFIG_R3964=m > CONFIG_APPLICOM=y > CONFIG_MWAVE=m > # CONFIG_SCx200_GPIO is not set > CONFIG_PC8736x_GPIO=m > CONFIG_NSC_GPIO=m > CONFIG_CS5535_GPIO=y > CONFIG_RAW_DRIVER=m > CONFIG_MAX_RAW_DEVS=256 > CONFIG_HANGCHECK_TIMER=m > CONFIG_DEVPORT=y > # CONFIG_I2C is not set > > # > # SPI support > # > CONFIG_SPI=y > CONFIG_SPI_MASTER=y > > # > # SPI Master Controller Drivers > # > > # > # SPI Protocol Masters > # > CONFIG_SPI_AT25=m > CONFIG_SPI_TLE62X0=m > CONFIG_W1=y > CONFIG_W1_CON=y > > # > # 1-wire Bus Masters > # > CONFIG_W1_MASTER_MATROX=y > # CONFIG_W1_MASTER_DS2490 is not set > > # > # 1-wire Slaves > # > # CONFIG_W1_SLAVE_THERM is not set > CONFIG_W1_SLAVE_SMEM=m > # CONFIG_W1_SLAVE_DS2433 is not set > CONFIG_W1_SLAVE_DS2760=y > CONFIG_POWER_SUPPLY=y > # CONFIG_POWER_SUPPLY_DEBUG is not set > # CONFIG_PDA_POWER is not set > CONFIG_BATTERY_DS2760=y > # CONFIG_HWMON is not set > # CONFIG_WATCHDOG is not set > > # > # Sonics Silicon Backplane > # > CONFIG_SSB_POSSIBLE=y > CONFIG_SSB=m > CONFIG_SSB_PCIHOST_POSSIBLE=y > CONFIG_SSB_PCIHOST=y > # CONFIG_SSB_DEBUG is not set > CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y > # CONFIG_SSB_DRIVER_PCICORE is not set > > # > # Multifunction device drivers > # > # CONFIG_MFD_SM501 is not set > > # > # Multimedia devices > # > CONFIG_VIDEO_DEV=m > CONFIG_VIDEO_V4L1=y > CONFIG_VIDEO_V4L1_COMPAT=y > CONFIG_VIDEO_V4L2=y > # CONFIG_VIDEO_CAPTURE_DRIVERS is not set > # CONFIG_RADIO_ADAPTERS is not set > CONFIG_DVB_CORE=y > CONFIG_DVB_CORE_ATTACH=y > CONFIG_DVB_CAPTURE_DRIVERS=y > CONFIG_DVB_TTUSB_DEC=m > # CONFIG_DVB_CINERGYT2 is not set > > # > # Supported DVB Frontends > # > > # > # Customise DVB Frontends > # > # CONFIG_DVB_FE_CUSTOMISE is not set > > # > # DVB-S (satellite) frontends > # > > # > # DVB-T (terrestrial) frontends > # > > # > # DVB-C (cable) frontends > # > > # > # ATSC (North American/Korean Terrestrial/Cable DTV) frontends > # > > # > # Tuners/PLL support > # > > # > # Miscellaneous devices > # > # CONFIG_DAB is not set > > # > # Graphics support > # > CONFIG_AGP=y > CONFIG_AGP_ALI=y > CONFIG_AGP_ATI=m > CONFIG_AGP_AMD=y > CONFIG_AGP_AMD64=y > CONFIG_AGP_INTEL=y > # CONFIG_AGP_NVIDIA is not set > # CONFIG_AGP_SIS is not set > # CONFIG_AGP_SWORKS is not set > # CONFIG_AGP_VIA is not set > CONFIG_AGP_EFFICEON=y > CONFIG_DRM=y > # CONFIG_DRM_TDFX is not set > # CONFIG_DRM_R128 is not set > # CONFIG_DRM_RADEON is not set > # CONFIG_DRM_I810 is not set > CONFIG_DRM_I830=m > CONFIG_DRM_I915=m > CONFIG_DRM_MGA=y > # CONFIG_DRM_SIS is not set > CONFIG_DRM_VIA=m > CONFIG_DRM_SAVAGE=m > CONFIG_VGASTATE=y > # CONFIG_VIDEO_OUTPUT_CONTROL is not set > CONFIG_FB=y > # CONFIG_FIRMWARE_EDID is not set > # CONFIG_FB_DDC is not set > CONFIG_FB_CFB_FILLRECT=y > CONFIG_FB_CFB_COPYAREA=y > CONFIG_FB_CFB_IMAGEBLIT=y > # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set > CONFIG_FB_SYS_FILLRECT=y > CONFIG_FB_SYS_COPYAREA=y > CONFIG_FB_SYS_IMAGEBLIT=y > CONFIG_FB_SYS_FOPS=y > CONFIG_FB_DEFERRED_IO=y > CONFIG_FB_SVGALIB=m > # CONFIG_FB_MACMODES is not set > CONFIG_FB_BACKLIGHT=y > CONFIG_FB_MODE_HELPERS=y > CONFIG_FB_TILEBLITTING=y > > # > # Frame buffer hardware drivers > # > # CONFIG_FB_CIRRUS is not set > # CONFIG_FB_PM2 is not set > CONFIG_FB_CYBER2000=y > # CONFIG_FB_ARC is not set > CONFIG_FB_ASILIANT=y > # CONFIG_FB_IMSTT is not set > CONFIG_FB_VGA16=m > # CONFIG_FB_UVESA is not set > # CONFIG_FB_VESA is not set > CONFIG_FB_HECUBA=m > # CONFIG_FB_HGA is not set > CONFIG_FB_S1D13XXX=y > # CONFIG_FB_NVIDIA is not set > # CONFIG_FB_RIVA is not set > CONFIG_FB_LE80578=y > CONFIG_FB_CARILLO_RANCH=m > CONFIG_FB_MATROX=y > CONFIG_FB_MATROX_MILLENIUM=y > CONFIG_FB_MATROX_MYSTIQUE=y > CONFIG_FB_MATROX_G=y > # CONFIG_FB_MATROX_I2C is not set > CONFIG_FB_MATROX_MULTIHEAD=y > # CONFIG_FB_RADEON is not set > CONFIG_FB_ATY128=y > CONFIG_FB_ATY128_BACKLIGHT=y > CONFIG_FB_ATY=m > CONFIG_FB_ATY_CT=y > # CONFIG_FB_ATY_GENERIC_LCD is not set > # CONFIG_FB_ATY_GX is not set > CONFIG_FB_ATY_BACKLIGHT=y > CONFIG_FB_S3=m > # CONFIG_FB_SIS is not set > CONFIG_FB_NEOMAGIC=y > CONFIG_FB_KYRO=y > CONFIG_FB_3DFX=m > # CONFIG_FB_VOODOO1 is not set > CONFIG_FB_VT8623=m > CONFIG_FB_CYBLA=y > CONFIG_FB_TRIDENT=m > # CONFIG_FB_ARK is not set > CONFIG_FB_VIRTUAL=y > CONFIG_BACKLIGHT_LCD_SUPPORT=y > # CONFIG_LCD_CLASS_DEVICE is not set > CONFIG_BACKLIGHT_CLASS_DEVICE=y > CONFIG_BACKLIGHT_CORGI=m > CONFIG_BACKLIGHT_PROGEAR=y > > # > # Display device support > # > # CONFIG_DISPLAY_SUPPORT is not set > > # > # Console display driver support > # > CONFIG_VGA_CONSOLE=y > CONFIG_VGACON_SOFT_SCROLLBACK=y > CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 > CONFIG_VIDEO_SELECT=y > CONFIG_DUMMY_CONSOLE=y > CONFIG_FRAMEBUFFER_CONSOLE=y > # CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set > # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set > CONFIG_FONTS=y > # CONFIG_FONT_8x8 is not set > CONFIG_FONT_8x16=y > CONFIG_FONT_6x11=y > # CONFIG_FONT_7x14 is not set > CONFIG_FONT_PEARL_8x8=y > CONFIG_FONT_ACORN_8x8=y > CONFIG_FONT_MINI_4x6=y > # CONFIG_FONT_SUN8x16 is not set > CONFIG_FONT_SUN12x22=y > CONFIG_FONT_10x18=y > # CONFIG_LOGO is not set > > # > # Sound > # > CONFIG_SOUND=m > > # > # Advanced Linux Sound Architecture > # > # CONFIG_SND is not set > > # > # Open Sound System > # > # CONFIG_SOUND_PRIME is not set > CONFIG_HID_SUPPORT=y > CONFIG_HID=y > CONFIG_HID_DEBUG=y > # CONFIG_HIDRAW is not set > > # > # USB Input Devices > # > CONFIG_USB_HID=y > CONFIG_USB_HIDINPUT_POWERBOOK=y > CONFIG_USB_HIDDEV=y > CONFIG_USB_SUPPORT=y > CONFIG_USB_ARCH_HAS_HCD=y > CONFIG_USB_ARCH_HAS_OHCI=y > CONFIG_USB_ARCH_HAS_EHCI=y > CONFIG_USB=y > # CONFIG_USB_DEBUG is not set > > # > # Miscellaneous USB options > # > CONFIG_USB_DEVICEFS=y > CONFIG_USB_DEVICE_CLASS=y > > # > # USB Host Controller Drivers > # > CONFIG_USB_EHCI_HCD=m > # CONFIG_USB_ISP116X_HCD is not set > CONFIG_USB_OHCI_HCD=y > # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set > # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set > CONFIG_USB_OHCI_LITTLE_ENDIAN=y > # CONFIG_USB_UHCI_HCD is not set > # CONFIG_USB_U132_HCD is not set > # CONFIG_USB_SL811_HCD is not set > # CONFIG_USB_R8A66597_HCD is not set > > # > # USB Device Class drivers > # > CONFIG_USB_ACM=m > CONFIG_USB_PRINTER=y > > # > # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' > # > > # > # may also be needed; see USB_STORAGE Help for more information > # > # CONFIG_USB_LIBUSUAL is not set > > # > # USB Imaging devices > # > CONFIG_USB_MON=y > > # > # USB port drivers > # > CONFIG_USB_USS720=y > > # > # USB Serial Converter support > # > CONFIG_USB_SERIAL=y > CONFIG_USB_SERIAL_GENERIC=y > CONFIG_USB_SERIAL_AIRPRIME=m > CONFIG_USB_SERIAL_BELKIN=y > CONFIG_USB_SERIAL_CH341=m > # CONFIG_USB_SERIAL_WHITEHEAT is not set > CONFIG_USB_SERIAL_DIGI_ACCELEPORT=y > CONFIG_USB_SERIAL_EMPEG=y > CONFIG_USB_SERIAL_FUNSOFT=m > CONFIG_USB_SERIAL_VISOR=m > CONFIG_USB_SERIAL_IPAQ=m > CONFIG_USB_SERIAL_EDGEPORT=m > # CONFIG_USB_SERIAL_EDGEPORT_TI is not set > CONFIG_USB_SERIAL_GARMIN=y > # CONFIG_USB_SERIAL_KEYSPAN_PDA is not set > CONFIG_USB_SERIAL_KEYSPAN=y > CONFIG_USB_SERIAL_KEYSPAN_MPR=y > # CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set > # CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set > CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y > # CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set > # CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set > # CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set > CONFIG_USB_SERIAL_KEYSPAN_USA19W=y > CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y > # CONFIG_USB_SERIAL_KEYSPAN_USA19QI is not set > CONFIG_USB_SERIAL_KEYSPAN_USA49W=y > CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y > # CONFIG_USB_SERIAL_KOBIL_SCT is not set > CONFIG_USB_SERIAL_MCT_U232=y > # CONFIG_USB_SERIAL_MOS7720 is not set > CONFIG_USB_SERIAL_MOS7840=m > CONFIG_USB_SERIAL_NAVMAN=m > # CONFIG_USB_SERIAL_PL2303 is not set > CONFIG_USB_SERIAL_OTI6858=y > CONFIG_USB_SERIAL_HP4X=y > CONFIG_USB_SERIAL_SIERRAWIRELESS=m > CONFIG_USB_SERIAL_TI=m > CONFIG_USB_SERIAL_XIRCOM=m > CONFIG_USB_SERIAL_OPTION=y > # CONFIG_USB_SERIAL_DEBUG is not set > CONFIG_USB_EZUSB=y > > # > # USB Miscellaneous drivers > # > # CONFIG_USB_EMI62 is not set > CONFIG_USB_EMI26=y > CONFIG_USB_LCD=m > CONFIG_USB_BERRY_CHARGE=y > CONFIG_USB_LED=y > CONFIG_USB_CYPRESS_CY7C63=m > CONFIG_USB_CYTHERM=m > # CONFIG_USB_PHIDGET is not set > CONFIG_USB_IDMOUSE=m > CONFIG_USB_FTDI_ELAN=y > CONFIG_USB_APPLEDISPLAY=y > CONFIG_USB_SISUSBVGA=m > # CONFIG_USB_SISUSBVGA_CON is not set > CONFIG_USB_LD=m > # CONFIG_USB_TRANCEVIBRATOR is not set > CONFIG_USB_IOWARRIOR=m > > # > # USB DSL modem support > # > > # > # USB Gadget Support > # > CONFIG_USB_GADGET=m > # CONFIG_USB_GADGET_DEBUG_FILES is not set > # CONFIG_USB_GADGET_DEBUG_FS is not set > CONFIG_USB_GADGET_SELECTED=y > # CONFIG_USB_GADGET_AMD5536UDC is not set > # CONFIG_USB_GADGET_ATMEL_USBA is not set > # CONFIG_USB_GADGET_FSL_USB2 is not set > # CONFIG_USB_GADGET_NET2280 is not set > # CONFIG_USB_GADGET_PXA2XX is not set > CONFIG_USB_GADGET_M66592=y > CONFIG_USB_M66592=m > # CONFIG_USB_GADGET_GOKU is not set > # CONFIG_USB_GADGET_LH7A40X is not set > # CONFIG_USB_GADGET_OMAP is not set > # CONFIG_USB_GADGET_S3C2410 is not set > # CONFIG_USB_GADGET_AT91 is not set > # CONFIG_USB_GADGET_DUMMY_HCD is not set > CONFIG_USB_GADGET_DUALSPEED=y > # CONFIG_USB_ZERO is not set > # CONFIG_USB_ETH is not set > # CONFIG_USB_GADGETFS is not set > # CONFIG_USB_FILE_STORAGE is not set > CONFIG_USB_G_SERIAL=m > # CONFIG_USB_MIDI_GADGET is not set > CONFIG_MMC=m > # CONFIG_MMC_DEBUG is not set > # CONFIG_MMC_UNSAFE_RESUME is not set > > # > # MMC/SD Card Drivers > # > CONFIG_MMC_BLOCK=m > # CONFIG_MMC_BLOCK_BOUNCE is not set > CONFIG_SDIO_UART=m > > # > # MMC/SD Host Controller Drivers > # > # CONFIG_MMC_WBSD is not set > # CONFIG_NEW_LEDS is not set > # CONFIG_INFINIBAND is not set > # CONFIG_RTC_CLASS is not set > # CONFIG_DMADEVICES is not set > CONFIG_AUXDISPLAY=y > CONFIG_VIRTUALIZATION=y > > # > # Userspace I/O > # > CONFIG_UIO=y > # CONFIG_UIO_CIF is not set > > # > # File systems > # > CONFIG_EXT2_FS=y > CONFIG_EXT2_FS_XATTR=y > # CONFIG_EXT2_FS_POSIX_ACL is not set > # CONFIG_EXT2_FS_SECURITY is not set > # CONFIG_EXT2_FS_XIP is not set > CONFIG_EXT3_FS=m > # CONFIG_EXT3_FS_XATTR is not set > CONFIG_JBD=m > # CONFIG_JBD_DEBUG is not set > CONFIG_FS_MBCACHE=y > CONFIG_REISERFS_FS=m > # CONFIG_REISERFS_CHECK is not set > CONFIG_REISERFS_PROC_INFO=y > CONFIG_REISERFS_FS_XATTR=y > # CONFIG_REISERFS_FS_POSIX_ACL is not set > # CONFIG_REISERFS_FS_SECURITY is not set > CONFIG_JFS_FS=y > CONFIG_JFS_POSIX_ACL=y > # CONFIG_JFS_SECURITY is not set > # CONFIG_JFS_DEBUG is not set > CONFIG_JFS_STATISTICS=y > CONFIG_FS_POSIX_ACL=y > CONFIG_XFS_FS=m > # CONFIG_XFS_QUOTA is not set > CONFIG_XFS_SECURITY=y > # CONFIG_XFS_POSIX_ACL is not set > CONFIG_XFS_RT=y > # CONFIG_OCFS2_FS is not set > CONFIG_MINIX_FS=m > # CONFIG_ROMFS_FS is not set > # CONFIG_INOTIFY is not set > CONFIG_QUOTA=y > # CONFIG_QUOTA_NETLINK_INTERFACE is not set > # CONFIG_PRINT_QUOTA_WARNING is not set > CONFIG_QFMT_V1=m > # CONFIG_QFMT_V2 is not set > CONFIG_QUOTACTL=y > CONFIG_DNOTIFY=y > CONFIG_AUTOFS_FS=m > CONFIG_AUTOFS4_FS=m > # CONFIG_FUSE_FS is not set > CONFIG_GENERIC_ACL=y > > # > # CD-ROM/DVD Filesystems > # > CONFIG_ISO9660_FS=y > # CONFIG_JOLIET is not set > CONFIG_ZISOFS=y > CONFIG_UDF_FS=y > CONFIG_UDF_NLS=y > > # > # DOS/FAT/NT Filesystems > # > CONFIG_FAT_FS=y > CONFIG_MSDOS_FS=y > CONFIG_VFAT_FS=m > CONFIG_FAT_DEFAULT_CODEPAGE=437 > CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" > CONFIG_NTFS_FS=m > # CONFIG_NTFS_DEBUG is not set > CONFIG_NTFS_RW=y > > # > # Pseudo filesystems > # > CONFIG_PROC_FS=y > # CONFIG_PROC_KCORE is not set > CONFIG_PROC_SYSCTL=y > CONFIG_SYSFS=y > CONFIG_TMPFS=y > CONFIG_TMPFS_POSIX_ACL=y > CONFIG_HUGETLBFS=y > CONFIG_HUGETLB_PAGE=y > > # > # Miscellaneous filesystems > # > CONFIG_HFSPLUS_FS=y > CONFIG_CRAMFS=m > CONFIG_VXFS_FS=m > # CONFIG_HPFS_FS is not set > CONFIG_QNX4FS_FS=m > CONFIG_SYSV_FS=y > CONFIG_UFS_FS=m > # CONFIG_UFS_DEBUG is not set > # CONFIG_NETWORK_FILESYSTEMS is not set > > # > # Partition Types > # > # CONFIG_PARTITION_ADVANCED is not set > CONFIG_MSDOS_PARTITION=y > CONFIG_NLS=y > CONFIG_NLS_DEFAULT="iso8859-1" > CONFIG_NLS_CODEPAGE_437=m > # CONFIG_NLS_CODEPAGE_737 is not set > CONFIG_NLS_CODEPAGE_775=y > CONFIG_NLS_CODEPAGE_850=m > CONFIG_NLS_CODEPAGE_852=y > CONFIG_NLS_CODEPAGE_855=y > CONFIG_NLS_CODEPAGE_857=y > CONFIG_NLS_CODEPAGE_860=m > CONFIG_NLS_CODEPAGE_861=m > # CONFIG_NLS_CODEPAGE_862 is not set > # CONFIG_NLS_CODEPAGE_863 is not set > # CONFIG_NLS_CODEPAGE_864 is not set > CONFIG_NLS_CODEPAGE_865=y > # CONFIG_NLS_CODEPAGE_866 is not set > CONFIG_NLS_CODEPAGE_869=m > CONFIG_NLS_CODEPAGE_936=y > CONFIG_NLS_CODEPAGE_950=y > CONFIG_NLS_CODEPAGE_932=m > CONFIG_NLS_CODEPAGE_949=y > # CONFIG_NLS_CODEPAGE_874 is not set > CONFIG_NLS_ISO8859_8=m > # CONFIG_NLS_CODEPAGE_1250 is not set > CONFIG_NLS_CODEPAGE_1251=m > # CONFIG_NLS_ASCII is not set > # CONFIG_NLS_ISO8859_1 is not set > # CONFIG_NLS_ISO8859_2 is not set > # CONFIG_NLS_ISO8859_3 is not set > # CONFIG_NLS_ISO8859_4 is not set > # CONFIG_NLS_ISO8859_5 is not set > CONFIG_NLS_ISO8859_6=y > # CONFIG_NLS_ISO8859_7 is not set > # CONFIG_NLS_ISO8859_9 is not set > CONFIG_NLS_ISO8859_13=y > # CONFIG_NLS_ISO8859_14 is not set > CONFIG_NLS_ISO8859_15=m > CONFIG_NLS_KOI8_R=y > CONFIG_NLS_KOI8_U=y > CONFIG_NLS_UTF8=y > CONFIG_INSTRUMENTATION=y > CONFIG_PROFILING=y > CONFIG_OPROFILE=y > CONFIG_KPROBES=y > CONFIG_MARKERS=y > > # > # Kernel hacking > # > CONFIG_TRACE_IRQFLAGS_SUPPORT=y > CONFIG_PRINTK_TIME=y > CONFIG_ENABLE_WARN_DEPRECATED=y > CONFIG_ENABLE_MUST_CHECK=y > CONFIG_MAGIC_SYSRQ=y > CONFIG_UNUSED_SYMBOLS=y > CONFIG_DEBUG_FS=y > CONFIG_HEADERS_CHECK=y > # CONFIG_DEBUG_KERNEL is not set > CONFIG_DEBUG_BUGVERBOSE=y > # CONFIG_SAMPLES is not set > CONFIG_EARLY_PRINTK=y > CONFIG_DOUBLEFAULT=y > > # > # Security options > # > # CONFIG_KEYS is not set > # CONFIG_SECURITY is not set > CONFIG_CRYPTO=y > CONFIG_CRYPTO_ALGAPI=y > CONFIG_CRYPTO_ABLKCIPHER=y > CONFIG_CRYPTO_BLKCIPHER=y > CONFIG_CRYPTO_HASH=y > CONFIG_CRYPTO_MANAGER=y > CONFIG_CRYPTO_HMAC=y > # CONFIG_CRYPTO_NULL is not set > CONFIG_CRYPTO_MD4=m > CONFIG_CRYPTO_MD5=y > CONFIG_CRYPTO_SHA1=y > # CONFIG_CRYPTO_SHA256 is not set > CONFIG_CRYPTO_SHA512=y > CONFIG_CRYPTO_WP512=m > # CONFIG_CRYPTO_TGR192 is not set > CONFIG_CRYPTO_ECB=m > CONFIG_CRYPTO_CBC=y > CONFIG_CRYPTO_PCBC=y > CONFIG_CRYPTO_CRYPTD=y > CONFIG_CRYPTO_DES=y > CONFIG_CRYPTO_FCRYPT=y > CONFIG_CRYPTO_BLOWFISH=y > CONFIG_CRYPTO_TWOFISH=y > CONFIG_CRYPTO_TWOFISH_COMMON=y > # CONFIG_CRYPTO_TWOFISH_586 is not set > CONFIG_CRYPTO_SERPENT=y > CONFIG_CRYPTO_AES=y > CONFIG_CRYPTO_AES_586=m > CONFIG_CRYPTO_CAST5=m > CONFIG_CRYPTO_CAST6=y > CONFIG_CRYPTO_TEA=y > # CONFIG_CRYPTO_ARC4 is not set > CONFIG_CRYPTO_KHAZAD=m > CONFIG_CRYPTO_ANUBIS=y > CONFIG_CRYPTO_SEED=m > CONFIG_CRYPTO_DEFLATE=y > CONFIG_CRYPTO_MICHAEL_MIC=m > CONFIG_CRYPTO_CRC32C=y > # CONFIG_CRYPTO_CAMELLIA is not set > CONFIG_CRYPTO_TEST=m > # CONFIG_CRYPTO_AUTHENC is not set > # CONFIG_CRYPTO_HW is not set > > # > # Library routines > # > CONFIG_BITREVERSE=y > CONFIG_CRC_CCITT=m > CONFIG_CRC16=m > CONFIG_CRC_ITU_T=y > CONFIG_CRC32=y > # CONFIG_CRC7 is not set > CONFIG_LIBCRC32C=y > CONFIG_AUDIT_GENERIC=y > CONFIG_ZLIB_INFLATE=y > CONFIG_ZLIB_DEFLATE=y > CONFIG_TEXTSEARCH=y > CONFIG_TEXTSEARCH_KMP=m > CONFIG_TEXTSEARCH_BM=m > CONFIG_TEXTSEARCH_FSM=m > CONFIG_PLIST=y > CONFIG_HAS_IOMEM=y > CONFIG_HAS_IOPORT=y > CONFIG_HAS_DMA=y > CONFIG_GENERIC_HARDIRQS=y > CONFIG_GENERIC_IRQ_PROBE=y > CONFIG_X86_BIOS_REBOOT=y > CONFIG_KTIME_SCALAR=y --- ~Randy ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-01 21:11 ` build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': Randy Dunlap @ 2007-11-01 23:32 ` David Brownell 2007-11-01 23:44 ` Adrian Bunk 2007-11-07 8:20 ` David Miller 0 siblings, 2 replies; 25+ messages in thread From: David Brownell @ 2007-11-01 23:32 UTC (permalink / raw) To: Randy Dunlap; +Cc: Toralf Förster, linux-kernel, netdev On Thursday 01 November 2007, Randy Dunlap wrote: > The MII functions aren't available unless NET_ETHERNET=y. > Howver, the MII functions aren't always needed... > > David, any ideas on this one? It's been several years since I looked at this. It used to behave just fine. Something must have changed in the not-too-distant past to have broken this mechanism... > config USB_USBNET > tristate "Multi-purpose USB Networking Framework" > + depends on NET_ETHERNET if USB_USBNET_MII != n > select MII if USB_USBNET_MII != n > > would be handy. But invalid. > > Hm, wait. Haven't we seen this before and decided that MII should > be made more generally available? I.e., not depend on NET_ETHERNET? Some of us keep wanting to see "select" work properly, not omitting dependencies... Re interdependencies MII and NET_ETHERNET, I'll leave that up to the netedev folk. - Dave ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-01 23:32 ` David Brownell @ 2007-11-01 23:44 ` Adrian Bunk 2007-11-02 18:45 ` David Brownell 2007-11-07 8:20 ` David Miller 1 sibling, 1 reply; 25+ messages in thread From: Adrian Bunk @ 2007-11-01 23:44 UTC (permalink / raw) To: David Brownell; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Thu, Nov 01, 2007 at 04:32:18PM -0700, David Brownell wrote: > On Thursday 01 November 2007, Randy Dunlap wrote: > > The MII functions aren't available unless NET_ETHERNET=y. The setting of CONFIG_NET_ETHERNET doesn't matter for this bug. > > Howver, the MII functions aren't always needed... > > > > David, any ideas on this one? > > It's been several years since I looked at this. It > used to behave just fine. > > Something must have changed in the not-too-distant > past to have broken this mechanism... >... It seems to be an old bug. The following combination of options is simply an unusual one: CONFIG_MII=m CONFIG_USB_USBNET=y CONFIG_USB_USBNET_MII=n > - Dave cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-01 23:44 ` Adrian Bunk @ 2007-11-02 18:45 ` David Brownell 2007-11-02 18:57 ` Adrian Bunk 2007-11-02 20:05 ` build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': Adrian Bunk 0 siblings, 2 replies; 25+ messages in thread From: David Brownell @ 2007-11-02 18:45 UTC (permalink / raw) To: Adrian Bunk; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Thursday 01 November 2007, Adrian Bunk wrote: > The following combination of options is simply an unusual one: > > CONFIG_MII=m > CONFIG_USB_USBNET=y > CONFIG_USB_USBNET_MII=n I though that had been fixed for ages ... This should do a better job of it. - Dave ========== CUT HERE Simplify handling of the MII-dependent usbnet based adapters: stick to forward dependencies, and explicitly handle the core dependency. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> --- drivers/net/usb/Kconfig | 23 ++++++++++++----------- drivers/net/usb/usbnet.c | 9 ++++++++- 2 files changed, 20 insertions(+), 12 deletions(-) --- a.orig/drivers/net/usb/Kconfig 2007-10-21 10:35:16.000000000 -0700 +++ a/drivers/net/usb/Kconfig 2007-11-02 11:32:15.000000000 -0700 @@ -93,13 +93,8 @@ config USB_RTL8150 To compile this driver as a module, choose M here: the module will be called rtl8150. -config USB_USBNET_MII - tristate - default n - config USB_USBNET tristate "Multi-purpose USB Networking Framework" - select MII if USB_USBNET_MII != n ---help--- This driver supports several kinds of network links over USB, with "minidrivers" built around a common network driver core @@ -131,11 +126,19 @@ config USB_USBNET To compile this driver as a module, choose M here: the module will be called usbnet. +# usbnet core will support MII when MII is static, or both are modules +config USB_NET_MII + tristate + depends on USB_USBNET && NET_ETHERNET && (MII = y || MII = USB_USBNET) + default MII + +comment "MII support is needed for most Ethernet adapters" + depends on USB_USBNET && USB_NET_MII=n + config USB_NET_AX8817X tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters" - depends on USB_USBNET && NET_ETHERNET + depends on USB_USBNET && USB_NET_MII select CRC32 - select USB_USBNET_MII default y help This option adds support for ASIX AX88xxx based USB 2.0 @@ -188,9 +191,8 @@ config USB_NET_CDCETHER config USB_NET_DM9601 tristate "Davicom DM9601 based USB 1.1 10/100 ethernet devices" - depends on USB_USBNET + depends on USB_USBNET && USB_NET_MII select CRC32 - select USB_USBNET_MII help This option adds support for Davicom DM9601 based USB 1.1 10/100 Ethernet adapters. @@ -224,8 +226,7 @@ config USB_NET_PLUSB config USB_NET_MCS7830 tristate "MosChip MCS7830 based Ethernet adapters" - depends on USB_USBNET - select USB_USBNET_MII + depends on USB_USBNET && USB_NET_MII help Choose this option if you're using a 10/100 Ethernet USB2 adapter based on the MosChip 7830 controller. This includes --- a.orig/drivers/net/usb/usbnet.c 2007-10-13 15:16:10.000000000 -0700 +++ a/drivers/net/usb/usbnet.c 2007-11-02 11:39:59.000000000 -0700 @@ -682,10 +682,17 @@ done_nopm: /* ethtool methods; minidrivers may need to add some more, but * they'll probably want to use this base set. */ +#undef HAVE_MII -#if defined(CONFIG_MII) || defined(CONFIG_MII_MODULE) +#if defined(CONFIG_MII) #define HAVE_MII +#elif defined(CONFIG_MII_MODULE) && defined(MODULE) +#define HAVE_MII +#endif + +#ifdef HAVE_MII + int usbnet_get_settings (struct net_device *net, struct ethtool_cmd *cmd) { struct usbnet *dev = netdev_priv(net); ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-02 18:45 ` David Brownell @ 2007-11-02 18:57 ` Adrian Bunk 2007-11-02 19:30 ` David Brownell 2007-11-02 20:05 ` build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': Adrian Bunk 1 sibling, 1 reply; 25+ messages in thread From: Adrian Bunk @ 2007-11-02 18:57 UTC (permalink / raw) To: David Brownell; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Fri, Nov 02, 2007 at 11:45:15AM -0700, David Brownell wrote: > On Thursday 01 November 2007, Adrian Bunk wrote: > > The following combination of options is simply an unusual one: > > > > CONFIG_MII=m > > CONFIG_USB_USBNET=y > > CONFIG_USB_USBNET_MII=n > > I though that had been fixed for ages ... > > This should do a better job of it. > > - Dave > > ========== CUT HERE > Simplify handling of the MII-dependent usbnet based adapters: stick > to forward dependencies, and explicitly handle the core dependency. > > Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> > --- > drivers/net/usb/Kconfig | 23 ++++++++++++----------- > drivers/net/usb/usbnet.c | 9 ++++++++- > 2 files changed, 20 insertions(+), 12 deletions(-) > > --- a.orig/drivers/net/usb/Kconfig 2007-10-21 10:35:16.000000000 -0700 > +++ a/drivers/net/usb/Kconfig 2007-11-02 11:32:15.000000000 -0700 > @@ -93,13 +93,8 @@ config USB_RTL8150 > To compile this driver as a module, choose M here: the > module will be called rtl8150. > > -config USB_USBNET_MII > - tristate > - default n > - > config USB_USBNET > tristate "Multi-purpose USB Networking Framework" > - select MII if USB_USBNET_MII != n > ---help--- > This driver supports several kinds of network links over USB, > with "minidrivers" built around a common network driver core > @@ -131,11 +126,19 @@ config USB_USBNET > To compile this driver as a module, choose M here: the > module will be called usbnet. > > +# usbnet core will support MII when MII is static, or both are modules > +config USB_NET_MII > + tristate > + depends on USB_USBNET && NET_ETHERNET && (MII = y || MII = USB_USBNET) > + default MII > + > +comment "MII support is needed for most Ethernet adapters" > + depends on USB_USBNET && USB_NET_MII=n >... This approach has two disadvantages: - it's complicated - the MII stuff is an implementation detail, and we shouldn't bother the user with it (especially since we can do better) If you want to keep the #ifdef's, what's the problem with the second patch I proposed to fix this bug? cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-02 18:57 ` Adrian Bunk @ 2007-11-02 19:30 ` David Brownell 2007-11-02 19:55 ` Adrian Bunk 0 siblings, 1 reply; 25+ messages in thread From: David Brownell @ 2007-11-02 19:30 UTC (permalink / raw) To: Adrian Bunk; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Friday 02 November 2007, Adrian Bunk wrote: > This approach has two disadvantages: > - it's complicated No more so than the problem itself. > - the MII stuff is an implementation detail, and we shouldn't bother > the user with it (especially since we can do better) That's a Kconfig policy that's not always followed. In this case, I was getting fed up with "select". It so rarely does what it needs to do, and I've started to think it'd be better to just always avoid that fragility than battle it. > If you want to keep the #ifdef's, what's the problem with the second > patch I proposed to fix this bug? For one thing, I didn't see it until after I posted this one... other than that, the basic approach could well be fine; I didn't go through it in detail. But on the other hand, it seems that only the ASIX code will work right; the DM9601 and MCS7830 Kconfig is different/wrong. - Dave ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-02 19:30 ` David Brownell @ 2007-11-02 19:55 ` Adrian Bunk 2007-11-07 22:34 ` David Brownell 0 siblings, 1 reply; 25+ messages in thread From: Adrian Bunk @ 2007-11-02 19:55 UTC (permalink / raw) To: David Brownell; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Fri, Nov 02, 2007 at 12:30:22PM -0700, David Brownell wrote: > On Friday 02 November 2007, Adrian Bunk wrote: > > This approach has two disadvantages: > > - it's complicated > > No more so than the problem itself. > > > > - the MII stuff is an implementation detail, and we shouldn't bother > > the user with it (especially since we can do better) > > That's a Kconfig policy that's not always followed. Sure it's not yet always followed. But kernel developers have to become more aware that the vast majority of kconfig users are not kernel hackers and act accordingly. I'm not talking about the infamous Aunt Tillie, but being able to build your own kernel is even required for LPIC-1. [1] > In this > case, I was getting fed up with "select". It so rarely does > what it needs to do, and I've started to think it'd be better > to just always avoid that fragility than battle it. Regarding this bug, "select" is completely innocent... > > If you want to keep the #ifdef's, what's the problem with the second > > patch I proposed to fix this bug? > > For one thing, I didn't see it until after I posted this one... > other than that, the basic approach could well be fine; I didn't > go through it in detail. > > But on the other hand, it seems that only the ASIX code will work > right; the DM9601 and MCS7830 Kconfig is different/wrong. I'm not seeing the problem. Which configuration will be handled wrongly? > - Dave cu Adrian [1] http://www.lpi.org/en/lpi/english/certification/the_lpic_program/exam_102_detailed_objectives -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-02 19:55 ` Adrian Bunk @ 2007-11-07 22:34 ` David Brownell 2007-11-07 22:52 ` Adrian Bunk 0 siblings, 1 reply; 25+ messages in thread From: David Brownell @ 2007-11-07 22:34 UTC (permalink / raw) To: Adrian Bunk; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev > > But on the other hand, it seems that only the ASIX code will work > > right; the DM9601 and MCS7830 Kconfig is different/wrong. > > I'm not seeing the problem. > > Which configuration will be handled wrongly? Notice how only the ASIX kconfig depended on NET_ETHERNET... since MII depends on NET_ETHERNET, and (last I knew) the reverse dependencies didn't capture the complete dependency tree, selecting only MII would leave out some stuff. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-07 22:34 ` David Brownell @ 2007-11-07 22:52 ` Adrian Bunk 2007-11-08 2:53 ` David Brownell 2007-11-08 3:30 ` Adrian Bunk 0 siblings, 2 replies; 25+ messages in thread From: Adrian Bunk @ 2007-11-07 22:52 UTC (permalink / raw) To: David Brownell; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Wed, Nov 07, 2007 at 02:34:52PM -0800, David Brownell wrote: > > > But on the other hand, it seems that only the ASIX code will work > > > right; the DM9601 and MCS7830 Kconfig is different/wrong. > > > > I'm not seeing the problem. > > > > Which configuration will be handled wrongly? > > Notice how only the ASIX kconfig depended on NET_ETHERNET... > since MII depends on NET_ETHERNET, and (last I knew) the > reverse dependencies didn't capture the complete dependency > tree, selecting only MII would leave out some stuff. Except for one s390 net driver (I'll check why it's doing this) the NET_ETHERNET option does not influence what code is being generated - it's just a Kconfig-internal option allowing to disable a huge bunch of drivers at once. cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-07 22:52 ` Adrian Bunk @ 2007-11-08 2:53 ` David Brownell 2007-11-08 3:23 ` Adrian Bunk 2007-11-08 3:30 ` Adrian Bunk 1 sibling, 1 reply; 25+ messages in thread From: David Brownell @ 2007-11-08 2:53 UTC (permalink / raw) To: Adrian Bunk; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Wednesday 07 November 2007, Adrian Bunk wrote: > On Wed, Nov 07, 2007 at 02:34:52PM -0800, David Brownell wrote: > > > > But on the other hand, it seems that only the ASIX code will work > > > > right; the DM9601 and MCS7830 Kconfig is different/wrong. > > > > > > I'm not seeing the problem. > > > > > > Which configuration will be handled wrongly? > > > > Notice how only the ASIX kconfig depended on NET_ETHERNET... > > since MII depends on NET_ETHERNET, and (last I knew) the > > reverse dependencies didn't capture the complete dependency > > tree, selecting only MII would leave out some stuff. > > Except for one s390 net driver (I'll check why it's doing this) the > NET_ETHERNET option does not influence what code is being generated - > it's just a Kconfig-internal option allowing to disable a huge bunch > of drivers at once. Drivers like ... AX88xxx, DM9601, and MCS7830!! Except as it turns out, only the first one behaves as intended. You can tell it's a problem by the way it's inconsistent, regardless of the details of the problem. :) - Dave ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-08 2:53 ` David Brownell @ 2007-11-08 3:23 ` Adrian Bunk 0 siblings, 0 replies; 25+ messages in thread From: Adrian Bunk @ 2007-11-08 3:23 UTC (permalink / raw) To: David Brownell; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Wed, Nov 07, 2007 at 06:53:48PM -0800, David Brownell wrote: > On Wednesday 07 November 2007, Adrian Bunk wrote: > > On Wed, Nov 07, 2007 at 02:34:52PM -0800, David Brownell wrote: > > > > > But on the other hand, it seems that only the ASIX code will work > > > > > right; the DM9601 and MCS7830 Kconfig is different/wrong. > > > > > > > > I'm not seeing the problem. > > > > > > > > Which configuration will be handled wrongly? > > > > > > Notice how only the ASIX kconfig depended on NET_ETHERNET... > > > since MII depends on NET_ETHERNET, and (last I knew) the > > > reverse dependencies didn't capture the complete dependency > > > tree, selecting only MII would leave out some stuff. > > > > Except for one s390 net driver (I'll check why it's doing this) the > > NET_ETHERNET option does not influence what code is being generated - > > it's just a Kconfig-internal option allowing to disable a huge bunch > > of drivers at once. > > Drivers like ... AX88xxx, DM9601, and MCS7830!! Except as > it turns out, only the first one behaves as intended. > > You can tell it's a problem by the way it's inconsistent, > regardless of the details of the problem. :) I'm all for cleanups that make things consistent. :) As long as we can agree that there's a difference between a problem like a compile or runtime error and an opportunity for making things consistent. > - Dave cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-07 22:52 ` Adrian Bunk 2007-11-08 2:53 ` David Brownell @ 2007-11-08 3:30 ` Adrian Bunk 2007-11-08 16:08 ` Randy Dunlap 2007-11-20 5:26 ` David Miller 1 sibling, 2 replies; 25+ messages in thread From: Adrian Bunk @ 2007-11-08 3:30 UTC (permalink / raw) To: David Brownell, David Miller Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Wed, Nov 07, 2007 at 11:52:32PM +0100, Adrian Bunk wrote: > On Wed, Nov 07, 2007 at 02:34:52PM -0800, David Brownell wrote: > > > > But on the other hand, it seems that only the ASIX code will work > > > > right; the DM9601 and MCS7830 Kconfig is different/wrong. > > > > > > I'm not seeing the problem. > > > > > > Which configuration will be handled wrongly? > > > > Notice how only the ASIX kconfig depended on NET_ETHERNET... > > since MII depends on NET_ETHERNET, and (last I knew) the > > reverse dependencies didn't capture the complete dependency > > tree, selecting only MII would leave out some stuff. > > Except for one s390 net driver (I'll check why it's doing this) the > NET_ETHERNET option does not influence what code is being generated - > it's just a Kconfig-internal option allowing to disable a huge bunch > of drivers at once. Damn, I shouldn't have only grep'ed under drivers/. @davem: Please look at net/ipv4/arp.c:arp_process() Am I right that CONFIG_NET_ETHERNET=n and CONFIG_NETDEV_1000=y or CONFIG_NETDEV_10000=y will not be handled correctly there? And the best solution is to nuke all #ifdef's in this function and make the code unconditionally available? cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-08 3:30 ` Adrian Bunk @ 2007-11-08 16:08 ` Randy Dunlap 2007-11-20 5:26 ` David Miller 1 sibling, 0 replies; 25+ messages in thread From: Randy Dunlap @ 2007-11-08 16:08 UTC (permalink / raw) To: Adrian Bunk Cc: David Brownell, David Miller, Toralf Förster, linux-kernel, netdev On Thu, 8 Nov 2007 04:30:10 +0100 Adrian Bunk wrote: > On Wed, Nov 07, 2007 at 11:52:32PM +0100, Adrian Bunk wrote: > > On Wed, Nov 07, 2007 at 02:34:52PM -0800, David Brownell wrote: > > > > > But on the other hand, it seems that only the ASIX code will work > > > > > right; the DM9601 and MCS7830 Kconfig is different/wrong. > > > > > > > > I'm not seeing the problem. > > > > > > > > Which configuration will be handled wrongly? > > > > > > Notice how only the ASIX kconfig depended on NET_ETHERNET... > > > since MII depends on NET_ETHERNET, and (last I knew) the > > > reverse dependencies didn't capture the complete dependency > > > tree, selecting only MII would leave out some stuff. > > > > Except for one s390 net driver (I'll check why it's doing this) the > > NET_ETHERNET option does not influence what code is being generated - > > it's just a Kconfig-internal option allowing to disable a huge bunch > > of drivers at once. > > Damn, I shouldn't have only grep'ed under drivers/. > > @davem: > > Please look at net/ipv4/arp.c:arp_process() > > Am I right that CONFIG_NET_ETHERNET=n and CONFIG_NETDEV_1000=y or > CONFIG_NETDEV_10000=y will not be handled correctly there? I'd say yes, you are correct. > And the best solution is to nuke all #ifdef's in this function and make > the code unconditionally available? --- ~Randy ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-08 3:30 ` Adrian Bunk 2007-11-08 16:08 ` Randy Dunlap @ 2007-11-20 5:26 ` David Miller 2007-11-25 16:30 ` [2.6 patch] ipv4/arp.c:arp_process(): remove bogus #ifdef mess Adrian Bunk 1 sibling, 1 reply; 25+ messages in thread From: David Miller @ 2007-11-20 5:26 UTC (permalink / raw) To: bunk; +Cc: david-b, randy.dunlap, toralf.foerster, linux-kernel, netdev From: Adrian Bunk <bunk@kernel.org> Date: Thu, 8 Nov 2007 04:30:10 +0100 > @davem: > > Please look at net/ipv4/arp.c:arp_process() > > Am I right that CONFIG_NET_ETHERNET=n and CONFIG_NETDEV_1000=y or > CONFIG_NETDEV_10000=y will not be handled correctly there? > > And the best solution is to nuke all #ifdef's in this function and make > the code unconditionally available? I think removing those specific ifdefs in arp_process() is the best option, yes. ^ permalink raw reply [flat|nested] 25+ messages in thread
* [2.6 patch] ipv4/arp.c:arp_process(): remove bogus #ifdef mess 2007-11-20 5:26 ` David Miller @ 2007-11-25 16:30 ` Adrian Bunk 2007-11-26 15:19 ` Herbert Xu 0 siblings, 1 reply; 25+ messages in thread From: Adrian Bunk @ 2007-11-25 16:30 UTC (permalink / raw) To: David Miller; +Cc: david-b, randy.dunlap, toralf.foerster, linux-kernel, netdev On Mon, Nov 19, 2007 at 09:26:39PM -0800, David Miller wrote: > From: Adrian Bunk <bunk@kernel.org> > Date: Thu, 8 Nov 2007 04:30:10 +0100 > > > @davem: > > > > Please look at net/ipv4/arp.c:arp_process() > > > > Am I right that CONFIG_NET_ETHERNET=n and CONFIG_NETDEV_1000=y or > > CONFIG_NETDEV_10000=y will not be handled correctly there? > > > > And the best solution is to nuke all #ifdef's in this function and make > > the code unconditionally available? > > I think removing those specific ifdefs in arp_process() > is the best option, yes. Patch below. cu Adrian <-- snip --> The #ifdef's in arp_process() were not only a mess, they were also wrong in the CONFIG_NET_ETHERNET=n and (CONFIG_NETDEV_1000=y or CONFIG_NETDEV_10000=y) cases. Since they are not required this patch removes them. Also removed are some #ifdef's around #include's that caused compile errors after this change. Signed-off-by: Adrian Bunk <bunk@kernel.org> --- net/ipv4/arp.c | 19 ------------------- 1 file changed, 19 deletions(-) 759b820456b1400b2a6b061eca9667bf7a6f053d diff --git a/net/ipv4/arp.c b/net/ipv4/arp.c index 36d6798..0c5d549 100644 --- a/net/ipv4/arp.c +++ b/net/ipv4/arp.c @@ -111,12 +111,8 @@ #include <net/tcp.h> #include <net/sock.h> #include <net/arp.h> -#if defined(CONFIG_AX25) || defined(CONFIG_AX25_MODULE) #include <net/ax25.h> -#if defined(CONFIG_NETROM) || defined(CONFIG_NETROM_MODULE) #include <net/netrom.h> -#endif -#endif #if defined(CONFIG_ATM_CLIP) || defined(CONFIG_ATM_CLIP_MODULE) #include <net/atmclip.h> struct neigh_table *clip_tbl_hook; @@ -731,20 +727,10 @@ static int arp_process(struct sk_buff *skb) htons(dev_type) != arp->ar_hrd) goto out; break; -#ifdef CONFIG_NET_ETHERNET case ARPHRD_ETHER: -#endif -#ifdef CONFIG_TR case ARPHRD_IEEE802_TR: -#endif -#ifdef CONFIG_FDDI case ARPHRD_FDDI: -#endif -#ifdef CONFIG_NET_FC case ARPHRD_IEEE802: -#endif -#if defined(CONFIG_NET_ETHERNET) || defined(CONFIG_TR) || \ - defined(CONFIG_FDDI) || defined(CONFIG_NET_FC) /* * ETHERNET, Token Ring and Fibre Channel (which are IEEE 802 * devices, according to RFC 2625) devices will accept ARP @@ -759,21 +745,16 @@ static int arp_process(struct sk_buff *skb) arp->ar_pro != htons(ETH_P_IP)) goto out; break; -#endif -#if defined(CONFIG_AX25) || defined(CONFIG_AX25_MODULE) case ARPHRD_AX25: if (arp->ar_pro != htons(AX25_P_IP) || arp->ar_hrd != htons(ARPHRD_AX25)) goto out; break; -#if defined(CONFIG_NETROM) || defined(CONFIG_NETROM_MODULE) case ARPHRD_NETROM: if (arp->ar_pro != htons(AX25_P_IP) || arp->ar_hrd != htons(ARPHRD_NETROM)) goto out; break; -#endif -#endif } /* Understand only these message types */ ^ permalink raw reply related [flat|nested] 25+ messages in thread
* Re: [2.6 patch] ipv4/arp.c:arp_process(): remove bogus #ifdef mess 2007-11-25 16:30 ` [2.6 patch] ipv4/arp.c:arp_process(): remove bogus #ifdef mess Adrian Bunk @ 2007-11-26 15:19 ` Herbert Xu 2007-11-26 20:25 ` Adrian Bunk 0 siblings, 1 reply; 25+ messages in thread From: Herbert Xu @ 2007-11-26 15:19 UTC (permalink / raw) To: Adrian Bunk Cc: David Miller, david-b, randy.dunlap, toralf.foerster, linux-kernel, netdev On Sun, Nov 25, 2007 at 04:30:03PM +0000, Adrian Bunk wrote: > > > > > > Please look at net/ipv4/arp.c:arp_process() > > > > > > Am I right that CONFIG_NET_ETHERNET=n and CONFIG_NETDEV_1000=y or > > > CONFIG_NETDEV_10000=y will not be handled correctly there? > > > > > > And the best solution is to nuke all #ifdef's in this function and make > > > the code unconditionally available? > > > > I think removing those specific ifdefs in arp_process() > > is the best option, yes. > > Patch below. Thanks Adrian. Patch applied to net-2.6. Do we need this for stable too? Chers, -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [2.6 patch] ipv4/arp.c:arp_process(): remove bogus #ifdef mess 2007-11-26 15:19 ` Herbert Xu @ 2007-11-26 20:25 ` Adrian Bunk 0 siblings, 0 replies; 25+ messages in thread From: Adrian Bunk @ 2007-11-26 20:25 UTC (permalink / raw) To: Herbert Xu Cc: David Miller, david-b, randy.dunlap, toralf.foerster, linux-kernel, netdev On Mon, Nov 26, 2007 at 11:19:26PM +0800, Herbert Xu wrote: > On Sun, Nov 25, 2007 at 04:30:03PM +0000, Adrian Bunk wrote: > > > > > > > > Please look at net/ipv4/arp.c:arp_process() > > > > > > > > Am I right that CONFIG_NET_ETHERNET=n and CONFIG_NETDEV_1000=y or > > > > CONFIG_NETDEV_10000=y will not be handled correctly there? > > > > > > > > And the best solution is to nuke all #ifdef's in this function and make > > > > the code unconditionally available? > > > > > > I think removing those specific ifdefs in arp_process() > > > is the best option, yes. > > > > Patch below. > > Thanks Adrian. Patch applied to net-2.6. > > Do we need this for stable too? Unless I'm misunderstanding the code we currently wrongly ignore some ARP packages based on the setting of an unrelated option, so it seems to be a -stable candidate when it's in Linus' tree. > Chers, cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-02 18:45 ` David Brownell 2007-11-02 18:57 ` Adrian Bunk @ 2007-11-02 20:05 ` Adrian Bunk 1 sibling, 0 replies; 25+ messages in thread From: Adrian Bunk @ 2007-11-02 20:05 UTC (permalink / raw) To: David Brownell; +Cc: Randy Dunlap, Toralf Förster, linux-kernel, netdev On Fri, Nov 02, 2007 at 11:45:15AM -0700, David Brownell wrote: >... > --- a.orig/drivers/net/usb/usbnet.c 2007-10-13 15:16:10.000000000 -0700 > +++ a/drivers/net/usb/usbnet.c 2007-11-02 11:39:59.000000000 -0700 > @@ -682,10 +682,17 @@ done_nopm: > /* ethtool methods; minidrivers may need to add some more, but > * they'll probably want to use this base set. > */ > +#undef HAVE_MII > > -#if defined(CONFIG_MII) || defined(CONFIG_MII_MODULE) > +#if defined(CONFIG_MII) > #define HAVE_MII > > +#elif defined(CONFIG_MII_MODULE) && defined(MODULE) > +#define HAVE_MII > +#endif > + > +#ifdef HAVE_MII > + > int usbnet_get_settings (struct net_device *net, struct ethtool_cmd *cmd) > { > struct usbnet *dev = netdev_priv(net); > Despite all what you do in Kconfig and what you wrongly blame on "select" the bug is in usbnet.c and this fix to usbnet.c _alone_ would be enough to fix the bug. But since you said you care about not including bloat you should better take my second patch that results in smaller code in some configurations. cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-01 23:32 ` David Brownell 2007-11-01 23:44 ` Adrian Bunk @ 2007-11-07 8:20 ` David Miller 2007-11-07 22:15 ` David Brownell 1 sibling, 1 reply; 25+ messages in thread From: David Miller @ 2007-11-07 8:20 UTC (permalink / raw) To: david-b; +Cc: randy.dunlap, toralf.foerster, linux-kernel, netdev, greg David, I hate to say this and point you out like this, but you are a real cancer for bug fixes to USB things in the kernel, and I'm very tired of seeing things stuck in the mud (and engineering resources wasted) because of how you handle things. It's very bad for Linux, and the USB code in particular. If I had a nickel for every patch from someone else you grinded into the ground and stalled I'd truly be a millionare. You absolutely stifle development progress. I thought my OHCI deadlock patch was an isolated case (and nothing is still applied, which is just awesome, my original patch was posted more than a month ago), but you're doing the same exact thing to Adrian here too. You want to see things fixed your way. But you can get away with the if, and only if, you can spend every day working on your own version of fixes when you don't like the submitters version. But unlike me you don't have that luxury so you have to give patch submitters a larger level of freedom and, plainly, just "let go". ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': 2007-11-07 8:20 ` David Miller @ 2007-11-07 22:15 ` David Brownell 0 siblings, 0 replies; 25+ messages in thread From: David Brownell @ 2007-11-07 22:15 UTC (permalink / raw) To: David Miller; +Cc: randy.dunlap, toralf.foerster, linux-kernel, netdev, greg On Wednesday 07 November 2007, David Miller wrote: > David, I hate to say this and point you out like this, but you are a > real cancer for bug fixes to USB things in the kernel, You didn't hate it enough to find a way to deal with your issue that doesn't involve namecalling or other flamage, I'll note. I know, I know ... you wouldn't want anyone to get the mistaken impression that LKML is one of those easy-to-get-along-on mailing lists. Namecalling helps prevent anyone from ever thinking that! > If I had a nickel for every patch from someone else you grinded into > the ground and stalled I'd truly be a millionare. Hyperbole helps too... Twenty million patches, surely from some large fraction of a million kernel patch submitters ... what a crazy dream! (An enviable one, maybe; but way below the last statistics on the subject which I read.) As for "grind into the ground and stall" ... clearly that's not how I'd describe things. > You absolutely stifle development progress. I thought my OHCI > deadlock patch was an isolated case (and nothing is still applied, > which is just awesome, my original patch was posted more than a month > ago), I'm not sure why the patch I signed off on didn't merge either; that was specificially related to the OHCI part of that problem. Hmm, digging through my mail I see several other patches doing the same thing were also floating around. None of them had any improvement over what I had signed off on. Maybe there was just too much confusion for Greg to want to merge the one which I'd already signed off on... It hasn't been removed from my merge queue, since it's not yet shown up from kernel.org ... which means that it'd be one of the patches to be resubmitted before we get much deeper into this particular RC series. In fact, I just resent it (with a few minor tweaks, essentially comment updates). Of course, *YOU* are the roadblock on the more generic side of that problem. I don't recall hearing back from you about the minor/obvious update to the HUB+EHCI patch adding a msleep() to bypass the hardware race you reported. That is, other than your refusal to even try letting the three or more clock domains finish synchronizing, before releasing that lock and then starting something that relied on that synch having finished... > but you're doing the same exact thing to Adrian here too. Hmm, and there I was prepared to sign off on Adrian's last patch. True, I hadn't yet done so. But there were several workable fixes in hand, plus a trivial workaround ... I just didn't make time to try that one out over the weekend. I'm glad you grabbed the patch I would have signed off on, if I'd had time to verify it. > You want to see things fixed your way. But you can get away with the > if, and only if, you can spend every day working on your own version > of fixes when you don't like the submitters version. You know, that's hardly a standard kernel-wide policy for how maintainers work ... except maybe ones in "supported" areas, and not always even then. Though I certainly know why it could seem attactive to want that treatment for patches you submit. I know many of us would just love to get that level of response/support for everything we submit. I don't always get it; in some areas, it *never* happens. In fact, it's pretty routine to have patches wait for a while before they get merged, or even sometimes reviewed ... where "a while" will sometimes cover many (annoying) months. Also, some maintainers demand many iterations of patches, without doing *any* fixup themselves. It's as if ... hmm ... maybe there were only so many hours per day going into that such stuff? Or as if people had different priorities? Bizarre notions, I know!! > But unlike me > you don't have that luxury so you have to give patch submitters a > larger level of freedom and, plainly, just "let go". Same goes for maintainers too, you know. If you're still wondering about a patch, a private "ping" is common practice; far more so than public vilification. In fact, it's best if you never use a public vilification step. Certainly not until after conventional measures ("ping!") fail repeatedly, and bad faith has been clearly shown. (Neither of which apply in this case.) ^ permalink raw reply [flat|nested] 25+ messages in thread
* [2.6 patch] let USB_USBNET always select MII [not found] <200711012024.57412.toralf.foerster@gmx.de> 2007-11-01 21:11 ` build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': Randy Dunlap @ 2007-11-01 22:25 ` Adrian Bunk 2007-11-01 23:52 ` David Brownell 2007-11-07 8:10 ` [2.6 patch] let USB_USBNET always select MII David Miller 1 sibling, 2 replies; 25+ messages in thread From: Adrian Bunk @ 2007-11-01 22:25 UTC (permalink / raw) To: Toralf Förster, dbrownell, jgarzik; +Cc: linux-kernel, netdev All this USB_USBNET_MII trickery is simply not worth it considering how few code it saves. As a side effect, this also fixes the following compile error reported by Toralf Förster: <-- snip --> ... LD .tmp_vmlinux1 drivers/built-in.o: In function `usbnet_set_settings': (.text+0xf1876): undefined reference to `mii_ethtool_sset' drivers/built-in.o: In function `usbnet_get_settings': (.text+0xf1836): undefined reference to `mii_ethtool_gset' drivers/built-in.o: In function `usbnet_get_link': (.text+0xf18d6): undefined reference to `mii_link_ok' drivers/built-in.o: In function `usbnet_nway_reset': (.text+0xf18f6): undefined reference to `mii_nway_restart' make: *** [.tmp_vmlinux1] Error 1 <-- snip --> Signed-off-by: Adrian Bunk <bunk@kernel.org> --- drivers/net/usb/Kconfig | 9 +-------- drivers/net/usb/usbnet.c | 7 ------- 2 files changed, 1 insertion(+), 15 deletions(-) 3b7f6290c639b9042fead1698fdbe1c84132c953 diff --git a/drivers/net/usb/Kconfig b/drivers/net/usb/Kconfig index 5a96d74..a12c9c4 100644 --- a/drivers/net/usb/Kconfig +++ b/drivers/net/usb/Kconfig @@ -93,13 +93,9 @@ config USB_RTL8150 To compile this driver as a module, choose M here: the module will be called rtl8150. -config USB_USBNET_MII - tristate - default n - config USB_USBNET tristate "Multi-purpose USB Networking Framework" - select MII if USB_USBNET_MII != n + select MII ---help--- This driver supports several kinds of network links over USB, with "minidrivers" built around a common network driver core @@ -135,7 +131,6 @@ config USB_NET_AX8817X tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters" depends on USB_USBNET && NET_ETHERNET select CRC32 - select USB_USBNET_MII default y help This option adds support for ASIX AX88xxx based USB 2.0 @@ -190,7 +185,6 @@ config USB_NET_DM9601 tristate "Davicom DM9601 based USB 1.1 10/100 ethernet devices" depends on USB_USBNET select CRC32 - select USB_USBNET_MII help This option adds support for Davicom DM9601 based USB 1.1 10/100 Ethernet adapters. @@ -225,7 +219,6 @@ config USB_NET_PLUSB config USB_NET_MCS7830 tristate "MosChip MCS7830 based Ethernet adapters" depends on USB_USBNET - select USB_USBNET_MII help Choose this option if you're using a 10/100 Ethernet USB2 adapter based on the MosChip 7830 controller. This includes diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c index acd5f1c..8ed1fc5 100644 --- a/drivers/net/usb/usbnet.c +++ b/drivers/net/usb/usbnet.c @@ -683,9 +683,6 @@ done_nopm: * they'll probably want to use this base set. */ -#if defined(CONFIG_MII) || defined(CONFIG_MII_MODULE) -#define HAVE_MII - int usbnet_get_settings (struct net_device *net, struct ethtool_cmd *cmd) { struct usbnet *dev = netdev_priv(net); @@ -744,8 +741,6 @@ int usbnet_nway_reset(struct net_device *net) } EXPORT_SYMBOL_GPL(usbnet_nway_reset); -#endif /* HAVE_MII */ - void usbnet_get_drvinfo (struct net_device *net, struct ethtool_drvinfo *info) { struct usbnet *dev = netdev_priv(net); @@ -776,12 +771,10 @@ EXPORT_SYMBOL_GPL(usbnet_set_msglevel); /* drivers may override default ethtool_ops in their bind() routine */ static struct ethtool_ops usbnet_ethtool_ops = { -#ifdef HAVE_MII .get_settings = usbnet_get_settings, .set_settings = usbnet_set_settings, .get_link = usbnet_get_link, .nway_reset = usbnet_nway_reset, -#endif .get_drvinfo = usbnet_get_drvinfo, .get_msglevel = usbnet_get_msglevel, .set_msglevel = usbnet_set_msglevel, ^ permalink raw reply related [flat|nested] 25+ messages in thread
* Re: [2.6 patch] let USB_USBNET always select MII 2007-11-01 22:25 ` [2.6 patch] let USB_USBNET always select MII Adrian Bunk @ 2007-11-01 23:52 ` David Brownell 2007-11-02 15:46 ` [2.6 patch] usbnet.c: check for the right MII variable Adrian Bunk 2007-11-07 8:10 ` [2.6 patch] let USB_USBNET always select MII David Miller 1 sibling, 1 reply; 25+ messages in thread From: David Brownell @ 2007-11-01 23:52 UTC (permalink / raw) To: Adrian Bunk; +Cc: Toralf Förster, jgarzik, linux-kernel, netdev On Thursday 01 November 2007, Adrian Bunk wrote: > All this USB_USBNET_MII trickery is simply not worth it considering how > few code it saves. Depends on what systems you're talking about. Forcing unused code into the kernel is not free, especially if that's made into a design policy and applied repeatedly to many subsystems. > As a side effect, this also fixes the following compile error reported > by Toralf Förster: Why not just fix the thing which changed and broke the build? Or if reverse dependencies can't be made to work sanely, then have those Ethernet-adapter minidrivers depend on NET_ETHERNET and then select MII. (To make the relationships be simple enough that current Kconfig can handle them.) I have a fair number of usbnet devices. Not one of them needs MII or NET_ETHERNET. - Dave ^ permalink raw reply [flat|nested] 25+ messages in thread
* [2.6 patch] usbnet.c: check for the right MII variable 2007-11-01 23:52 ` David Brownell @ 2007-11-02 15:46 ` Adrian Bunk 2007-11-07 22:31 ` David Brownell 0 siblings, 1 reply; 25+ messages in thread From: Adrian Bunk @ 2007-11-02 15:46 UTC (permalink / raw) To: David Brownell; +Cc: Toralf Förster, jgarzik, linux-kernel, netdev On Thu, Nov 01, 2007 at 04:52:39PM -0700, David Brownell wrote: > On Thursday 01 November 2007, Adrian Bunk wrote: > > All this USB_USBNET_MII trickery is simply not worth it considering how > > few code it saves. > > Depends on what systems you're talking about. Forcing unused > code into the kernel is not free, especially if that's made into > a design policy and applied repeatedly to many subsystems. If it was turned into a design policy... My impression is that in some parts of the kernel every byte gets counted, while in other parts noone would notice a few kilobytes more or less. > > As a side effect, this also fixes the following compile error reported > > by Toralf Förster: > > Why not just fix the thing which changed and broke the build? Today it's exactly one year since your commit entered the tree. Dear bug, happy birthday! ;-) > Or if reverse dependencies can't be made to work sanely, then > have those Ethernet-adapter minidrivers depend on NET_ETHERNET > and then select MII. (To make the relationships be simple > enough that current Kconfig can handle them.) It's not Kconfig's fault that you test for the wrong variable in usbnet.c ... > I have a fair number of usbnet devices. Not one of them needs > MII or NET_ETHERNET. I don't understand why you think this bug was in any way related to NET_ETHERNET - set NET_ETHERNET=y and the bug is still present. If you insist on the #ifdef's take the patch below - it even saves a few additional bytes if you have non-usbnet net drivers requiring MII enabled statically or as modules in your .config but no usbnet drivers requiring MII. > - Dave cu Adrian <-- snip --> This patch fixes the following compile error with CONFIG_MII=m, CONFIG_USB_USBNET=y, CONFIG_USB_USBNET_MII=n: <-- snip --> ... LD .tmp_vmlinux1 drivers/built-in.o: In function `usbnet_set_settings': (.text+0xf1876): undefined reference to `mii_ethtool_sset' drivers/built-in.o: In function `usbnet_get_settings': (.text+0xf1836): undefined reference to `mii_ethtool_gset' drivers/built-in.o: In function `usbnet_get_link': (.text+0xf18d6): undefined reference to `mii_link_ok' drivers/built-in.o: In function `usbnet_nway_reset': (.text+0xf18f6): undefined reference to `mii_nway_restart' make: *** [.tmp_vmlinux1] Error 1 <-- snip --> This bug was introduced by commit 18ee91fa9815fa3bb4e51cdcb8229bd0a0f11a70 and reported by Toralf Förster. Signed-off-by: Adrian Bunk <bunk@kernel.org> --- BTW: The Kconfig part of this patch is not really required, but testing for #if defined(CONFIG_USB_USBNET_MII) || defined(CONFIG_USB_USBNET_MII_MODULE) would look needlessly ugly. drivers/net/usb/Kconfig | 5 ++--- drivers/net/usb/usbnet.c | 7 +++---- 2 files changed, 5 insertions(+), 7 deletions(-) a421e4910eb30b140a315e274632e87c7a218df6 diff --git a/drivers/net/usb/Kconfig b/drivers/net/usb/Kconfig index 5a96d74..9261371 100644 --- a/drivers/net/usb/Kconfig +++ b/drivers/net/usb/Kconfig @@ -94,12 +94,11 @@ config USB_RTL8150 module will be called rtl8150. config USB_USBNET_MII - tristate - default n + bool config USB_USBNET tristate "Multi-purpose USB Networking Framework" - select MII if USB_USBNET_MII != n + select MII if USB_USBNET_MII ---help--- This driver supports several kinds of network links over USB, with "minidrivers" built around a common network driver core diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c index acd5f1c..7393ab0 100644 --- a/drivers/net/usb/usbnet.c +++ b/drivers/net/usb/usbnet.c @@ -683,8 +683,7 @@ done_nopm: * they'll probably want to use this base set. */ -#if defined(CONFIG_MII) || defined(CONFIG_MII_MODULE) -#define HAVE_MII +#ifdef CONFIG_USB_USBNET_MII int usbnet_get_settings (struct net_device *net, struct ethtool_cmd *cmd) { @@ -744,7 +743,7 @@ int usbnet_nway_reset(struct net_device *net) } EXPORT_SYMBOL_GPL(usbnet_nway_reset); -#endif /* HAVE_MII */ +#endif /* CONFIG_USB_USBNET_MII */ void usbnet_get_drvinfo (struct net_device *net, struct ethtool_drvinfo *info) { @@ -776,7 +775,7 @@ EXPORT_SYMBOL_GPL(usbnet_set_msglevel); /* drivers may override default ethtool_ops in their bind() routine */ static struct ethtool_ops usbnet_ethtool_ops = { -#ifdef HAVE_MII +#ifdef CONFIG_USB_USBNET_MII .get_settings = usbnet_get_settings, .set_settings = usbnet_set_settings, .get_link = usbnet_get_link, ^ permalink raw reply related [flat|nested] 25+ messages in thread
* Re: [2.6 patch] usbnet.c: check for the right MII variable 2007-11-02 15:46 ` [2.6 patch] usbnet.c: check for the right MII variable Adrian Bunk @ 2007-11-07 22:31 ` David Brownell 0 siblings, 0 replies; 25+ messages in thread From: David Brownell @ 2007-11-07 22:31 UTC (permalink / raw) To: David Miller Cc: Adrian Bunk, Toralf Förster, jgarzik, linux-kernel, netdev On Friday 02 November 2007, Adrian Bunk wrote: > <-- snip --> > > > This patch fixes the following compile error with CONFIG_MII=m, > CONFIG_USB_USBNET=y, CONFIG_USB_USBNET_MII=n: This is the patch I liked better, if there was going to be one going upstream without additional test from me ... sorry, the patch you appear to have accepted was the worst of the three patches in flight. > > <-- snip --> > > ... > LD .tmp_vmlinux1 > drivers/built-in.o: In function `usbnet_set_settings': > (.text+0xf1876): undefined reference to `mii_ethtool_sset' > drivers/built-in.o: In function `usbnet_get_settings': > (.text+0xf1836): undefined reference to `mii_ethtool_gset' > drivers/built-in.o: In function `usbnet_get_link': > (.text+0xf18d6): undefined reference to `mii_link_ok' > drivers/built-in.o: In function `usbnet_nway_reset': > (.text+0xf18f6): undefined reference to `mii_nway_restart' > make: *** [.tmp_vmlinux1] Error 1 > > <-- snip --> > > This bug was introduced by commit 18ee91fa9815fa3bb4e51cdcb8229bd0a0f11a70 > and reported by Toralf Förster. > > Signed-off-by: Adrian Bunk <bunk@kernel.org> > > --- > > BTW: > The Kconfig part of this patch is not really required, but testing for > #if defined(CONFIG_USB_USBNET_MII) || defined(CONFIG_USB_USBNET_MII_MODULE) > would look needlessly ugly. > > drivers/net/usb/Kconfig | 5 ++--- > drivers/net/usb/usbnet.c | 7 +++---- > 2 files changed, 5 insertions(+), 7 deletions(-) > > a421e4910eb30b140a315e274632e87c7a218df6 > diff --git a/drivers/net/usb/Kconfig b/drivers/net/usb/Kconfig > index 5a96d74..9261371 100644 > --- a/drivers/net/usb/Kconfig > +++ b/drivers/net/usb/Kconfig > @@ -94,12 +94,11 @@ config USB_RTL8150 > module will be called rtl8150. > > config USB_USBNET_MII > - tristate > - default n > + bool > > config USB_USBNET > tristate "Multi-purpose USB Networking Framework" > - select MII if USB_USBNET_MII != n > + select MII if USB_USBNET_MII > ---help--- > This driver supports several kinds of network links over USB, > with "minidrivers" built around a common network driver core > diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c > index acd5f1c..7393ab0 100644 > --- a/drivers/net/usb/usbnet.c > +++ b/drivers/net/usb/usbnet.c > @@ -683,8 +683,7 @@ done_nopm: > * they'll probably want to use this base set. > */ > > -#if defined(CONFIG_MII) || defined(CONFIG_MII_MODULE) > -#define HAVE_MII > +#ifdef CONFIG_USB_USBNET_MII > > int usbnet_get_settings (struct net_device *net, struct ethtool_cmd *cmd) > { > @@ -744,7 +743,7 @@ int usbnet_nway_reset(struct net_device *net) > } > EXPORT_SYMBOL_GPL(usbnet_nway_reset); > > -#endif /* HAVE_MII */ > +#endif /* CONFIG_USB_USBNET_MII */ > > void usbnet_get_drvinfo (struct net_device *net, struct ethtool_drvinfo *info) > { > @@ -776,7 +775,7 @@ EXPORT_SYMBOL_GPL(usbnet_set_msglevel); > > /* drivers may override default ethtool_ops in their bind() routine */ > static struct ethtool_ops usbnet_ethtool_ops = { > -#ifdef HAVE_MII > +#ifdef CONFIG_USB_USBNET_MII > .get_settings = usbnet_get_settings, > .set_settings = usbnet_set_settings, > .get_link = usbnet_get_link, > ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [2.6 patch] let USB_USBNET always select MII 2007-11-01 22:25 ` [2.6 patch] let USB_USBNET always select MII Adrian Bunk 2007-11-01 23:52 ` David Brownell @ 2007-11-07 8:10 ` David Miller 1 sibling, 0 replies; 25+ messages in thread From: David Miller @ 2007-11-07 8:10 UTC (permalink / raw) To: bunk; +Cc: toralf.foerster, dbrownell, jgarzik, linux-kernel, netdev From: Adrian Bunk <bunk@kernel.org> Date: Thu, 1 Nov 2007 23:25:24 +0100 > All this USB_USBNET_MII trickery is simply not worth it considering how > few code it saves. > > As a side effect, this also fixes the following compile error reported > by Toralf Förster: > > <-- snip --> > > ... > LD .tmp_vmlinux1 > drivers/built-in.o: In function `usbnet_set_settings': > (.text+0xf1876): undefined reference to `mii_ethtool_sset' > drivers/built-in.o: In function `usbnet_get_settings': > (.text+0xf1836): undefined reference to `mii_ethtool_gset' > drivers/built-in.o: In function `usbnet_get_link': > (.text+0xf18d6): undefined reference to `mii_link_ok' > drivers/built-in.o: In function `usbnet_nway_reset': > (.text+0xf18f6): undefined reference to `mii_nway_restart' > make: *** [.tmp_vmlinux1] Error 1 > > <-- snip --> > > Signed-off-by: Adrian Bunk <bunk@kernel.org> Applied, thanks Adrian. ^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2007-11-26 20:25 UTC | newest]
Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <200711012024.57412.toralf.foerster@gmx.de>
2007-11-01 21:11 ` build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': Randy Dunlap
2007-11-01 23:32 ` David Brownell
2007-11-01 23:44 ` Adrian Bunk
2007-11-02 18:45 ` David Brownell
2007-11-02 18:57 ` Adrian Bunk
2007-11-02 19:30 ` David Brownell
2007-11-02 19:55 ` Adrian Bunk
2007-11-07 22:34 ` David Brownell
2007-11-07 22:52 ` Adrian Bunk
2007-11-08 2:53 ` David Brownell
2007-11-08 3:23 ` Adrian Bunk
2007-11-08 3:30 ` Adrian Bunk
2007-11-08 16:08 ` Randy Dunlap
2007-11-20 5:26 ` David Miller
2007-11-25 16:30 ` [2.6 patch] ipv4/arp.c:arp_process(): remove bogus #ifdef mess Adrian Bunk
2007-11-26 15:19 ` Herbert Xu
2007-11-26 20:25 ` Adrian Bunk
2007-11-02 20:05 ` build #337 failed for 2.6.24-rc1-gb1d08ac In function `usbnet_set_settings': Adrian Bunk
2007-11-07 8:20 ` David Miller
2007-11-07 22:15 ` David Brownell
2007-11-01 22:25 ` [2.6 patch] let USB_USBNET always select MII Adrian Bunk
2007-11-01 23:52 ` David Brownell
2007-11-02 15:46 ` [2.6 patch] usbnet.c: check for the right MII variable Adrian Bunk
2007-11-07 22:31 ` David Brownell
2007-11-07 8:10 ` [2.6 patch] let USB_USBNET always select MII David Miller
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).