1. 19 Jun, 2004 9 commits
    • Roger Luethi's avatar
      [PATCH] Fix Tx engine race for good · 8332b1fc
      Roger Luethi authored
      It finally dawned on me how to eliminate the race I've been narrowing
      down with earlier patches: Instead of writing the command registers as
      one word, write them one at a time (as bytes). The race was for settings
      bits in ChipCmd and ChipCmd1 (0x09) against the chip clearing CmdTxOn
      which is in ChipCmd.
      
      In addition to writing single bytes, the fix requires a switch from
      using bit 5 in ChipCmd0 to bit 5 in ChipCmd1 (which is equivalent)
      to signal Tx demand.
      
      Also, don't restart Rx engine "pre-emptively" in rhine_rx, that's a
      sure way to race with the chip.
      
      Introduce RHINE_WAIT_FOR, a macro for small busy loops with primitive
      completion checking.
      Signed-off-by: default avatarRoger Luethi <rl@hellgate.ch>
      8332b1fc
    • Roger Luethi's avatar
      [PATCH] Remove options, full_duplex parameters · 85bd04fd
      Roger Luethi authored
      Nobody complained although media locking parameters were broken
      forever. They were sort of fixed recently, but the code is still in a
      bad shape.
      
      More seriously, the options/full_duplex stuff has fundamental design
      problems that have been discussed in-depth on the list (e.g. effect of
      hotplugging, nameif, suspend/resume).
      
      For those needing media locking with Linux 2.6+ via-rhine, ethtool(8)
      is the replacement.
      Signed-off-by: default avatarRoger Luethi <rl@hellgate.ch>
      85bd04fd
    • Roger Luethi's avatar
      [PATCH] Rewrite PHY detection · 57283f54
      Roger Luethi authored
      Instead of probing, set phy_id to 1 for Rhine III and read phy_id from
      EEPROM-controlled register for Rhine I/II.
      
      Remove code for handling anything other than 1 MII PHY. If it wasn't
      unnecessary code to begin with, it would need to be fixed because it
      wouldn't work.
      
      Use mii_if_info.phy_id as the only container of phy_id. Not particulary
      happy about those names (phy_id vs. MII_PHYSIDx), but being consequent
      about it mitigates confusion.
      Signed-off-by: default avatarRoger Luethi <rl@hellgate.ch>
      57283f54
    • Roger Luethi's avatar
      [PATCH] Remove lingering PHY special casing · 4a2d452e
      Roger Luethi authored
      All this code is broken (e.g. unconditionally programs all PHYs as if
      they were the same model) and/or unused (IntrLinkChange never occurs
      with driver as is).
      Signed-off-by: default avatarRoger Luethi <rl@hellgate.ch>
      4a2d452e
    • Roger Luethi's avatar
      [PATCH] fix mc_filter on big-endian arch · fdc91e7f
      Roger Luethi authored
      A.J. from VIA Networking Technologies noticed that via-rhine is using
      cpu_to_le32() when preparing mc_filter hashes. This breaks Rhine hardware
      multicast filters on big-endian architectures.
      Signed-off-by: default avatarRoger Luethi <rl@hellgate.ch>
      fdc91e7f
    • Roger Luethi's avatar
      [PATCH] Restructure reset code · 08d95376
      Roger Luethi authored
      Restructure code to make it easier to maintain.
      
      rhine_hw_init: resets chip, reloads eeprom
      rhine_chip_reset: chip reset + what used to be wait_for_reset
      rhine_reload_eeprom: reload eeprom, re-enable MMIO, disable EEPROM-controlled
      	WOL
      
      Note: Chip reset clears a bunch of registers that should be reloaded
      from EEPROM (which turns off MMIO). Deal with that later.
      Signed-off-by: default avatarRoger Luethi <rl@hellgate.ch>
      08d95376
    • Mikulas Patocka's avatar
      [PATCH] HPFS fixes for 2.6.7 kernel · 29a54a41
      Mikulas Patocka authored
      This contains hpfs fixes from my source ported to 2.6.7 kernel:
      
      updates:
      - allocator fragments files less
      - OS/2 Warp Server filesystem can be mounted read/only
      - added reschedule points so that it doesn't hog CPU
      
      bug fixes:
      - filesystem error message when syncing or fsyncing deleted file (or when
        system just writes it on its own)
      - filesystem error on extremly fragmented files
      - corrupted disk structures could possibly corrupt memory
      29a54a41
    • Andrew Morton's avatar
      [PATCH] mptctl.c build fix · 2c4d93fe
      Andrew Morton authored
      drivers/message/fusion/mptctl.c:89:24: asm/compat.h: No such file or directory
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      2c4d93fe
    • Linus Torvalds's avatar
      Merge http://lia64.bkbits.net/to-linus-2.5 · ac6a5f92
      Linus Torvalds authored
      into ppc970.osdl.org:/home/torvalds/v2.6/linux
      ac6a5f92
  2. 18 Jun, 2004 31 commits