• Kenji Kaneshige's avatar
    [PATCH] SHPC: Fix SHPC Contoller SERR-INT Register bits access · e7138723
    Kenji Kaneshige authored
    Current SHPCHP driver doesn't take care of RsvdP/RsvdZ[*] bits in
    controller SERR-INT register. This might cause unpredicable
    results. This patch fixes this bug.
    
    [*] RsvdP and RsvdZ are defined in SHPC spec as follows:
    
        RsvdP - Reserved and Preserved. Register bits of this type are
        reserved for future use as R/W bits. The value read is
        undefined. Writes are ignored. Software must follow These rules
        when accessing RsvdP bits:
    
    	- Software must ignore RsvdP bits when testing values read
              from these registers.
    	- Software must not depend on RsvdP bit's ability to retain
              information when written
    	- Software must always write back the value read in the RsvdP
    	  bits when writing one of these registers.
    
        RsvdZ - Reserved and Zero. Register bits of this type are reserved
        for future use as R/WC bits. The value read is undefined. Writes
        are ignored. Software must follow these rules when accessing RsvdZ
        bits:
    
            - Software must ignore RsvdZ bits when testing values read
    	  from these registers.
    	- Software must not depends on a RsvdZ bit's ability to retain
    	  information when written.
    	- Software must always write 0 to RsvdZ bits when writing one
    	  of these register.
    Signed-off-by: default avatarKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
    Cc: Kristen Accardi <kristen.c.accardi@intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    e7138723
shpchp_hpc.c 37.5 KB