mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-21 00:42:16 +00:00
[S390] cio: Get rid of css_characteristics_avail.
Checking for the validity of the css_*_characteristics is superfluous since they stay 0 for non-successful scsc. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
This commit is contained in:
parent
d2fec59551
commit
75784c0087
@ -415,8 +415,7 @@ int chp_new(struct chp_id chpid)
|
|||||||
goto out_free;
|
goto out_free;
|
||||||
}
|
}
|
||||||
/* Get channel-measurement characteristics. */
|
/* Get channel-measurement characteristics. */
|
||||||
if (css_characteristics_avail && css_chsc_characteristics.scmc
|
if (css_chsc_characteristics.scmc && css_chsc_characteristics.secm) {
|
||||||
&& css_chsc_characteristics.secm) {
|
|
||||||
ret = chsc_get_channel_measurement_chars(chp);
|
ret = chsc_get_channel_measurement_chars(chp);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out_free;
|
goto out_free;
|
||||||
|
@ -78,7 +78,6 @@ struct chsc_ssd_info {
|
|||||||
extern int chsc_get_ssd_info(struct subchannel_id schid,
|
extern int chsc_get_ssd_info(struct subchannel_id schid,
|
||||||
struct chsc_ssd_info *ssd);
|
struct chsc_ssd_info *ssd);
|
||||||
extern int chsc_determine_css_characteristics(void);
|
extern int chsc_determine_css_characteristics(void);
|
||||||
extern int css_characteristics_avail;
|
|
||||||
extern int chsc_alloc_sei_area(void);
|
extern int chsc_alloc_sei_area(void);
|
||||||
extern void chsc_free_sei_area(void);
|
extern void chsc_free_sei_area(void);
|
||||||
|
|
||||||
|
@ -1344,8 +1344,7 @@ static int __init init_cmf(void)
|
|||||||
* to basic mode.
|
* to basic mode.
|
||||||
*/
|
*/
|
||||||
if (format == CMF_AUTODETECT) {
|
if (format == CMF_AUTODETECT) {
|
||||||
if (!css_characteristics_avail ||
|
if (!css_general_characteristics.ext_mb) {
|
||||||
!css_general_characteristics.ext_mb) {
|
|
||||||
format = CMF_BASIC;
|
format = CMF_BASIC;
|
||||||
} else {
|
} else {
|
||||||
format = CMF_EXTENDED;
|
format = CMF_EXTENDED;
|
||||||
|
@ -30,8 +30,6 @@ static int max_ssid = 0;
|
|||||||
|
|
||||||
struct channel_subsystem *channel_subsystems[__MAX_CSSID + 1];
|
struct channel_subsystem *channel_subsystems[__MAX_CSSID + 1];
|
||||||
|
|
||||||
int css_characteristics_avail = 0;
|
|
||||||
|
|
||||||
int
|
int
|
||||||
for_each_subchannel(int(*fn)(struct subchannel_id, void *), void *data)
|
for_each_subchannel(int(*fn)(struct subchannel_id, void *), void *data)
|
||||||
{
|
{
|
||||||
@ -611,7 +609,7 @@ __init_channel_subsystem(struct subchannel_id schid, void *data)
|
|||||||
static void __init
|
static void __init
|
||||||
css_generate_pgid(struct channel_subsystem *css, u32 tod_high)
|
css_generate_pgid(struct channel_subsystem *css, u32 tod_high)
|
||||||
{
|
{
|
||||||
if (css_characteristics_avail && css_general_characteristics.mcss) {
|
if (css_general_characteristics.mcss) {
|
||||||
css->global_pgid.pgid_high.ext_cssid.version = 0x80;
|
css->global_pgid.pgid_high.ext_cssid.version = 0x80;
|
||||||
css->global_pgid.pgid_high.ext_cssid.cssid = css->cssid;
|
css->global_pgid.pgid_high.ext_cssid.cssid = css->cssid;
|
||||||
} else {
|
} else {
|
||||||
@ -748,8 +746,6 @@ init_channel_subsystem (void)
|
|||||||
ret = chsc_determine_css_characteristics();
|
ret = chsc_determine_css_characteristics();
|
||||||
if (ret == -ENOMEM)
|
if (ret == -ENOMEM)
|
||||||
goto out; /* No need to continue. */
|
goto out; /* No need to continue. */
|
||||||
if (ret == 0)
|
|
||||||
css_characteristics_avail = 1;
|
|
||||||
|
|
||||||
ret = chsc_alloc_sei_area();
|
ret = chsc_alloc_sei_area();
|
||||||
if (ret)
|
if (ret)
|
||||||
@ -793,8 +789,7 @@ init_channel_subsystem (void)
|
|||||||
ret = device_register(&css->device);
|
ret = device_register(&css->device);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out_free_all;
|
goto out_free_all;
|
||||||
if (css_characteristics_avail &&
|
if (css_chsc_characteristics.secm) {
|
||||||
css_chsc_characteristics.secm) {
|
|
||||||
ret = device_create_file(&css->device,
|
ret = device_create_file(&css->device,
|
||||||
&dev_attr_cm_enable);
|
&dev_attr_cm_enable);
|
||||||
if (ret)
|
if (ret)
|
||||||
@ -832,7 +827,7 @@ out_unregister:
|
|||||||
i--;
|
i--;
|
||||||
css = channel_subsystems[i];
|
css = channel_subsystems[i];
|
||||||
device_unregister(&css->pseudo_subchannel->dev);
|
device_unregister(&css->pseudo_subchannel->dev);
|
||||||
if (css_characteristics_avail && css_chsc_characteristics.secm)
|
if (css_chsc_characteristics.secm)
|
||||||
device_remove_file(&css->device,
|
device_remove_file(&css->device,
|
||||||
&dev_attr_cm_enable);
|
&dev_attr_cm_enable);
|
||||||
device_unregister(&css->device);
|
device_unregister(&css->device);
|
||||||
@ -956,4 +951,3 @@ subsys_initcall(init_channel_subsystem);
|
|||||||
|
|
||||||
MODULE_LICENSE("GPL");
|
MODULE_LICENSE("GPL");
|
||||||
EXPORT_SYMBOL(css_bus_type);
|
EXPORT_SYMBOL(css_bus_type);
|
||||||
EXPORT_SYMBOL_GPL(css_characteristics_avail);
|
|
||||||
|
@ -2354,9 +2354,6 @@ tiqdio_check_chsc_availability(void)
|
|||||||
{
|
{
|
||||||
char dbf_text[15];
|
char dbf_text[15];
|
||||||
|
|
||||||
if (!css_characteristics_avail)
|
|
||||||
return -EIO;
|
|
||||||
|
|
||||||
/* Check for bit 41. */
|
/* Check for bit 41. */
|
||||||
if (!css_general_characteristics.aif) {
|
if (!css_general_characteristics.aif) {
|
||||||
QDIO_PRINT_WARN("Adapter interruption facility not " \
|
QDIO_PRINT_WARN("Adapter interruption facility not " \
|
||||||
|
Loading…
Reference in New Issue
Block a user