Current File : //proc/self/root/usr/src/linux-headers-6.8.0-60-generic/include/linux/mfd/wm8350/rtc.h
/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * rtc.h  --  RTC driver for Wolfson WM8350 PMIC
 *
 * Copyright 2007 Wolfson Microelectronics PLC
 */

#ifndef __LINUX_MFD_WM8350_RTC_H
#define __LINUX_MFD_WM8350_RTC_H

#include <linux/platform_device.h>

/*
 * Register values.
 */
#define WM8350_RTC_SECONDS_MINUTES              0x10
#define WM8350_RTC_HOURS_DAY                    0x11
#define WM8350_RTC_DATE_MONTH                   0x12
#define WM8350_RTC_YEAR                         0x13
#define WM8350_ALARM_SECONDS_MINUTES            0x14
#define WM8350_ALARM_HOURS_DAY                  0x15
#define WM8350_ALARM_DATE_MONTH                 0x16
#define WM8350_RTC_TIME_CONTROL                 0x17

/*
 * R16 (0x10) - RTC Seconds/Minutes
 */
#define WM8350_RTC_MINS_MASK                    0x7F00
#define WM8350_RTC_MINS_SHIFT                        8
#define WM8350_RTC_SECS_MASK                    0x007F
#define WM8350_RTC_SECS_SHIFT                        0

/*
 * R17 (0x11) - RTC Hours/Day
 */
#define WM8350_RTC_DAY_MASK                     0x0700
#define WM8350_RTC_DAY_SHIFT                         8
#define WM8350_RTC_HPM_MASK                     0x0020
#define WM8350_RTC_HPM_SHIFT                         5
#define WM8350_RTC_HRS_MASK                     0x001F
#define WM8350_RTC_HRS_SHIFT                         0

/* Bit values for R21 (0x15) */
#define WM8350_RTC_DAY_SUN                           1
#define WM8350_RTC_DAY_MON                           2
#define WM8350_RTC_DAY_TUE                           3
#define WM8350_RTC_DAY_WED                           4
#define WM8350_RTC_DAY_THU                           5
#define WM8350_RTC_DAY_FRI                           6
#define WM8350_RTC_DAY_SAT                           7

#define WM8350_RTC_HPM_AM                            0
#define WM8350_RTC_HPM_PM                            1

/*
 * R18 (0x12) - RTC Date/Month
 */
#define WM8350_RTC_MTH_MASK                     0x1F00
#define WM8350_RTC_MTH_SHIFT                         8
#define WM8350_RTC_DATE_MASK                    0x003F
#define WM8350_RTC_DATE_SHIFT                        0

/* Bit values for R22 (0x16) */
#define WM8350_RTC_MTH_JAN                           1
#define WM8350_RTC_MTH_FEB                           2
#define WM8350_RTC_MTH_MAR                           3
#define WM8350_RTC_MTH_APR                           4
#define WM8350_RTC_MTH_MAY                           5
#define WM8350_RTC_MTH_JUN                           6
#define WM8350_RTC_MTH_JUL                           7
#define WM8350_RTC_MTH_AUG                           8
#define WM8350_RTC_MTH_SEP                           9
#define WM8350_RTC_MTH_OCT                          10
#define WM8350_RTC_MTH_NOV                          11
#define WM8350_RTC_MTH_DEC                          12
#define WM8350_RTC_MTH_JAN_BCD                    0x01
#define WM8350_RTC_MTH_FEB_BCD                    0x02
#define WM8350_RTC_MTH_MAR_BCD                    0x03
#define WM8350_RTC_MTH_APR_BCD                    0x04
#define WM8350_RTC_MTH_MAY_BCD                    0x05
#define WM8350_RTC_MTH_JUN_BCD                    0x06
#define WM8350_RTC_MTH_JUL_BCD                    0x07
#define WM8350_RTC_MTH_AUG_BCD                    0x08
#define WM8350_RTC_MTH_SEP_BCD                    0x09
#define WM8350_RTC_MTH_OCT_BCD                    0x10
#define WM8350_RTC_MTH_NOV_BCD                    0x11
#define WM8350_RTC_MTH_DEC_BCD                    0x12

/*
 * R19 (0x13) - RTC Year
 */
#define WM8350_RTC_YHUNDREDS_MASK               0x3F00
#define WM8350_RTC_YHUNDREDS_SHIFT                   8
#define WM8350_RTC_YUNITS_MASK                  0x00FF
#define WM8350_RTC_YUNITS_SHIFT                      0

/*
 * R20 (0x14) - Alarm Seconds/Minutes
 */
#define WM8350_RTC_ALMMINS_MASK                 0x7F00
#define WM8350_RTC_ALMMINS_SHIFT                     8
#define WM8350_RTC_ALMSECS_MASK                 0x007F
#define WM8350_RTC_ALMSECS_SHIFT                     0

/* Bit values for R20 (0x14) */
#define WM8350_RTC_ALMMINS_DONT_CARE                -1
#define WM8350_RTC_ALMSECS_DONT_CARE                -1

/*
 * R21 (0x15) - Alarm Hours/Day
 */
#define WM8350_RTC_ALMDAY_MASK                  0x0F00
#define WM8350_RTC_ALMDAY_SHIFT                      8
#define WM8350_RTC_ALMHPM_MASK                  0x0020
#define WM8350_RTC_ALMHPM_SHIFT                      5
#define WM8350_RTC_ALMHRS_MASK                  0x001F
#define WM8350_RTC_ALMHRS_SHIFT                      0

/* Bit values for R21 (0x15) */
#define WM8350_RTC_ALMDAY_DONT_CARE                 -1
#define WM8350_RTC_ALMDAY_SUN                        1
#define WM8350_RTC_ALMDAY_MON                        2
#define WM8350_RTC_ALMDAY_TUE                        3
#define WM8350_RTC_ALMDAY_WED                        4
#define WM8350_RTC_ALMDAY_THU                        5
#define WM8350_RTC_ALMDAY_FRI                        6
#define WM8350_RTC_ALMDAY_SAT                        7

#define WM8350_RTC_ALMHPM_AM                         0
#define WM8350_RTC_ALMHPM_PM                         1

#define WM8350_RTC_ALMHRS_DONT_CARE                 -1

/*
 * R22 (0x16) - Alarm Date/Month
 */
#define WM8350_RTC_ALMMTH_MASK                  0x1F00
#define WM8350_RTC_ALMMTH_SHIFT                      8
#define WM8350_RTC_ALMDATE_MASK                 0x003F
#define WM8350_RTC_ALMDATE_SHIFT                     0

/* Bit values for R22 (0x16) */
#define WM8350_RTC_ALMDATE_DONT_CARE                -1

#define WM8350_RTC_ALMMTH_DONT_CARE                 -1
#define WM8350_RTC_ALMMTH_JAN                        1
#define WM8350_RTC_ALMMTH_FEB                        2
#define WM8350_RTC_ALMMTH_MAR                        3
#define WM8350_RTC_ALMMTH_APR                        4
#define WM8350_RTC_ALMMTH_MAY                        5
#define WM8350_RTC_ALMMTH_JUN                        6
#define WM8350_RTC_ALMMTH_JUL                        7
#define WM8350_RTC_ALMMTH_AUG                        8
#define WM8350_RTC_ALMMTH_SEP                        9
#define WM8350_RTC_ALMMTH_OCT                       10
#define WM8350_RTC_ALMMTH_NOV                       11
#define WM8350_RTC_ALMMTH_DEC                       12
#define WM8350_RTC_ALMMTH_JAN_BCD                 0x01
#define WM8350_RTC_ALMMTH_FEB_BCD                 0x02
#define WM8350_RTC_ALMMTH_MAR_BCD                 0x03
#define WM8350_RTC_ALMMTH_APR_BCD                 0x04
#define WM8350_RTC_ALMMTH_MAY_BCD                 0x05
#define WM8350_RTC_ALMMTH_JUN_BCD                 0x06
#define WM8350_RTC_ALMMTH_JUL_BCD                 0x07
#define WM8350_RTC_ALMMTH_AUG_BCD                 0x08
#define WM8350_RTC_ALMMTH_SEP_BCD                 0x09
#define WM8350_RTC_ALMMTH_OCT_BCD                 0x10
#define WM8350_RTC_ALMMTH_NOV_BCD                 0x11
#define WM8350_RTC_ALMMTH_DEC_BCD                 0x12

/*
 * R23 (0x17) - RTC Time Control
 */
#define WM8350_RTC_BCD                          0x8000
#define WM8350_RTC_BCD_MASK                     0x8000
#define WM8350_RTC_BCD_SHIFT                        15
#define WM8350_RTC_12HR                         0x4000
#define WM8350_RTC_12HR_MASK                    0x4000
#define WM8350_RTC_12HR_SHIFT                       14
#define WM8350_RTC_DST                          0x2000
#define WM8350_RTC_DST_MASK                     0x2000
#define WM8350_RTC_DST_SHIFT                        13
#define WM8350_RTC_SET                          0x0800
#define WM8350_RTC_SET_MASK                     0x0800
#define WM8350_RTC_SET_SHIFT                        11
#define WM8350_RTC_STS                          0x0400
#define WM8350_RTC_STS_MASK                     0x0400
#define WM8350_RTC_STS_SHIFT                        10
#define WM8350_RTC_ALMSET                       0x0200
#define WM8350_RTC_ALMSET_MASK                  0x0200
#define WM8350_RTC_ALMSET_SHIFT                      9
#define WM8350_RTC_ALMSTS                       0x0100
#define WM8350_RTC_ALMSTS_MASK                  0x0100
#define WM8350_RTC_ALMSTS_SHIFT                      8
#define WM8350_RTC_PINT                         0x0070
#define WM8350_RTC_PINT_MASK                    0x0070
#define WM8350_RTC_PINT_SHIFT                        4
#define WM8350_RTC_DSW                          0x000F
#define WM8350_RTC_DSW_MASK                     0x000F
#define WM8350_RTC_DSW_SHIFT                         0

/* Bit values for R23 (0x17) */
#define WM8350_RTC_BCD_BINARY                        0
#define WM8350_RTC_BCD_BCD                           1

#define WM8350_RTC_12HR_24HR                         0
#define WM8350_RTC_12HR_12HR                         1

#define WM8350_RTC_DST_DISABLED                      0
#define WM8350_RTC_DST_ENABLED                       1

#define WM8350_RTC_SET_RUN                           0
#define WM8350_RTC_SET_SET                           1

#define WM8350_RTC_STS_RUNNING                       0
#define WM8350_RTC_STS_STOPPED                       1

#define WM8350_RTC_ALMSET_RUN                        0
#define WM8350_RTC_ALMSET_SET                        1

#define WM8350_RTC_ALMSTS_RUNNING                    0
#define WM8350_RTC_ALMSTS_STOPPED                    1

#define WM8350_RTC_PINT_DISABLED                     0
#define WM8350_RTC_PINT_SECS                         1
#define WM8350_RTC_PINT_MINS                         2
#define WM8350_RTC_PINT_HRS                          3
#define WM8350_RTC_PINT_DAYS                         4
#define WM8350_RTC_PINT_MTHS                         5

#define WM8350_RTC_DSW_DISABLED                      0
#define WM8350_RTC_DSW_1HZ                           1
#define WM8350_RTC_DSW_2HZ                           2
#define WM8350_RTC_DSW_4HZ                           3
#define WM8350_RTC_DSW_8HZ                           4
#define WM8350_RTC_DSW_16HZ                          5
#define WM8350_RTC_DSW_32HZ                          6
#define WM8350_RTC_DSW_64HZ                          7
#define WM8350_RTC_DSW_128HZ                         8
#define WM8350_RTC_DSW_256HZ                         9
#define WM8350_RTC_DSW_512HZ                        10
#define WM8350_RTC_DSW_1024HZ                       11

/*
 * R218 (0xDA) - RTC Tick Control
 */
#define WM8350_RTC_TICKSTS                      0x4000
#define WM8350_RTC_CLKSRC                       0x2000
#define WM8350_RTC_TRIM_MASK                    0x03FF

/*
 * RTC Interrupts.
 */
#define WM8350_IRQ_RTC_PER			7
#define WM8350_IRQ_RTC_SEC			8
#define WM8350_IRQ_RTC_ALM			9

struct wm8350_rtc {
	struct platform_device *pdev;
	struct rtc_device *rtc;
	int alarm_enabled;      /* used over suspend/resume */
	int update_enabled;
};

#endif
¿Qué es la limpieza dental de perros? - Clínica veterinaria


Es la eliminación del sarro y la placa adherida a la superficie de los dientes mediante un equipo de ultrasonidos que garantiza la integridad de las piezas dentales a la vez que elimina en profundidad cualquier resto de suciedad.

A continuación se procede al pulido de los dientes mediante una fresa especial que elimina la placa bacteriana y devuelve a los dientes el aspecto sano que deben tener.

Una vez terminado todo el proceso, se mantiene al perro en observación hasta que se despierta de la anestesia, bajo la atenta supervisión de un veterinario.

¿Cada cuánto tiempo tengo que hacerle una limpieza dental a mi perro?

A partir de cierta edad, los perros pueden necesitar una limpieza dental anual o bianual. Depende de cada caso. En líneas generales, puede decirse que los perros de razas pequeñas suelen acumular más sarro y suelen necesitar una atención mayor en cuanto a higiene dental.


Riesgos de una mala higiene


Los riesgos más evidentes de una mala higiene dental en los perros son los siguientes:

  • Cuando la acumulación de sarro no se trata, se puede producir una inflamación y retracción de las encías que puede descalzar el diente y provocar caídas.
  • Mal aliento (halitosis).
  • Sarro perros
  • Puede ir a más
  • Las bacterias de la placa pueden trasladarse a través del torrente circulatorio a órganos vitales como el corazón ocasionando problemas de endocarditis en las válvulas. Las bacterias pueden incluso acantonarse en huesos (La osteomielitis es la infección ósea, tanto cortical como medular) provocando mucho dolor y una artritis séptica).

¿Cómo se forma el sarro?

El sarro es la calcificación de la placa dental. Los restos de alimentos, junto con las bacterias presentes en la boca, van a formar la placa bacteriana o placa dental. Si la placa no se retira, al mezclarse con la saliva y los minerales presentes en ella, reaccionará formando una costra. La placa se calcifica y se forma el sarro.

El sarro, cuando se forma, es de color blanquecino pero a medida que pasa el tiempo se va poniendo amarillo y luego marrón.

Síntomas de una pobre higiene dental
La señal más obvia de una mala salud dental canina es el mal aliento.

Sin embargo, a veces no es tan fácil de detectar
Y hay perros que no se dejan abrir la boca por su dueño. Por ejemplo…

Recientemente nos trajeron a la clínica a un perro que parpadeaba de un ojo y decía su dueño que le picaba un lado de la cara. Tenía molestias y dificultad para comer, lo que había llevado a sus dueños a comprarle comida blanda (que suele ser un poco más cara y llevar más contenido en grasa) durante medio año. Después de una exploración oftalmológica, nos dimos cuenta de que el ojo tenía una úlcera en la córnea probablemente de rascarse . Además, el canto lateral del ojo estaba inflamado. Tenía lo que en humanos llamamos flemón pero como era un perro de pelo largo, no se le notaba a simple vista. Al abrirle la boca nos llamó la atención el ver una muela llena de sarro. Le realizamos una radiografía y encontramos una fístula que llegaba hasta la parte inferior del ojo.

Le tuvimos que extraer la muela. Tras esto, el ojo se curó completamente con unos colirios y una lentilla protectora de úlcera. Afortunadamente, la úlcera no profundizó y no perforó el ojo. Ahora el perro come perfectamente a pesar de haber perdido una muela.

¿Cómo mantener la higiene dental de tu perro?
Hay varias maneras de prevenir problemas derivados de la salud dental de tu perro.

Limpiezas de dientes en casa
Es recomendable limpiar los dientes de tu perro semanal o diariamente si se puede. Existe una gran variedad de productos que se pueden utilizar:

Pastas de dientes.
Cepillos de dientes o dedales para el dedo índice, que hacen más fácil la limpieza.
Colutorios para echar en agua de bebida o directamente sobre el diente en líquido o en spray.

En la Clínica Tus Veterinarios enseñamos a nuestros clientes a tomar el hábito de limpiar los dientes de sus perros desde que son cachorros. Esto responde a nuestro compromiso con la prevención de enfermedades caninas.

Hoy en día tenemos muchos clientes que limpian los dientes todos los días a su mascota, y como resultado, se ahorran el dinero de hacer limpiezas dentales profesionales y consiguen una mejor salud de su perro.


Limpiezas dentales profesionales de perros y gatos

Recomendamos hacer una limpieza dental especializada anualmente. La realizamos con un aparato de ultrasonidos que utiliza agua para quitar el sarro. Después, procedemos a pulir los dientes con un cepillo de alta velocidad y una pasta especial. Hacemos esto para proteger el esmalte.

La frecuencia de limpiezas dentales necesaria varía mucho entre razas. En general, las razas grandes tienen buena calidad de esmalte, por lo que no necesitan hacerlo tan a menudo e incluso pueden pasarse la vida sin requerir una limpieza. Sin embargo, razas pequeñas como el Yorkshire o el Maltés, deben hacérselas todos los años desde cachorros si se quiere conservar sus piezas dentales.

Otro factor fundamental es la calidad del pienso. Algunas marcas han diseñado croquetas que limpian la superficie del diente y de la muela al masticarse.

Ultrasonido para perros

¿Se necesita anestesia para las limpiezas dentales de perros y gatos?

La limpieza dental en perros no es una técnica que pueda practicarse sin anestesia general , aunque hay veces que los propietarios no quieren anestesiar y si tiene poco sarro y el perro es muy bueno se puede intentar…… , pero no se va a poder pulir ni acceder a todas la zona de la boca …. Además los limpiadores dentales van a irrigar agua y hay riesgo de aspiración a vías respiratorias si no se realiza una anestesia correcta con intubación traqueal . En resumen , sin anestesia no se va hacer una correcta limpieza dental.

Tampoco sirve la sedación ya que necesitamos que el animal esté totalmente quieto, y el veterinario tenga un acceso completo a todas sus piezas dentales y encías.

Alimentos para la limpieza dental

Hay que tener cierto cuidado a la hora de comprar determinados alimentos porque no todos son saludables. Algunos tienen demasiado contenido graso, que en exceso puede causar problemas cardiovasculares y obesidad.

Los mejores alimentos para los dientes son aquellos que están elaborados por empresas farmacéuticas y llevan componentes químicos con tratamientos específicos para el diente del perro. Esto implica no solo limpieza a través de la acción mecánica de morder sino también un tratamiento antibacteriano para prevenir el sarro.

Conclusión

Si eres como la mayoría de dueños, por falta de tiempo , es probable que no estés prestando la suficiente atención a la limpieza dental de tu perro. Por eso te animamos a que comiences a limpiar los dientes de tu perro y consideres atender a su higiene bucal con frecuencia.

Estas simples medidas pueden conllevar a que tu perro tenga una vida más larga y mucho más saludable.

Si te resulta imposible introducir un cepillo de dientes a tu perro en la boca, pásate con él por clínica Tus Veterinarios y te explicamos cómo hacerlo.

Necesitas hacer una limpieza dental profesional a tu mascota?
Llámanos al 622575274 o contacta con nosotros

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¡Hola!