23 Jun, 2006

10 commits

  • This patch contains the following possible cleanups:
    - the following file did't #include the header with the prototypes for
    it's global functions:
    - w1_int.c
    - #if 0 the following unused global function:
    - w1_family.c: w1_family_get()
    - make the following needlessly global functions static:
    - w1_family.c: __w1_family_put()
    - w1_io.c: w1_delay()
    - w1_io.c: w1_touch_bit()
    - w1_io.c: w1_read_8()
    - remove the following unused EXPORT_SYMBOL's:
    - w1_family.c: w1_family_put
    - w1_family.c: w1_family_registered

    Signed-off-by: Adrian Bunk
    Signed-off-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • Nice cleanup spotted by Adrian Bunk, which was lost due to moving to the
    completely new functionality.

    Shame-shame-shame on me.

    Signed-off-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • From: Andrew Morton

    WARNING: "w1_read_block" [drivers/w1/slaves/w1_therm.ko] undefined!
    WARNING: "w1_write_8" [drivers/w1/slaves/w1_therm.ko] undefined!
    WARNING: "w1_reset_select_slave" [drivers/w1/slaves/w1_therm.ko] undefined!
    WARNING: "w1_reset_bus" [drivers/w1/slaves/w1_ds2433.ko] undefined!
    WARNING: "w1_write_8" [drivers/w1/slaves/w1_ds2433.ko] undefined!
    WARNING: "w1_read_block" [drivers/w1/slaves/w1_ds2433.ko] undefined!
    WARNING: "w1_write_block" [drivers/w1/slaves/w1_ds2433.ko] undefined!
    WARNING: "w1_reset_select_slave" [drivers/w1/slaves/w1_ds2433.ko] undefined!

    Cc: Evgeniy Polyakov
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Andrew Morton
     
  • Use mutexes instead of semaphores.
    Patch tested on x86_64 and i386 with test bus master driver.

    Signed-off-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • Make w1 connector notifications depend on connector.

    Signed-off-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • netlink_w1 was moved to connector.

    Signed-off-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • Signed-off-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • There are three types of messages between w1 core and userspace:
    1. Events. They are generated each time new master or slave device found
    either due to automatic or requested search.
    2. Userspace commands. Includes read/write and search/alarm search comamnds.
    3. Replies to userspace commands.

    From: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • Evgeniy Polyakov
     
  • Special file in each w1 slave device's directory called "rw" is created
    each time new slave and no appropriate w1 family is registered.
    "rw" file supports read and write operations, which allows to perform
    almost any kind of operations. Each logical operation is a transaction
    in nature, which can contain several (two or one) low-level operations.
    Let's see how one can read EEPROM context:
    1. one must write control buffer, i.e. buffer containing command byte
    and two byte address. At this step bus is reset and appropriate device
    is selected using either W1_SKIP_ROM or W1_MATCH_ROM command.
    Then provided control buffer is being written to the wire.
    2. reading. This will issue reading eeprom response.

    It is possible that between 1. and 2. w1 master thread will reset bus for
    searching and slave device will be even removed, but in this case 0xff will
    be read, since no device was selected.

    Signed-off-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     

22 Jun, 2006

30 commits